You've already forked linux-packaging-mono
Imported Upstream version 4.6.0.125
Former-commit-id: a2155e9bd80020e49e72e86c44da02a8ac0e57a4
This commit is contained in:
parent
a569aebcfd
commit
e79aa3c0ed
@@ -0,0 +1,57 @@
|
||||
//------------------------------------------------------------
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------
|
||||
|
||||
namespace System.Activities
|
||||
{
|
||||
using System.Activities.Runtime;
|
||||
using System.Runtime;
|
||||
|
||||
[Fx.Tag.XamlVisible(false)]
|
||||
public sealed class AsyncCodeActivityContext : CodeActivityContext
|
||||
{
|
||||
AsyncOperationContext asyncContext;
|
||||
|
||||
internal AsyncCodeActivityContext(AsyncOperationContext asyncContext, ActivityInstance instance, ActivityExecutor executor)
|
||||
: base(instance, executor)
|
||||
{
|
||||
this.asyncContext = asyncContext;
|
||||
}
|
||||
|
||||
public bool IsCancellationRequested
|
||||
{
|
||||
get
|
||||
{
|
||||
ThrowIfDisposed();
|
||||
return this.CurrentInstance.IsCancellationRequested;
|
||||
}
|
||||
}
|
||||
|
||||
public object UserState
|
||||
{
|
||||
get
|
||||
{
|
||||
ThrowIfDisposed();
|
||||
return this.asyncContext.UserState;
|
||||
}
|
||||
set
|
||||
{
|
||||
ThrowIfDisposed();
|
||||
this.asyncContext.UserState = value;
|
||||
}
|
||||
}
|
||||
|
||||
public void MarkCanceled()
|
||||
{
|
||||
ThrowIfDisposed();
|
||||
|
||||
// This is valid to be called while aborting or while canceling
|
||||
if (!this.CurrentInstance.IsCancellationRequested && !this.asyncContext.IsAborting)
|
||||
{
|
||||
throw FxTrace.Exception.AsError(new InvalidOperationException(SR.MarkCanceledOnlyCallableIfCancelRequested));
|
||||
}
|
||||
|
||||
this.CurrentInstance.MarkCanceled();
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user