Example #1
0
        public void FailedActivity()
        {
            var workflowId   = DateTime.Now.Ticks.ToString();
            var startRequest = new StartWorkflowExecutionRequest()
            {
                Domain       = DOMAIN,
                WorkflowId   = workflowId,
                ChildPolicy  = "TERMINATE",
                TaskList     = TASKLIST,
                Input        = "ImportantKeyId",
                WorkflowType = WORKFLOW_TYPE
            };

            var runId = Client.StartWorkflowExecution(startRequest).Run.RunId;


            var task = startActivity(runId);

            var respondFailedRequest = new RespondActivityTaskFailedRequest()
            {
                TaskToken = task.TaskToken,
                Details   = "fail task",
                Reason    = "result not required"
            };

            var respondFailedRespond = Client.RespondActivityTaskFailed(respondFailedRequest);

            Assert.IsNotNull(respondFailedRespond.ResponseMetadata.RequestId);
        }
Example #2
0
 /// <summary>
 /// Respond back to SWF that the activity task is failed
 /// </summary>
 /// <param name="taskToken"></param>
 /// <param name="activityState"></param>
 private void TaskFailed(string taskToken, string details, string reason)
 {
     RespondActivityTaskFailedRequest request = new RespondActivityTaskFailedRequest
     {
         Details   = details,
         Reason    = reason,
         TaskToken = taskToken
     };
     RespondActivityTaskFailedResponse response = _swfClient.RespondActivityTaskFailedAsync(request).Result;
 }
Example #3
0
        protected override async Task FailActivityAsync(string taskToken, string error)
        {
            var activityFailedRequest = new RespondActivityTaskFailedRequest
            {
                TaskToken = taskToken,
                Details   = error,
                Reason    = error
            };

            await _amazonSimpleWorkflowClient.RespondActivityTaskFailedAsync(activityFailedRequest);
        }
        public override async Task SendAsync(IAmazonSimpleWorkflow simpleWorkflow, CancellationToken cancellationToken)
        {
            var request = new RespondActivityTaskFailedRequest()
            {
                TaskToken = _taskToken,
                Reason    = _reason,
                Details   = _details
            };

            await simpleWorkflow.RespondActivityTaskFailedAsync(request, cancellationToken);
        }
        private async Task FailTask(String taskToken, string input, string errorMessage)
        {
            RespondActivityTaskFailedRequest request = new RespondActivityTaskFailedRequest()
            {
                TaskToken = taskToken,
                Reason    = SwfResources.Info_EmrJobFailed,
                Details   = errorMessage
            };

            RespondActivityTaskFailedResponse response = await this.SwfClient.RespondActivityTaskFailedAsync(request);

            this.EmrJobLogger.PrintInfo(string.Format(SwfResources.Info_ActivityFailedTemplate, input));
        }