|
//------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------
namespace System.ServiceModel.Dispatcher
{
using System.Threading;
using System.Collections.Generic;
class WorkflowDispatchContext : IDisposable
{
[ThreadStatic]
static WorkflowDispatchContext workflowDispatchContext = null;
bool isWorkflowStarting;
bool synchronous;
public WorkflowDispatchContext(bool synchronous)
: this(synchronous, false)
{
// empty
}
public WorkflowDispatchContext(bool synchronous, bool isWorkflowStarting)
{
this.synchronous = synchronous;
this.isWorkflowStarting = isWorkflowStarting;
workflowDispatchContext = this;
}
public static WorkflowDispatchContext Current
{
get
{
return workflowDispatchContext;
}
}
public bool IsSynchronous
{
get
{
return this.synchronous;
}
}
public bool IsWorkflowStarting
{
get
{
return this.isWorkflowStarting;
}
}
public void Dispose()
{
workflowDispatchContext = null;
}
}
}
|