Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WF / RunTime / Tracking / TrackingRecord.cs / 1305376 / TrackingRecord.cs
using System;
using System.Collections;
using System.Collections.Generic;
using System.Workflow.ComponentModel;
using System.Runtime.Serialization;
using System.Security.Permissions;
using System.Workflow.Runtime.Hosting;
namespace System.Workflow.Runtime.Tracking
{
public abstract class TrackingRecord
{
protected TrackingRecord()
{
}
public abstract DateTime EventDateTime
{
get;
set;
}
public abstract int EventOrder
{
get;
set;
}
public abstract EventArgs EventArgs
{
get;
set;
}
public abstract TrackingAnnotationCollection Annotations
{
get;
}
}
///
/// Contains data for a specific extraction point.
///
public class ActivityTrackingRecord : TrackingRecord
{
#region Data Members
private string _qualifiedID = null;
private Type _activityType = null;
private ActivityExecutionStatus _status;
private List _body = new List();
private Guid _contextGuid = Guid.Empty, _parentContextGuid = Guid.Empty;
private DateTime _eventDateTime = DateTime.MinValue;
private int _eventOrder = -1;
private EventArgs _args = null;
private TrackingAnnotationCollection _annotations = new TrackingAnnotationCollection();
#endregion
#region Constructors
public ActivityTrackingRecord()
{
}
public ActivityTrackingRecord(Type activityType, string qualifiedName, Guid contextGuid, Guid parentContextGuid, ActivityExecutionStatus executionStatus, DateTime eventDateTime, int eventOrder, EventArgs eventArgs)
{
_activityType = activityType;
_qualifiedID = qualifiedName;
_status = executionStatus;
_eventDateTime = eventDateTime;
_contextGuid = contextGuid;
_parentContextGuid = parentContextGuid;
_eventOrder = eventOrder;
_args = eventArgs;
}
#endregion
#region Public Properties
public string QualifiedName
{
get { return _qualifiedID; }
set { _qualifiedID = value; }
}
public Guid ContextGuid
{
get { return _contextGuid; }
set { _contextGuid = value; }
}
public Guid ParentContextGuid
{
get { return _parentContextGuid; }
set { _parentContextGuid = value; }
}
public Type ActivityType
{
get { return _activityType; }
set { _activityType = value; }
}
public ActivityExecutionStatus ExecutionStatus
{
get { return _status; }
set { _status = value; }
}
public IList Body
{
get { return _body; }
}
#endregion
#region TrackingRecord
public override DateTime EventDateTime
{
get { return _eventDateTime; }
set { _eventDateTime = value; }
}
///
/// Contains a value indicating the relative order of this event within the context of a workflow instance.
/// Value will be unique within a workflow instance but is not guaranteed to be sequential.
///
public override int EventOrder
{
get { return _eventOrder; }
set { _eventOrder = value; }
}
public override EventArgs EventArgs
{
get { return _args; }
set { _args = value; }
}
public override TrackingAnnotationCollection Annotations
{
get { return _annotations; }
}
#endregion
}
public class UserTrackingRecord : TrackingRecord
{
#region Data Members
private string _qualifiedID = null;
private Type _activityType = null;
private List _body = new List();
private Guid _contextGuid = Guid.Empty, _parentContextGuid = Guid.Empty;
private DateTime _eventDateTime = DateTime.MinValue;
private int _eventOrder = -1;
private object _userData = null;
private TrackingAnnotationCollection _annotations = new TrackingAnnotationCollection();
private EventArgs _args = null;
private string _key = null;
#endregion
#region Constructors
public UserTrackingRecord()
{
}
public UserTrackingRecord(Type activityType, string qualifiedName, Guid contextGuid, Guid parentContextGuid, DateTime eventDateTime, int eventOrder, string userDataKey, object userData)
{
_activityType = activityType;
_qualifiedID = qualifiedName;
_eventDateTime = eventDateTime;
_contextGuid = contextGuid;
_parentContextGuid = parentContextGuid;
_eventOrder = eventOrder;
_userData = userData;
_key = userDataKey;
}
#endregion
#region Public Properties
public string QualifiedName
{
get { return _qualifiedID; }
set { _qualifiedID = value; }
}
public Guid ContextGuid
{
get { return _contextGuid; }
set { _contextGuid = value; }
}
public Guid ParentContextGuid
{
get { return _parentContextGuid; }
set { _parentContextGuid = value; }
}
public Type ActivityType
{
get { return _activityType; }
set { _activityType = value; }
}
public IList Body
{
get { return _body; }
}
public string UserDataKey
{
get { return _key; }
set { _key = value; }
}
public object UserData
{
get { return _userData; }
set { _userData = value; }
}
#endregion
#region TrackingRecord
public override DateTime EventDateTime
{
get { return _eventDateTime; }
set { _eventDateTime = value; }
}
///
/// Contains a value indicating the relative order of this event within the context of a workflow instance.
/// Value will be unique within a workflow instance but is not guaranteed to be sequential.
///
public override int EventOrder
{
get { return _eventOrder; }
set { _eventOrder = value; }
}
public override TrackingAnnotationCollection Annotations
{
get { return _annotations; }
}
public override EventArgs EventArgs
{
get { return _args; }
set { _args = value; }
}
#endregion
}
public class WorkflowTrackingRecord : TrackingRecord
{
#region Private Data Members
private TrackingWorkflowEvent _event;
private DateTime _eventDateTime = DateTime.MinValue;
private int _eventOrder = -1;
private EventArgs _args = null;
private TrackingAnnotationCollection _annotations = new TrackingAnnotationCollection();
#endregion
#region Constructors
public WorkflowTrackingRecord()
{
}
public WorkflowTrackingRecord(TrackingWorkflowEvent trackingWorkflowEvent, DateTime eventDateTime, int eventOrder, EventArgs eventArgs)
{
_event = trackingWorkflowEvent;
_eventDateTime = eventDateTime;
_eventOrder = eventOrder;
_args = eventArgs;
}
#endregion
#region TrackingRecord
public TrackingWorkflowEvent TrackingWorkflowEvent
{
get { return _event; }
set { _event = value; }
}
public override DateTime EventDateTime
{
get { return _eventDateTime; }
set { _eventDateTime = value; }
}
///
/// Contains a value indicating the relative order of this event within the context of a workflow instance.
/// Value will be unique within a workflow instance but is not guaranteed to be sequential.
///
public override int EventOrder
{
get { return _eventOrder; }
set { _eventOrder = value; }
}
public override EventArgs EventArgs
{
get { return _args; }
set { _args = value; }
}
public override TrackingAnnotationCollection Annotations
{
get { return _annotations; }
}
#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
- CodeDirectiveCollection.cs
- AuthenticationManager.cs
- TextSelection.cs
- KnownBoxes.cs
- CheckedPointers.cs
- ParameterBuilder.cs
- Quack.cs
- InputMethod.cs
- Enlistment.cs
- ServicePointManager.cs
- SignatureToken.cs
- SmiXetterAccessMap.cs
- RecognizedWordUnit.cs
- ParagraphVisual.cs
- BuildResultCache.cs
- PeerValidationBehavior.cs
- InstalledVoice.cs
- WindowsGraphics2.cs
- AsyncSerializedWorker.cs
- ListViewItemEventArgs.cs
- HtmlElementErrorEventArgs.cs
- OnOperation.cs
- SerializableAttribute.cs
- NumericExpr.cs
- XamlToRtfParser.cs
- TypeListConverter.cs
- RSAPKCS1KeyExchangeDeformatter.cs
- DbConnectionPoolGroup.cs
- X509RawDataKeyIdentifierClause.cs
- ProxyElement.cs
- Grant.cs
- XmlLanguage.cs
- EntityContainer.cs
- NamedPipeConnectionPoolSettings.cs
- FindCriteria.cs
- RadialGradientBrush.cs
- UInt64Converter.cs
- NativeMethods.cs
- ReaderWriterLock.cs
- HwndHost.cs
- TextDecoration.cs
- TextServicesPropertyRanges.cs
- CounterSample.cs
- WindowsToolbar.cs
- XsltLoader.cs
- ObjectContextServiceProvider.cs
- WindowsListBox.cs
- EncryptedData.cs
- DbgCompiler.cs
- XamlDesignerSerializationManager.cs
- OdbcCommand.cs
- BooleanAnimationUsingKeyFrames.cs
- WindowInteractionStateTracker.cs
- NavigationFailedEventArgs.cs
- KeyboardNavigation.cs
- PageSettings.cs
- CompoundFileStorageReference.cs
- QilBinary.cs
- XmlAttributeAttribute.cs
- Crc32.cs
- RectangleHotSpot.cs
- SizeFConverter.cs
- TextRangeProviderWrapper.cs
- HttpCookiesSection.cs
- ElementProxy.cs
- ExceptionTrace.cs
- HandlerWithFactory.cs
- Image.cs
- ImageIndexConverter.cs
- WindowHideOrCloseTracker.cs
- DataObjectFieldAttribute.cs
- CollectionViewGroupInternal.cs
- NamespaceMapping.cs
- DataGridViewButtonColumn.cs
- HyperlinkAutomationPeer.cs
- Point3DCollection.cs
- ListSourceHelper.cs
- QilLiteral.cs
- WmlLabelAdapter.cs
- FunctionMappingTranslator.cs
- HostProtectionPermission.cs
- Variant.cs
- SamlAuthorizationDecisionClaimResource.cs
- Util.cs
- DataRow.cs
- Preprocessor.cs
- WebContext.cs
- AssemblyFilter.cs
- ZipIOExtraFieldElement.cs
- CachedPathData.cs
- ResourceCategoryAttribute.cs
- EdmMember.cs
- ArrayEditor.cs
- MemberAccessException.cs
- PackagingUtilities.cs
- ScrollItemProviderWrapper.cs
- CustomWebEventKey.cs
- ThreadStaticAttribute.cs
- PathStreamGeometryContext.cs
- EntityTypeEmitter.cs