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
- ResourceManager.cs
- RealProxy.cs
- PolyLineSegment.cs
- CodeNamespaceCollection.cs
- SafeMemoryMappedFileHandle.cs
- Transform.cs
- SqlError.cs
- WindowExtensionMethods.cs
- AQNBuilder.cs
- ClientConfigurationHost.cs
- Evaluator.cs
- DrawListViewItemEventArgs.cs
- DecoratedNameAttribute.cs
- ConnectionInterfaceCollection.cs
- HttpSysSettings.cs
- BuildProviderCollection.cs
- CommonGetThemePartSize.cs
- WebBrowserContainer.cs
- PrintDialogException.cs
- CustomTypeDescriptor.cs
- X509Certificate2Collection.cs
- SharedStream.cs
- X509SecurityTokenProvider.cs
- CodeBlockBuilder.cs
- VariantWrapper.cs
- PictureBox.cs
- LocalBuilder.cs
- DbTransaction.cs
- PassportAuthenticationModule.cs
- ServiceX509SecurityTokenProvider.cs
- MaskInputRejectedEventArgs.cs
- ConvertEvent.cs
- filewebrequest.cs
- XmlSerializerOperationFormatter.cs
- DataGridViewAdvancedBorderStyle.cs
- GB18030Encoding.cs
- BeginEvent.cs
- ToolboxCategory.cs
- ConfigurationValues.cs
- SplayTreeNode.cs
- NamespaceCollection.cs
- BindingSource.cs
- EventMetadata.cs
- PermissionToken.cs
- SettingsBase.cs
- SqlCommand.cs
- AsymmetricAlgorithm.cs
- CodeArrayCreateExpression.cs
- FlowNode.cs
- EntityProviderFactory.cs
- Properties.cs
- SafeCryptoHandles.cs
- TemplatePartAttribute.cs
- RecoverInstanceLocksCommand.cs
- WindowsFormsDesignerOptionService.cs
- CalendarModeChangedEventArgs.cs
- __Error.cs
- BufferBuilder.cs
- PictureBox.cs
- UpWmlPageAdapter.cs
- OdbcErrorCollection.cs
- ReadingWritingEntityEventArgs.cs
- Vector3DAnimation.cs
- basevalidator.cs
- XmlRootAttribute.cs
- Win32PrintDialog.cs
- ParameterElement.cs
- TextViewSelectionProcessor.cs
- CustomGrammar.cs
- AdRotatorDesigner.cs
- PrivateFontCollection.cs
- InputScope.cs
- XmlAttributes.cs
- ErrorWrapper.cs
- TreeBuilderBamlTranslator.cs
- CommandBindingCollection.cs
- MessageQueueCriteria.cs
- HMACSHA512.cs
- XmlArrayAttribute.cs
- Compiler.cs
- MetadataItemCollectionFactory.cs
- __Error.cs
- MemoryStream.cs
- RegexMatch.cs
- TcpTransportSecurityElement.cs
- GridViewDesigner.cs
- brushes.cs
- ValidatorUtils.cs
- activationcontext.cs
- IsolatedStorage.cs
- FileDialog.cs
- Reference.cs
- RenderingEventArgs.cs
- HttpCachePolicyElement.cs
- SQLInt32Storage.cs
- FunctionParameter.cs
- SourceFileBuildProvider.cs
- KeyBinding.cs
- datacache.cs
- PropertyToken.cs