Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WF / RunTime / WorkflowEventArgs.cs / 1305376 / WorkflowEventArgs.cs
// **************************************************************************** // Copyright (C) Microsoft Corporation. All rights reserved. // using System; using System.IO; using System.Threading; using System.Diagnostics; using System.Globalization; using System.Collections; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Workflow.Runtime; using System.Workflow.ComponentModel; using System.Workflow.Runtime.Hosting; namespace System.Workflow.Runtime { public class WorkflowEventArgs : EventArgs { private WorkflowInstance _instance; internal WorkflowEventArgs(WorkflowInstance instance) { _instance = instance; } public WorkflowInstance WorkflowInstance { get { return _instance; } } } public class WorkflowCompletedEventArgs : WorkflowEventArgs { private Dictionary_outputParameters; private Activity _originalWorkflowDefinition; private Activity _workflowDefinition; internal WorkflowCompletedEventArgs(WorkflowInstance instance, Activity workflowDefinition) : base(instance) { this._outputParameters = new Dictionary (); this._originalWorkflowDefinition = workflowDefinition; this._workflowDefinition = null; } public Dictionary OutputParameters { get { return this._outputParameters; } } public Activity WorkflowDefinition { get { if (this._workflowDefinition == null) { using (new WorkflowDefinitionLock(this._originalWorkflowDefinition)) { if (this._workflowDefinition == null) { // Clone the original definition after locking the // definition's [....] object which was passed in // the constructor. This is so that the host cannot // corrupt the shared definition Activity tempDefinition = this._originalWorkflowDefinition.Clone(); Thread.MemoryBarrier(); this._workflowDefinition = tempDefinition; } } } return this._workflowDefinition; } } } public class WorkflowSuspendedEventArgs : WorkflowEventArgs { private String _error; internal WorkflowSuspendedEventArgs(WorkflowInstance instance, String error) : base(instance) { this._error = error; } public String Error { get { return this._error; } } } public class WorkflowTerminatedEventArgs : WorkflowEventArgs { private Exception exception; internal WorkflowTerminatedEventArgs(WorkflowInstance instance, String error) : base(instance) { this.exception = new WorkflowTerminatedException(error); } internal WorkflowTerminatedEventArgs(WorkflowInstance instance, Exception e) : base(instance) { this.exception = e; } public Exception Exception { get { return this.exception; } } } internal sealed class WorkflowDefinitionEventArgs : EventArgs { private Type _workflowType; private byte[] _xomlHashCode; internal WorkflowDefinitionEventArgs(Type scheduleType) { _workflowType = scheduleType; } internal WorkflowDefinitionEventArgs(byte[] scheduleDefHash) { _xomlHashCode = scheduleDefHash; } public Type WorkflowType { get { return _workflowType; } } public byte[] WorkflowDefinitionHashCode { get { return _xomlHashCode; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. // **************************************************************************** // Copyright (C) Microsoft Corporation. All rights reserved. // using System; using System.IO; using System.Threading; using System.Diagnostics; using System.Globalization; using System.Collections; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Workflow.Runtime; using System.Workflow.ComponentModel; using System.Workflow.Runtime.Hosting; namespace System.Workflow.Runtime { public class WorkflowEventArgs : EventArgs { private WorkflowInstance _instance; internal WorkflowEventArgs(WorkflowInstance instance) { _instance = instance; } public WorkflowInstance WorkflowInstance { get { return _instance; } } } public class WorkflowCompletedEventArgs : WorkflowEventArgs { private Dictionary _outputParameters; private Activity _originalWorkflowDefinition; private Activity _workflowDefinition; internal WorkflowCompletedEventArgs(WorkflowInstance instance, Activity workflowDefinition) : base(instance) { this._outputParameters = new Dictionary (); this._originalWorkflowDefinition = workflowDefinition; this._workflowDefinition = null; } public Dictionary OutputParameters { get { return this._outputParameters; } } public Activity WorkflowDefinition { get { if (this._workflowDefinition == null) { using (new WorkflowDefinitionLock(this._originalWorkflowDefinition)) { if (this._workflowDefinition == null) { // Clone the original definition after locking the // definition's [....] object which was passed in // the constructor. This is so that the host cannot // corrupt the shared definition Activity tempDefinition = this._originalWorkflowDefinition.Clone(); Thread.MemoryBarrier(); this._workflowDefinition = tempDefinition; } } } return this._workflowDefinition; } } } public class WorkflowSuspendedEventArgs : WorkflowEventArgs { private String _error; internal WorkflowSuspendedEventArgs(WorkflowInstance instance, String error) : base(instance) { this._error = error; } public String Error { get { return this._error; } } } public class WorkflowTerminatedEventArgs : WorkflowEventArgs { private Exception exception; internal WorkflowTerminatedEventArgs(WorkflowInstance instance, String error) : base(instance) { this.exception = new WorkflowTerminatedException(error); } internal WorkflowTerminatedEventArgs(WorkflowInstance instance, Exception e) : base(instance) { this.exception = e; } public Exception Exception { get { return this.exception; } } } internal sealed class WorkflowDefinitionEventArgs : EventArgs { private Type _workflowType; private byte[] _xomlHashCode; internal WorkflowDefinitionEventArgs(Type scheduleType) { _workflowType = scheduleType; } internal WorkflowDefinitionEventArgs(byte[] scheduleDefHash) { _xomlHashCode = scheduleDefHash; } public Type WorkflowType { get { return _workflowType; } } public byte[] WorkflowDefinitionHashCode { get { return _xomlHashCode; } } } } // 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
- Vector3DAnimationBase.cs
- DataGridViewRowHeightInfoPushedEventArgs.cs
- StringCollectionEditor.cs
- ContentPlaceHolder.cs
- AtomParser.cs
- XmlSchemaException.cs
- SqlCacheDependency.cs
- XmlSchemaInclude.cs
- AnnotationResource.cs
- InfoCardRSAPKCS1SignatureFormatter.cs
- DataGridTable.cs
- XamlRtfConverter.cs
- WithStatement.cs
- ActivityTrace.cs
- DataGridBoundColumn.cs
- SQLGuidStorage.cs
- WebPartAddingEventArgs.cs
- ListControl.cs
- ButtonStandardAdapter.cs
- SchemaTypeEmitter.cs
- SqlReferenceCollection.cs
- StatusBarItemAutomationPeer.cs
- ContextMenuAutomationPeer.cs
- Repeater.cs
- CuspData.cs
- DataSysAttribute.cs
- _SpnDictionary.cs
- ImageListImage.cs
- DtcInterfaces.cs
- DictionaryGlobals.cs
- GlyphCache.cs
- CookieParameter.cs
- _Events.cs
- CallContext.cs
- FontInfo.cs
- DataGridViewTopLeftHeaderCell.cs
- ParameterCollection.cs
- DefaultEventAttribute.cs
- IIS7ConfigurationLoader.cs
- DataQuery.cs
- TranslateTransform.cs
- CombinedGeometry.cs
- DotExpr.cs
- DecoderFallback.cs
- StaticExtensionConverter.cs
- TableCell.cs
- ObjectParameterCollection.cs
- CommandTreeTypeHelper.cs
- AnnotationAuthorChangedEventArgs.cs
- HttpCacheVaryByContentEncodings.cs
- TypefaceCollection.cs
- Activity.cs
- SHA512Managed.cs
- TextTreePropertyUndoUnit.cs
- Attribute.cs
- DesignerSerializerAttribute.cs
- Assert.cs
- SocketPermission.cs
- NamedObject.cs
- SharedHttpTransportManager.cs
- BufferAllocator.cs
- WsrmTraceRecord.cs
- CacheOutputQuery.cs
- FilterFactory.cs
- SoapElementAttribute.cs
- MetadataItem_Static.cs
- FrameDimension.cs
- PointConverter.cs
- _NetworkingPerfCounters.cs
- ExtensibleClassFactory.cs
- EmbeddedMailObject.cs
- XmlCharType.cs
- BinaryCommonClasses.cs
- ListControlStringCollectionEditor.cs
- HtmlInputImage.cs
- SymDocumentType.cs
- JsonObjectDataContract.cs
- ContextMenu.cs
- DigitalSignature.cs
- EdmProviderManifest.cs
- WebConfigurationManager.cs
- PageThemeBuildProvider.cs
- X509Certificate.cs
- CollectionContainer.cs
- PropertyItemInternal.cs
- ItemMap.cs
- ReferentialConstraint.cs
- WebFormsRootDesigner.cs
- PrintDialog.cs
- ListItemParagraph.cs
- SchemaImporter.cs
- AnnotationStore.cs
- FontCollection.cs
- CommunicationObjectAbortedException.cs
- XmlSerializationWriter.cs
- PopOutPanel.cs
- ImageSourceTypeConverter.cs
- TemplateBindingExpression.cs
- smtppermission.cs
- AnonymousIdentificationSection.cs