RunAndGetResponseAsyncResult(ControlOperationAsyncResult control, TimeoutHelper timeoutHelper, AsyncCallback callback, object state)
                    : base(callback, state)
                {
                    this.control = control;
                    this.timeoutHelper = timeoutHelper;

                    bool completeSelf = true;

                    if (control.getInstanceContext.WorkflowCreationContext.CreateOnly)
                    {
                        completeSelf = Suspend();
                    }
                    else
                    {
                        completeSelf = Run();
                    }

                    if (completeSelf)
                    {
                        Complete(true);
                    }
                }
 public static RunAndGetResponseAsyncResult Create(ControlOperationAsyncResult control, TimeoutHelper timeoutHelper, AsyncCallback callback, object state)
 {
     return new RunAndGetResponseAsyncResult(control, timeoutHelper, callback, state);
 }
 public object InvokeEnd(object instance, out object[] outputs, IAsyncResult result)
 {
     return(ControlOperationAsyncResult.End(out outputs, result));
 }