예제 #1
0
        private void InvokeCallback(IAsyncResult result)
        {
            if (result.CompletedSynchronously)
            {
                return;
            }
            AsyncInvokeContext context = (AsyncInvokeContext)result.AsyncState;
            WorkflowInvoker    thisPtr = context.Invoker;
            Exception          error   = null;

            try
            {
                context.Outputs = thisPtr.EndInvoke(result);
            }
            catch (Exception e)
            {
                if (Fx.IsFatal(e))
                {
                    throw;
                }
                error = e;
            }
            thisPtr.PostInvokeCompletedAndRemove(context, error);
        }
예제 #2
0
        public IDictionary <string, object> Invoke(IDictionary <string, object> inputs, TimeSpan timeout)
        {
            TimeoutHelper.ThrowIfNegativeArgument(timeout);

            return(WorkflowInvoker.Invoke(_workflow, inputs, timeout, _extensions));
        }
예제 #3
0
 public IDictionary <string, object> Invoke(IDictionary <string, object> inputs)
 {
     return(WorkflowInvoker.Invoke(_workflow, inputs, ActivityDefaults.InvokeTimeout, _extensions));
 }