/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace SWF { namespace Model { /** *

Input data for a TaskCompleted response to a decision task.

See * Also:

AWS * API Reference

*/ class RespondDecisionTaskCompletedRequest : public SWFRequest { public: AWS_SWF_API RespondDecisionTaskCompletedRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "RespondDecisionTaskCompleted"; } AWS_SWF_API Aws::String SerializePayload() const override; AWS_SWF_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The taskToken from the DecisionTask.

* taskToken is generated by the service and should be treated as an * opaque value. If the task is passed to another process, its * taskToken must also be passed. This enables it to provide its * progress and respond with results.

*/ inline const Aws::String& GetTaskToken() const{ return m_taskToken; } /** *

The taskToken from the DecisionTask.

* taskToken is generated by the service and should be treated as an * opaque value. If the task is passed to another process, its * taskToken must also be passed. This enables it to provide its * progress and respond with results.

*/ inline bool TaskTokenHasBeenSet() const { return m_taskTokenHasBeenSet; } /** *

The taskToken from the DecisionTask.

* taskToken is generated by the service and should be treated as an * opaque value. If the task is passed to another process, its * taskToken must also be passed. This enables it to provide its * progress and respond with results.

*/ inline void SetTaskToken(const Aws::String& value) { m_taskTokenHasBeenSet = true; m_taskToken = value; } /** *

The taskToken from the DecisionTask.

* taskToken is generated by the service and should be treated as an * opaque value. If the task is passed to another process, its * taskToken must also be passed. This enables it to provide its * progress and respond with results.

*/ inline void SetTaskToken(Aws::String&& value) { m_taskTokenHasBeenSet = true; m_taskToken = std::move(value); } /** *

The taskToken from the DecisionTask.

* taskToken is generated by the service and should be treated as an * opaque value. If the task is passed to another process, its * taskToken must also be passed. This enables it to provide its * progress and respond with results.

*/ inline void SetTaskToken(const char* value) { m_taskTokenHasBeenSet = true; m_taskToken.assign(value); } /** *

The taskToken from the DecisionTask.

* taskToken is generated by the service and should be treated as an * opaque value. If the task is passed to another process, its * taskToken must also be passed. This enables it to provide its * progress and respond with results.

*/ inline RespondDecisionTaskCompletedRequest& WithTaskToken(const Aws::String& value) { SetTaskToken(value); return *this;} /** *

The taskToken from the DecisionTask.

* taskToken is generated by the service and should be treated as an * opaque value. If the task is passed to another process, its * taskToken must also be passed. This enables it to provide its * progress and respond with results.

*/ inline RespondDecisionTaskCompletedRequest& WithTaskToken(Aws::String&& value) { SetTaskToken(std::move(value)); return *this;} /** *

The taskToken from the DecisionTask.

* taskToken is generated by the service and should be treated as an * opaque value. If the task is passed to another process, its * taskToken must also be passed. This enables it to provide its * progress and respond with results.

*/ inline RespondDecisionTaskCompletedRequest& WithTaskToken(const char* value) { SetTaskToken(value); return *this;} /** *

The list of decisions (possibly empty) made by the decider while processing * this decision task. See the docs for the Decision structure for * details.

*/ inline const Aws::Vector& GetDecisions() const{ return m_decisions; } /** *

The list of decisions (possibly empty) made by the decider while processing * this decision task. See the docs for the Decision structure for * details.

*/ inline bool DecisionsHasBeenSet() const { return m_decisionsHasBeenSet; } /** *

The list of decisions (possibly empty) made by the decider while processing * this decision task. See the docs for the Decision structure for * details.

*/ inline void SetDecisions(const Aws::Vector& value) { m_decisionsHasBeenSet = true; m_decisions = value; } /** *

The list of decisions (possibly empty) made by the decider while processing * this decision task. See the docs for the Decision structure for * details.

*/ inline void SetDecisions(Aws::Vector&& value) { m_decisionsHasBeenSet = true; m_decisions = std::move(value); } /** *

The list of decisions (possibly empty) made by the decider while processing * this decision task. See the docs for the Decision structure for * details.

*/ inline RespondDecisionTaskCompletedRequest& WithDecisions(const Aws::Vector& value) { SetDecisions(value); return *this;} /** *

The list of decisions (possibly empty) made by the decider while processing * this decision task. See the docs for the Decision structure for * details.

*/ inline RespondDecisionTaskCompletedRequest& WithDecisions(Aws::Vector&& value) { SetDecisions(std::move(value)); return *this;} /** *

The list of decisions (possibly empty) made by the decider while processing * this decision task. See the docs for the Decision structure for * details.

*/ inline RespondDecisionTaskCompletedRequest& AddDecisions(const Decision& value) { m_decisionsHasBeenSet = true; m_decisions.push_back(value); return *this; } /** *

The list of decisions (possibly empty) made by the decider while processing * this decision task. See the docs for the Decision structure for * details.

*/ inline RespondDecisionTaskCompletedRequest& AddDecisions(Decision&& value) { m_decisionsHasBeenSet = true; m_decisions.push_back(std::move(value)); return *this; } /** *

User defined context to add to workflow execution.

*/ inline const Aws::String& GetExecutionContext() const{ return m_executionContext; } /** *

User defined context to add to workflow execution.

*/ inline bool ExecutionContextHasBeenSet() const { return m_executionContextHasBeenSet; } /** *

User defined context to add to workflow execution.

*/ inline void SetExecutionContext(const Aws::String& value) { m_executionContextHasBeenSet = true; m_executionContext = value; } /** *

User defined context to add to workflow execution.

*/ inline void SetExecutionContext(Aws::String&& value) { m_executionContextHasBeenSet = true; m_executionContext = std::move(value); } /** *

User defined context to add to workflow execution.

*/ inline void SetExecutionContext(const char* value) { m_executionContextHasBeenSet = true; m_executionContext.assign(value); } /** *

User defined context to add to workflow execution.

*/ inline RespondDecisionTaskCompletedRequest& WithExecutionContext(const Aws::String& value) { SetExecutionContext(value); return *this;} /** *

User defined context to add to workflow execution.

*/ inline RespondDecisionTaskCompletedRequest& WithExecutionContext(Aws::String&& value) { SetExecutionContext(std::move(value)); return *this;} /** *

User defined context to add to workflow execution.

*/ inline RespondDecisionTaskCompletedRequest& WithExecutionContext(const char* value) { SetExecutionContext(value); return *this;} private: Aws::String m_taskToken; bool m_taskTokenHasBeenSet = false; Aws::Vector m_decisions; bool m_decisionsHasBeenSet = false; Aws::String m_executionContext; bool m_executionContextHasBeenSet = false; }; } // namespace Model } // namespace SWF } // namespace Aws