//This event handler function starts a task by passing the schema name and task name to the EAWS Service
        //and calling RequestStartTask()
        private void IDC_StartTaskButton_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                if (IDC_SCHEMA_COMBO.SelectedItem != null && IDC_TASK_COMBO.SelectedItem != null &&
                    IDC_SCHEMA_COMBO.SelectedItem.ToString() != "" && IDC_TASK_COMBO.SelectedItem.ToString() != "")
                {
                    //Create a new TaskRequest Object and create a new message GUID
                    EAWSService.StartTaskRequest rStartTaskRequest = new StartTaskRequest();
                    rStartTaskRequest.itemID = Guid.NewGuid();

                    //Set schma name and task name
                    rStartTaskRequest.SchemaName = IDC_SCHEMA_COMBO.SelectedItem.ToString();
                    rStartTaskRequest.TaskName   = IDC_TASK_COMBO.SelectedItem.ToString();

                    //Store Job GUID for Callback
                    m_JobsRunning[rStartTaskRequest.itemID] = rStartTaskRequest;

                    //  Call RequestStartTask passing rStartTaskRequest as a parameter
                    m_EAWSClient.ControlRequest(rStartTaskRequest);
                }
            }
            catch (Exception eException)
            {
                MessageBox.Show(eException.Message);
            }
        }
        internal StartTaskResponse StartTask(StartTaskRequest request)
        {
            var marshaller   = new StartTaskRequestMarshaller();
            var unmarshaller = StartTaskResponseUnmarshaller.Instance;

            return(Invoke <StartTaskRequest, StartTaskResponse>(request, marshaller, unmarshaller));
        }
 public HttpResponse StartTask(StartTaskRequest request)
 {
     return(Task.Run(async() =>
     {
         return await ServiceAgent.RestFullServiceJsonRequest(base.GetTargetUri(), ServiceConfig.DL_StartTask, request);
     }).Result);
 }
        /// <summary>
        /// Initiates the asynchronous execution of the StartTask operation.
        /// </summary>
        ///
        /// <param name="request">Container for the necessary parameters to execute the StartTask operation.</param>
        /// <param name="cancellationToken">
        ///     A cancellation token that can be used by other objects or threads to receive notice of cancellation.
        /// </param>
        /// <returns>The task object representing the asynchronous operation.</returns>
        public Task <StartTaskResponse> StartTaskAsync(StartTaskRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
        {
            var marshaller   = new StartTaskRequestMarshaller();
            var unmarshaller = StartTaskResponseUnmarshaller.Instance;

            return(InvokeAsync <StartTaskRequest, StartTaskResponse>(request, marshaller,
                                                                     unmarshaller, cancellationToken));
        }
Beispiel #5
0
 public bool StartTaskREQ(string SchemaName, string TaskName)
 {
     try
     {
         //Create a new TaskRequest Object and create a new message GUID
         StartTaskRequest rStartTaskRequest = new StartTaskRequest();
         rStartTaskRequest.itemID     = Guid.NewGuid();
         rStartTaskRequest.SchemaName = SchemaName;
         rStartTaskRequest.TaskName   = TaskName;
         JLog.Instance.AppInfo(string.Format("发送启动任务至EAWS服务,任务名称{0}", TaskName));
         JLog.Instance.AppInfo(string.Format("添加EWAW请求--启动任务任务序号:{0}", rStartTaskRequest.itemID));
         GlobalInfo.Instance.JobsRunning[rStartTaskRequest.itemID] = rStartTaskRequest;
         //GlobalInfo.Instance.JobsRunning.Add(rStartTaskRequest.itemID, rStartTaskRequest);
         m_EAWSClient.ControlRequest(rStartTaskRequest);
         return(true);
     }
     catch (Exception ex)
     {
         JLog.Instance.Error(ex.Message, MethodBase.GetCurrentMethod().Name,
                             MethodBase.GetCurrentMethod().Module.Name);
         return(false);
     }
 }
Beispiel #6
0
        // Start Task
        // 启动任务
        private void StartTask(IWebClient client, string task_id)
        {
            var request = new StartTaskRequest
            {
                TaskId = task_id
            };

            try
            {
                var response = client.GetResponse(request);

                Console.WriteLine("==========================Result==========================");
                Console.WriteLine("Response: \r\n{0}", response.ResponseJsonString);
                if (response.TaskInfo != null)
                {
                    Console.WriteLine("Task id is: {0}", response.TaskInfo.TaskId);
                }
                Console.WriteLine("==========================Result==========================");
            }
            catch (ServerException ex)
            {
                Console.WriteLine("ServerException happened: \r\n\tErrorCode: {0}\r\n\tErrorMessage: {1}",
                                  ex.ErrorCode,
                                  ex.ErrorMessage);
            }
            catch (ClientException ex)
            {
                Console.WriteLine("ClientException happened: \r\n\tRequestId: {0}\r\n\tErrorCode: {1}\r\n\tErrorMessage: {2}",
                                  ex.RequestId,
                                  ex.ErrorCode,
                                  ex.ErrorMessage);
            }
            catch (Exception ex)
            {
                Console.WriteLine("Unknown Exception happened: {0}\r\n{1}", ex.Message, ex.StackTrace);
            }
        }
Beispiel #7
0
        /// <summary>
        /// Start Task like "fire and forget"
        /// </summary>
        public Task <ComputationDetailedItem> StartTaskAsync(ApiSession apiSession, StartTaskRequest startTaskRequest, CancellationToken cancellationToken)
        {
            if (apiSession == null)
            {
                throw new ArgumentNullException(nameof(apiSession));
            }

            if (startTaskRequest == null)
            {
                throw new ArgumentNullException(nameof(startTaskRequest));
            }

            return(Wrapped(async(token) =>
            {
                var requestDto = new TaskStartRequestDto()
                {
                    TaskId = startTaskRequest.TaskId,
                    TaskParameters = startTaskRequest.TaskParameters?.Select(TaskParameterMapper.ToDto)?.ToList()
                };

                var apiResult = await _lowLevelApiClient.StartTaskAsync(apiSession, requestDto, token);
                return MapOrFail(apiResult, ComputationDetailedItemMapper.FromDto);
            }, cancellationToken, OperationType.ShortOperation));
        }