You've already forked linux-packaging-mono
							
							
		
			
				
	
	
		
			240 lines
		
	
	
		
			8.6 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			240 lines
		
	
	
		
			8.6 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
| // ****************************************************************************
 | |
| // Copyright (C) 2000-2001 Microsoft Corporation.  All rights reserved.
 | |
| //
 | |
| // CONTENTS
 | |
| //     Activity interface
 | |
| // 
 | |
| // DESCRIPTION
 | |
| //
 | |
| // REVISIONS
 | |
| // Date          Ver     By           Remarks
 | |
| // ~~~~~~~~~~    ~~~     ~~~~~~~~     ~~~~~~~~~~~~~~
 | |
| // 03/19/04      1.0     MayankM       interfaces
 | |
| // ****************************************************************************
 | |
| namespace System.Workflow.ComponentModel
 | |
| {
 | |
|     using System;
 | |
|     using System.IO;
 | |
|     using System.Text;
 | |
|     using System.ComponentModel;
 | |
|     using System.ComponentModel.Design;
 | |
|     using System.CodeDom;
 | |
|     using System.ComponentModel.Design.Serialization;
 | |
|     using System.Collections;
 | |
|     using System.Collections.Generic;
 | |
|     using System.Collections.Specialized;
 | |
|     using System.Reflection;
 | |
|     using System.Security.Principal;
 | |
|     using System.Security.Cryptography;
 | |
|     using Microsoft.CSharp;
 | |
|     using System.Workflow.ComponentModel.Compiler;
 | |
|     using System.Workflow.ComponentModel.Design;
 | |
|     using System.Workflow.ComponentModel.Serialization;
 | |
|     using System.Collections.ObjectModel;
 | |
|     using System.Runtime.Serialization;
 | |
|     using System.Threading;
 | |
| 
 | |
|     [Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
 | |
|     public interface IDynamicPropertyTypeProvider
 | |
|     {
 | |
|         Type GetPropertyType(IServiceProvider serviceProvider, string propertyName);
 | |
|         AccessTypes GetAccessType(IServiceProvider serviceProvider, string propertyName);
 | |
|     }
 | |
| 
 | |
|     internal interface ISupportWorkflowChanges
 | |
|     {
 | |
|         void OnActivityAdded(ActivityExecutionContext rootContext, Activity addedActivity);
 | |
|         void OnActivityRemoved(ActivityExecutionContext rootContext, Activity removedActivity);
 | |
|         void OnWorkflowChangesCompleted(ActivityExecutionContext rootContext);
 | |
|     }
 | |
|     internal interface ISupportAlternateFlow
 | |
|     {
 | |
|         IList<Activity> AlternateFlowActivities { get; }
 | |
|     }
 | |
| 
 | |
|     [AttributeUsageAttribute(AttributeTargets.Class | AttributeTargets.Interface, AllowMultiple = false)]
 | |
|     internal sealed class ActivityExecutorAttribute : Attribute
 | |
|     {
 | |
|         private string executorTypeName = string.Empty;
 | |
| 
 | |
|         public ActivityExecutorAttribute(Type executorType)
 | |
|         {
 | |
|             if (executorType != null)
 | |
|                 this.executorTypeName = executorType.AssemblyQualifiedName;
 | |
|         }
 | |
| 
 | |
|         public ActivityExecutorAttribute(string executorTypeName)
 | |
|         {
 | |
|             this.executorTypeName = executorTypeName;
 | |
|         }
 | |
| 
 | |
|         public string ExecutorTypeName
 | |
|         {
 | |
|             get
 | |
|             {
 | |
|                 return this.executorTypeName;
 | |
|             }
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     [Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
 | |
|     public enum ActivityExecutionStatus : byte
 | |
|     {
 | |
|         Initialized = 0,
 | |
|         Executing = 1,
 | |
|         Canceling = 2,
 | |
|         Closed = 3,
 | |
|         Compensating = 4,
 | |
|         Faulting = 5
 | |
|     }
 | |
| 
 | |
|     [Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
 | |
|     public enum ActivityExecutionResult : byte
 | |
|     {
 | |
|         None = 0,
 | |
|         Succeeded = 1,
 | |
|         Canceled = 2,
 | |
|         Compensated = 3,
 | |
|         Faulted = 4,
 | |
|         Uninitialized = 5
 | |
|     }
 | |
| 
 | |
|     internal interface IDependencyObjectAccessor
 | |
|     {
 | |
|         //This method is invoked during the definition creation time
 | |
|         void InitializeDefinitionForRuntime(DependencyObject parentDependencyObject);
 | |
| 
 | |
|         //This is invoked for every instance (not necessarily activating)
 | |
|         void InitializeInstanceForRuntime(IWorkflowCoreRuntime workflowCoreRuntime);
 | |
| 
 | |
|         //This is invoked for every activating instance
 | |
|         void InitializeActivatingInstanceForRuntime(DependencyObject parentDependencyObject, IWorkflowCoreRuntime workflowCoreRuntime);
 | |
| 
 | |
|         T[] GetInvocationList<T>(DependencyProperty dependencyEvent);
 | |
|     }
 | |
| 
 | |
|     [Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
 | |
|     public interface IStartWorkflow
 | |
|     {
 | |
|         Guid StartWorkflow(Type workflowType, Dictionary<string, object> namedArgumentValues);
 | |
|     }
 | |
| 
 | |
|     internal interface IWorkflowCoreRuntime : IServiceProvider
 | |
|     {
 | |
|         // context information
 | |
|         Activity RootActivity { get; }
 | |
|         Activity CurrentActivity { get; }
 | |
|         Activity CurrentAtomicActivity { get; }
 | |
|         IDisposable SetCurrentActivity(Activity activity);
 | |
| 
 | |
|         void ScheduleItem(SchedulableItem item, bool isInAtomicTransaction, bool transacted, bool queueInTransaction);
 | |
|         void ActivityStatusChanged(Activity activity, bool transacted, bool committed);
 | |
|         void RaiseException(Exception e, Activity activity, string responsibleActivity);
 | |
| 
 | |
|         void RaiseActivityExecuting(Activity activity);
 | |
|         void RaiseHandlerInvoking(Delegate delegateHandler);
 | |
|         void RaiseHandlerInvoked();
 | |
| 
 | |
|         Guid StartWorkflow(Type workflowType, Dictionary<string, object> namedArgumentValues);
 | |
| 
 | |
|         // context activity related
 | |
|         int GetNewContextActivityId();
 | |
|         void RegisterContextActivity(Activity activity);
 | |
|         void UnregisterContextActivity(Activity activity);
 | |
|         Activity LoadContextActivity(ActivityExecutionContextInfo contextInfo, Activity outerContextActivity);
 | |
|         void SaveContextActivity(Activity contextActivity);
 | |
|         Activity GetContextActivityForId(int id);
 | |
|         Object GetService(Activity currentActivity, Type serviceType);
 | |
|         void PersistInstanceState(Activity activity);
 | |
| 
 | |
|         //Dynamic change notifications
 | |
|         bool OnBeforeDynamicChange(IList<WorkflowChangeAction> changes);
 | |
|         void OnAfterDynamicChange(bool updateSucceeded, IList<WorkflowChangeAction> changes);
 | |
|         bool IsDynamicallyUpdated { get; }
 | |
| 
 | |
|         // root level access
 | |
|         Guid InstanceID { get; }
 | |
|         bool SuspendInstance(string suspendDescription);
 | |
|         void TerminateInstance(Exception e);
 | |
|         bool Resume();
 | |
|         void CheckpointInstanceState(Activity currentActivity);
 | |
|         void RequestRevertToCheckpointState(Activity currentActivity, EventHandler<EventArgs> callbackHandler, EventArgs callbackData, bool suspendOnRevert, string suspendReason);
 | |
|         void DisposeCheckpointState();
 | |
| 
 | |
|         // User Tracking
 | |
|         void Track(string key, object data);
 | |
| 
 | |
|         // Timer Events
 | |
|         WaitCallback ProcessTimersCallback { get; }
 | |
|     }
 | |
| 
 | |
|     internal interface ITimerService
 | |
|     {
 | |
|         void ScheduleTimer(WaitCallback callback, Guid workflowInstanceId, DateTime whenUtc, Guid timerId);
 | |
|         void CancelTimer(Guid timerId);
 | |
|     }
 | |
| 
 | |
|     [Serializable()]
 | |
|     [Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
 | |
|     public sealed class WorkflowTerminatedException : Exception
 | |
|     {
 | |
|         private WorkflowTerminatedException(SerializationInfo info, StreamingContext context)
 | |
|             : base(info, context)
 | |
|         {
 | |
|         }
 | |
| 
 | |
|         public WorkflowTerminatedException()
 | |
|             : base(SR.GetString(SR.Error_WorkflowTerminated))
 | |
|         {
 | |
|         }
 | |
| 
 | |
|         public WorkflowTerminatedException(string message)
 | |
|             : base(message)
 | |
|         {
 | |
|         }
 | |
|         public WorkflowTerminatedException(string message, Exception exception)
 | |
|             : base(message, exception)
 | |
|         {
 | |
|         }
 | |
|     }
 | |
|     [Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
 | |
|     public interface ICompensatableActivity
 | |
|     {
 | |
|         ActivityExecutionStatus Compensate(ActivityExecutionContext executionContext);
 | |
|     }
 | |
| 
 | |
|     #region Class AlternateFlowActivityAttribute
 | |
| 
 | |
|     [AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple = false)]
 | |
|     [Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
 | |
|     public sealed class AlternateFlowActivityAttribute : Attribute
 | |
|     {
 | |
|     }
 | |
|     #endregion
 | |
| 
 | |
|     #region Class SupportsTransactionAttribute
 | |
| 
 | |
|     [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)]
 | |
|     internal sealed class SupportsTransactionAttribute : Attribute
 | |
|     {
 | |
|     }
 | |
|     #endregion
 | |
| 
 | |
|     #region Class SupportsSynchronizationAttribute
 | |
| 
 | |
|     [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)]
 | |
|     internal sealed class SupportsSynchronizationAttribute : Attribute
 | |
|     {
 | |
|     }
 | |
|     #endregion
 | |
| 
 | |
|     #region Class PersistOnCloseAttribute
 | |
| 
 | |
|     [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)]
 | |
|     [Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
 | |
|     public sealed class PersistOnCloseAttribute : Attribute
 | |
|     {
 | |
|     }
 | |
|     #endregion
 | |
| }
 |