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
- CodeGen.cs
- XmlAnyElementAttributes.cs
- AlphaSortedEnumConverter.cs
- FramingDecoders.cs
- CodeFieldReferenceExpression.cs
- RC2CryptoServiceProvider.cs
- columnmapfactory.cs
- ChangeInterceptorAttribute.cs
- DesignerRegion.cs
- ProxyWebPart.cs
- XmlWrappingWriter.cs
- InheritanceService.cs
- ObjectStateFormatter.cs
- WmpBitmapDecoder.cs
- VisualTreeUtils.cs
- ConnectionConsumerAttribute.cs
- Substitution.cs
- CalendarAutoFormatDialog.cs
- PermissionToken.cs
- SignedPkcs7.cs
- MetadataPropertyCollection.cs
- HttpCookiesSection.cs
- StringCollection.cs
- OracleString.cs
- ToolStripPanelRenderEventArgs.cs
- BeginEvent.cs
- ExtendedPropertyCollection.cs
- ClientWindowsAuthenticationMembershipProvider.cs
- PrintingPermissionAttribute.cs
- ReferenceEqualityComparer.cs
- CustomAttributeSerializer.cs
- ScrollProviderWrapper.cs
- SortFieldComparer.cs
- BrowserCapabilitiesCodeGenerator.cs
- PeekCompletedEventArgs.cs
- PropertyCollection.cs
- MimeWriter.cs
- FamilyCollection.cs
- PenThread.cs
- ApplicationInfo.cs
- ValidationPropertyAttribute.cs
- RSAOAEPKeyExchangeDeformatter.cs
- RenderingBiasValidation.cs
- TimeSpanConverter.cs
- InkCanvasFeedbackAdorner.cs
- TypeName.cs
- DataListItemCollection.cs
- Model3D.cs
- RotateTransform.cs
- TextSchema.cs
- Latin1Encoding.cs
- DateTimeOffsetConverter.cs
- TypedElement.cs
- TileModeValidation.cs
- MethodBuilderInstantiation.cs
- ThemeDictionaryExtension.cs
- SingleAnimationUsingKeyFrames.cs
- CFStream.cs
- ExpandableObjectConverter.cs
- WCFBuildProvider.cs
- BasicBrowserDialog.cs
- GridViewColumn.cs
- __Filters.cs
- PagedDataSource.cs
- SQLInt16Storage.cs
- DurableOperationContext.cs
- WeakReferenceList.cs
- PasswordValidationException.cs
- Canvas.cs
- HostProtectionPermission.cs
- Line.cs
- ConstraintManager.cs
- DecoderReplacementFallback.cs
- SetterBaseCollection.cs
- PrefixQName.cs
- _NetworkingPerfCounters.cs
- CodeSnippetTypeMember.cs
- PersonalizableTypeEntry.cs
- WhileDesigner.cs
- GridView.cs
- ISAPIApplicationHost.cs
- ExpressionBuilderCollection.cs
- BitmapEffectState.cs
- DataGridViewColumnCollection.cs
- ErrorView.xaml.cs
- EndpointIdentityConverter.cs
- CompilerParameters.cs
- LayoutSettings.cs
- HelpInfo.cs
- DebuggerAttributes.cs
- AttributeUsageAttribute.cs
- HtmlTableRow.cs
- CodeCompiler.cs
- DataColumn.cs
- Color.cs
- RightsManagementEncryptionTransform.cs
- FormViewDeleteEventArgs.cs
- ObjectDisposedException.cs
- CounterSampleCalculator.cs
- oledbconnectionstring.cs