示例#1
0
        public IOutputInfoFinishedProcessState StartProcess(OutputInfoRequestTask task, bool?includeTaskDetails)
        {
            OutputInfoRequest request = this.CreateRequest(task, includeTaskDetails);

            OutputInfoResponse response = this.SendRequest(request,
                                                           () =>
            {
                return(this.Dialog.SendRequest(request));
            });

            return(new StockLocationInfoFinishedProcessState(request, response));
        }
示例#2
0
        private void Dialog_RequestReceived(Object sender, MessageReceivedEventArgs <OutputInfoRequest> e)
        {
            OutputInfoRequest request = e.Message;

            this.OnMessageReceived(request,
                                   () =>
            {
                IOutputInfoRequestedProcessState processState = new OutputInfoRequestedProcessState(this, request);

                this.ProcessStarted?.Invoke(this, new ProcessStartedEventArgs <IOutputInfoRequestedProcessState>(processState));
            });
        }
示例#3
0
        public async Task <IOutputInfoFinishedProcessState> StartProcessAsync(OutputInfoRequestTask task,
                                                                              bool?includeTaskDetails,
                                                                              CancellationToken cancellationToken = default)
        {
            OutputInfoRequest request = this.CreateRequest(task, includeTaskDetails);

            OutputInfoResponse response = await this.SendRequestAsync(request,
                                                                      () =>
            {
                return(this.Dialog.SendRequestAsync(request, cancellationToken));
            }).ConfigureAwait(continueOnCapturedContext: false);

            return(new StockLocationInfoFinishedProcessState(request, response));
        }
 public OutputInfoRequestedProcessState(OutputInfoWorkflow workflow, OutputInfoRequest request)
 {
     this.Workflow = workflow;
     this.Request  = request;
 }
示例#5
0
 public Task <OutputInfoResponse> SendRequestAsync(OutputInfoRequest request, CancellationToken cancellationToken = default)
 {
     return(base.SendRequestAsync <OutputInfoRequest, OutputInfoResponse>(request, cancellationToken));
 }
示例#6
0
 public OutputInfoResponse SendRequest(OutputInfoRequest request)
 {
     return(base.SendRequest <OutputInfoRequest, OutputInfoResponse>(request));
 }
 public StockLocationInfoFinishedProcessState(OutputInfoRequest request,
                                              OutputInfoResponse response)
 {
     this.Request  = request;
     this.Response = response;
 }
示例#8
0
 protected void OnRequestReceived(OutputInfoRequest request)
 {
     this.RequestReceived?.Invoke(this, new MessageReceivedEventArgs <OutputInfoRequest>(request, this.DialogProvider));
 }