Code:
/ 4.0 / 4.0 / untmp / 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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- CustomExpression.cs
- Style.cs
- Array.cs
- PhoneCall.cs
- CodeTypeConstructor.cs
- StateRuntime.cs
- GuidelineSet.cs
- CompositionCommandSet.cs
- WebPartDisplayMode.cs
- GenericUI.cs
- TreeNodeEventArgs.cs
- CultureSpecificStringDictionary.cs
- StringHandle.cs
- DrawingVisual.cs
- WebPartConnectVerb.cs
- ListView.cs
- BaseValidator.cs
- TextSelectionHelper.cs
- ExpressionWriter.cs
- SqlDataSourceEnumerator.cs
- PipelineModuleStepContainer.cs
- XmlCollation.cs
- ReadContentAsBinaryHelper.cs
- GeneralTransform3DCollection.cs
- RC2CryptoServiceProvider.cs
- ContextProperty.cs
- dsa.cs
- Schema.cs
- SoapHttpTransportImporter.cs
- ActivationProxy.cs
- DataStorage.cs
- HwndSource.cs
- Journal.cs
- Color.cs
- DefaultAssemblyResolver.cs
- XmlName.cs
- InvalidFilterCriteriaException.cs
- DataContractAttribute.cs
- Scanner.cs
- ToolStripDropDown.cs
- CodeAttachEventStatement.cs
- AppDomainProtocolHandler.cs
- DeleteCardRequest.cs
- remotingproxy.cs
- XamlHostingSectionGroup.cs
- XmlSchemaInfo.cs
- WebPartRestoreVerb.cs
- EndEvent.cs
- XmlCompatibilityReader.cs
- TextRangeEdit.cs
- HttpAsyncResult.cs
- MouseEvent.cs
- ObjectDataSourceChooseTypePanel.cs
- UnsafeNativeMethods.cs
- SQLByteStorage.cs
- GradientStop.cs
- KeyGestureConverter.cs
- DictionaryEditChange.cs
- AttributeQuery.cs
- PriorityBindingExpression.cs
- MimeBasePart.cs
- XmlSchemaImport.cs
- UniformGrid.cs
- LinkedResource.cs
- CodeValidator.cs
- TextWriterEngine.cs
- SerialStream.cs
- TouchesCapturedWithinProperty.cs
- VisualState.cs
- SimpleType.cs
- MdiWindowListStrip.cs
- IntSecurity.cs
- SelectionPatternIdentifiers.cs
- ControlValuePropertyAttribute.cs
- ColumnTypeConverter.cs
- ObjectComplexPropertyMapping.cs
- XmlNodeChangedEventArgs.cs
- DetailsViewCommandEventArgs.cs
- ServiceReference.cs
- _AuthenticationState.cs
- XXXInfos.cs
- ScalarConstant.cs
- IListConverters.cs
- SqlMethodTransformer.cs
- ApplyHostConfigurationBehavior.cs
- BitmapEffectDrawing.cs
- _emptywebproxy.cs
- SchemaImporterExtension.cs
- CodeAttributeDeclaration.cs
- DictionaryBase.cs
- SafeMemoryMappedFileHandle.cs
- ServiceModelActivity.cs
- VScrollProperties.cs
- MenuStrip.cs
- MethodToken.cs
- Compress.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- ScopeCollection.cs
- HtmlInputReset.cs
- WindowsGraphics.cs