Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WF / RunTime / Tracking / TrackingExtract.cs / 1305376 / TrackingExtract.cs
using System; using System.Collections; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Text; using System.Xml; using System.Xml.Schema; using System.IO; using System.Reflection; using System.Diagnostics; using System.Runtime.Serialization; using System.Security.Permissions; using System.Globalization; //using System.Workflow.Activities; using System.Workflow.ComponentModel; using System.Workflow.Runtime; using System.Workflow.Runtime.Hosting; using Hosting = System.Workflow.Runtime.Hosting; namespace System.Workflow.Runtime.Tracking { ////// Abstract base for classes that extract data /// [Serializable] public abstract class TrackingExtract { public abstract TrackingAnnotationCollection Annotations { get; } public abstract string Member { get; set; } internal abstract void GetData(Activity activity, IServiceProvider provider, IListitems); } /// /// Used to extract data members from a workflow's code separation partial class. /// [Serializable] public class WorkflowDataTrackingExtract : TrackingExtract { #region Private DataMembers private string _name = null; private TrackingAnnotationCollection _annotations = new TrackingAnnotationCollection(); #endregion #region Constructors ////// Default constructor. /// public WorkflowDataTrackingExtract() { } ////// Construct with a Member list. /// /// List of "." delineated property names public WorkflowDataTrackingExtract(string member) { _name = member; } #endregion #region TrackingExtract public override string Member { get { return _name; } set { _name = value; } } public override TrackingAnnotationCollection Annotations { get { return _annotations; } } internal override void GetData(Activity activity, IServiceProvider provider, IListitems) { Activity root = ContextActivityUtils.RootContextActivity(activity); if ((null == _name) || (0 == _name.Trim().Length)) { // // If we don't have a name we get everything PropertyHelper.GetAllMembers(root, items, _annotations); } else { TrackingDataItem item = null; PropertyHelper.GetProperty(_name, root, _annotations, out item); if (null != item) items.Add(item); } } #endregion } /// /// Used to extract data members from an activity in a workflow instance. /// [Serializable] public class ActivityDataTrackingExtract : TrackingExtract { #region Private DataMembers private string _name = null; private TrackingAnnotationCollection _annotations = new TrackingAnnotationCollection(); #endregion #region Constructors ////// Default constructor. /// public ActivityDataTrackingExtract() { } ////// Construct with a Member list. /// /// List of "." delineated property names public ActivityDataTrackingExtract(string member) { _name = member; } #endregion #region TrackingExtract public override string Member { get { return _name; } set { _name = value; } } public override TrackingAnnotationCollection Annotations { get { return _annotations; } } internal override void GetData(Activity activity, IServiceProvider provider, IListitems) { if ((null == _name) || (0 == _name.Trim().Length)) { // // If we don't have a name we get everything PropertyHelper.GetAllMembers(activity, items, _annotations); } else { TrackingDataItem item = null; PropertyHelper.GetProperty(_name, activity, _annotations, out item); if (null != item) items.Add(item); } } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. using System; using System.Collections; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Text; using System.Xml; using System.Xml.Schema; using System.IO; using System.Reflection; using System.Diagnostics; using System.Runtime.Serialization; using System.Security.Permissions; using System.Globalization; //using System.Workflow.Activities; using System.Workflow.ComponentModel; using System.Workflow.Runtime; using System.Workflow.Runtime.Hosting; using Hosting = System.Workflow.Runtime.Hosting; namespace System.Workflow.Runtime.Tracking { /// /// Abstract base for classes that extract data /// [Serializable] public abstract class TrackingExtract { public abstract TrackingAnnotationCollection Annotations { get; } public abstract string Member { get; set; } internal abstract void GetData(Activity activity, IServiceProvider provider, IListitems); } /// /// Used to extract data members from a workflow's code separation partial class. /// [Serializable] public class WorkflowDataTrackingExtract : TrackingExtract { #region Private DataMembers private string _name = null; private TrackingAnnotationCollection _annotations = new TrackingAnnotationCollection(); #endregion #region Constructors ////// Default constructor. /// public WorkflowDataTrackingExtract() { } ////// Construct with a Member list. /// /// List of "." delineated property names public WorkflowDataTrackingExtract(string member) { _name = member; } #endregion #region TrackingExtract public override string Member { get { return _name; } set { _name = value; } } public override TrackingAnnotationCollection Annotations { get { return _annotations; } } internal override void GetData(Activity activity, IServiceProvider provider, IListitems) { Activity root = ContextActivityUtils.RootContextActivity(activity); if ((null == _name) || (0 == _name.Trim().Length)) { // // If we don't have a name we get everything PropertyHelper.GetAllMembers(root, items, _annotations); } else { TrackingDataItem item = null; PropertyHelper.GetProperty(_name, root, _annotations, out item); if (null != item) items.Add(item); } } #endregion } /// /// Used to extract data members from an activity in a workflow instance. /// [Serializable] public class ActivityDataTrackingExtract : TrackingExtract { #region Private DataMembers private string _name = null; private TrackingAnnotationCollection _annotations = new TrackingAnnotationCollection(); #endregion #region Constructors ////// Default constructor. /// public ActivityDataTrackingExtract() { } ////// Construct with a Member list. /// /// List of "." delineated property names public ActivityDataTrackingExtract(string member) { _name = member; } #endregion #region TrackingExtract public override string Member { get { return _name; } set { _name = value; } } public override TrackingAnnotationCollection Annotations { get { return _annotations; } } internal override void GetData(Activity activity, IServiceProvider provider, IListitems) { if ((null == _name) || (0 == _name.Trim().Length)) { // // If we don't have a name we get everything PropertyHelper.GetAllMembers(activity, items, _annotations); } else { TrackingDataItem item = null; PropertyHelper.GetProperty(_name, activity, _annotations, out item); if (null != item) items.Add(item); } } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ConnectionConsumerAttribute.cs
- QilLoop.cs
- EpmSyndicationContentSerializer.cs
- DetailsViewRowCollection.cs
- FileLogRecordEnumerator.cs
- PasswordBox.cs
- RequestQueue.cs
- ConfigurationStrings.cs
- BevelBitmapEffect.cs
- EventListener.cs
- CachedBitmap.cs
- MetaForeignKeyColumn.cs
- DataGridViewTopLeftHeaderCell.cs
- KeyProperty.cs
- DecimalAnimation.cs
- BrowserDefinition.cs
- ADMembershipProvider.cs
- _Rfc2616CacheValidators.cs
- LinkedList.cs
- RoutedEventHandlerInfo.cs
- VisualBasicSettings.cs
- DataMemberConverter.cs
- Point.cs
- RequiredFieldValidator.cs
- BamlTreeNode.cs
- categoryentry.cs
- UserControl.cs
- VisualTreeUtils.cs
- InheritanceContextHelper.cs
- DependentTransaction.cs
- Method.cs
- SqlConnectionStringBuilder.cs
- ConnectionPoolManager.cs
- CultureSpecificCharacterBufferRange.cs
- KnownIds.cs
- DataGridColumn.cs
- CoreSwitches.cs
- CodeExporter.cs
- RuleInfoComparer.cs
- SpellerHighlightLayer.cs
- Pair.cs
- FocusManager.cs
- DirectoryInfo.cs
- RouteData.cs
- CompilerCollection.cs
- DataGridViewCell.cs
- ListBindableAttribute.cs
- MessageQueueConverter.cs
- SessionStateContainer.cs
- ConfigurationValidatorAttribute.cs
- ClientScriptItem.cs
- MgmtConfigurationRecord.cs
- ExpressionEditor.cs
- DeferredReference.cs
- WebServiceParameterData.cs
- FlowchartDesigner.xaml.cs
- Range.cs
- TypeSystem.cs
- Condition.cs
- DataTemplateSelector.cs
- BitmapCacheBrush.cs
- basenumberconverter.cs
- FormsAuthentication.cs
- Matrix3DConverter.cs
- NamespaceCollection.cs
- DispatchChannelSink.cs
- Parsers.cs
- RoutingEndpointTrait.cs
- Utilities.cs
- ListItem.cs
- RenderContext.cs
- WorkflowServiceBehavior.cs
- MethodBuilder.cs
- ObjectIDGenerator.cs
- IERequestCache.cs
- TextElement.cs
- RetrieveVirtualItemEventArgs.cs
- ManifestResourceInfo.cs
- ListItemParagraph.cs
- HyperLink.cs
- EntitySqlException.cs
- ApplicationSettingsBase.cs
- TemplateControlParser.cs
- Parser.cs
- Wizard.cs
- XmlReflectionMember.cs
- XmlNodeReader.cs
- DataGridViewCell.cs
- ServiceElement.cs
- BypassElement.cs
- ZipIOZip64EndOfCentralDirectoryBlock.cs
- Clause.cs
- TypeConverterAttribute.cs
- Accessors.cs
- StringConcat.cs
- TableHeaderCell.cs
- ResourceReferenceExpressionConverter.cs
- ScriptServiceAttribute.cs
- ContainerParaClient.cs
- CalendarTable.cs