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

Provides the details of the SignalExternalWorkflowExecution * decision.

Access Control

You can use IAM policies to * control this decision's access to Amazon SWF resources as follows:

  • *

    Use a Resource element with the domain name to limit the action * to only specified domains.

  • Use an Action element * to allow or deny permission to call this action.

  • You cannot * use an IAM policy to constrain this action's parameters.

If * the caller doesn't have sufficient permissions to invoke the action, or the * parameter values fall outside the specified constraints, the action fails. The * associated event attribute's cause parameter is set to * OPERATION_NOT_PERMITTED. For details and example IAM policies, see * Using * IAM to Manage Access to Amazon SWF Workflows in the Amazon SWF Developer * Guide.

See Also:

AWS * API Reference

*/ class SignalExternalWorkflowExecutionDecisionAttributes { public: AWS_SWF_API SignalExternalWorkflowExecutionDecisionAttributes(); AWS_SWF_API SignalExternalWorkflowExecutionDecisionAttributes(Aws::Utils::Json::JsonView jsonValue); AWS_SWF_API SignalExternalWorkflowExecutionDecisionAttributes& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_SWF_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The workflowId of the workflow execution to be signaled.

*/ inline const Aws::String& GetWorkflowId() const{ return m_workflowId; } /** *

The workflowId of the workflow execution to be signaled.

*/ inline bool WorkflowIdHasBeenSet() const { return m_workflowIdHasBeenSet; } /** *

The workflowId of the workflow execution to be signaled.

*/ inline void SetWorkflowId(const Aws::String& value) { m_workflowIdHasBeenSet = true; m_workflowId = value; } /** *

The workflowId of the workflow execution to be signaled.

*/ inline void SetWorkflowId(Aws::String&& value) { m_workflowIdHasBeenSet = true; m_workflowId = std::move(value); } /** *

The workflowId of the workflow execution to be signaled.

*/ inline void SetWorkflowId(const char* value) { m_workflowIdHasBeenSet = true; m_workflowId.assign(value); } /** *

The workflowId of the workflow execution to be signaled.

*/ inline SignalExternalWorkflowExecutionDecisionAttributes& WithWorkflowId(const Aws::String& value) { SetWorkflowId(value); return *this;} /** *

The workflowId of the workflow execution to be signaled.

*/ inline SignalExternalWorkflowExecutionDecisionAttributes& WithWorkflowId(Aws::String&& value) { SetWorkflowId(std::move(value)); return *this;} /** *

The workflowId of the workflow execution to be signaled.

*/ inline SignalExternalWorkflowExecutionDecisionAttributes& WithWorkflowId(const char* value) { SetWorkflowId(value); return *this;} /** *

The runId of the workflow execution to be signaled.

*/ inline const Aws::String& GetRunId() const{ return m_runId; } /** *

The runId of the workflow execution to be signaled.

*/ inline bool RunIdHasBeenSet() const { return m_runIdHasBeenSet; } /** *

The runId of the workflow execution to be signaled.

*/ inline void SetRunId(const Aws::String& value) { m_runIdHasBeenSet = true; m_runId = value; } /** *

The runId of the workflow execution to be signaled.

*/ inline void SetRunId(Aws::String&& value) { m_runIdHasBeenSet = true; m_runId = std::move(value); } /** *

The runId of the workflow execution to be signaled.

*/ inline void SetRunId(const char* value) { m_runIdHasBeenSet = true; m_runId.assign(value); } /** *

The runId of the workflow execution to be signaled.

*/ inline SignalExternalWorkflowExecutionDecisionAttributes& WithRunId(const Aws::String& value) { SetRunId(value); return *this;} /** *

The runId of the workflow execution to be signaled.

*/ inline SignalExternalWorkflowExecutionDecisionAttributes& WithRunId(Aws::String&& value) { SetRunId(std::move(value)); return *this;} /** *

The runId of the workflow execution to be signaled.

*/ inline SignalExternalWorkflowExecutionDecisionAttributes& WithRunId(const char* value) { SetRunId(value); return *this;} /** *

The name of the signal.The target workflow execution uses the signal name * and input to process the signal.

*/ inline const Aws::String& GetSignalName() const{ return m_signalName; } /** *

The name of the signal.The target workflow execution uses the signal name * and input to process the signal.

*/ inline bool SignalNameHasBeenSet() const { return m_signalNameHasBeenSet; } /** *

The name of the signal.The target workflow execution uses the signal name * and input to process the signal.

*/ inline void SetSignalName(const Aws::String& value) { m_signalNameHasBeenSet = true; m_signalName = value; } /** *

The name of the signal.The target workflow execution uses the signal name * and input to process the signal.

*/ inline void SetSignalName(Aws::String&& value) { m_signalNameHasBeenSet = true; m_signalName = std::move(value); } /** *

The name of the signal.The target workflow execution uses the signal name * and input to process the signal.

*/ inline void SetSignalName(const char* value) { m_signalNameHasBeenSet = true; m_signalName.assign(value); } /** *

The name of the signal.The target workflow execution uses the signal name * and input to process the signal.

*/ inline SignalExternalWorkflowExecutionDecisionAttributes& WithSignalName(const Aws::String& value) { SetSignalName(value); return *this;} /** *

The name of the signal.The target workflow execution uses the signal name * and input to process the signal.

*/ inline SignalExternalWorkflowExecutionDecisionAttributes& WithSignalName(Aws::String&& value) { SetSignalName(std::move(value)); return *this;} /** *

The name of the signal.The target workflow execution uses the signal name * and input to process the signal.

*/ inline SignalExternalWorkflowExecutionDecisionAttributes& WithSignalName(const char* value) { SetSignalName(value); return *this;} /** *

The input data to be provided with the signal. The target workflow execution * uses the signal name and input data to process the signal.

*/ inline const Aws::String& GetInput() const{ return m_input; } /** *

The input data to be provided with the signal. The target workflow execution * uses the signal name and input data to process the signal.

*/ inline bool InputHasBeenSet() const { return m_inputHasBeenSet; } /** *

The input data to be provided with the signal. The target workflow execution * uses the signal name and input data to process the signal.

*/ inline void SetInput(const Aws::String& value) { m_inputHasBeenSet = true; m_input = value; } /** *

The input data to be provided with the signal. The target workflow execution * uses the signal name and input data to process the signal.

*/ inline void SetInput(Aws::String&& value) { m_inputHasBeenSet = true; m_input = std::move(value); } /** *

The input data to be provided with the signal. The target workflow execution * uses the signal name and input data to process the signal.

*/ inline void SetInput(const char* value) { m_inputHasBeenSet = true; m_input.assign(value); } /** *

The input data to be provided with the signal. The target workflow execution * uses the signal name and input data to process the signal.

*/ inline SignalExternalWorkflowExecutionDecisionAttributes& WithInput(const Aws::String& value) { SetInput(value); return *this;} /** *

The input data to be provided with the signal. The target workflow execution * uses the signal name and input data to process the signal.

*/ inline SignalExternalWorkflowExecutionDecisionAttributes& WithInput(Aws::String&& value) { SetInput(std::move(value)); return *this;} /** *

The input data to be provided with the signal. The target workflow execution * uses the signal name and input data to process the signal.

*/ inline SignalExternalWorkflowExecutionDecisionAttributes& WithInput(const char* value) { SetInput(value); return *this;} /** *

The data attached to the event that can be used by the decider in subsequent * decision tasks.

*/ inline const Aws::String& GetControl() const{ return m_control; } /** *

The data attached to the event that can be used by the decider in subsequent * decision tasks.

*/ inline bool ControlHasBeenSet() const { return m_controlHasBeenSet; } /** *

The data attached to the event that can be used by the decider in subsequent * decision tasks.

*/ inline void SetControl(const Aws::String& value) { m_controlHasBeenSet = true; m_control = value; } /** *

The data attached to the event that can be used by the decider in subsequent * decision tasks.

*/ inline void SetControl(Aws::String&& value) { m_controlHasBeenSet = true; m_control = std::move(value); } /** *

The data attached to the event that can be used by the decider in subsequent * decision tasks.

*/ inline void SetControl(const char* value) { m_controlHasBeenSet = true; m_control.assign(value); } /** *

The data attached to the event that can be used by the decider in subsequent * decision tasks.

*/ inline SignalExternalWorkflowExecutionDecisionAttributes& WithControl(const Aws::String& value) { SetControl(value); return *this;} /** *

The data attached to the event that can be used by the decider in subsequent * decision tasks.

*/ inline SignalExternalWorkflowExecutionDecisionAttributes& WithControl(Aws::String&& value) { SetControl(std::move(value)); return *this;} /** *

The data attached to the event that can be used by the decider in subsequent * decision tasks.

*/ inline SignalExternalWorkflowExecutionDecisionAttributes& WithControl(const char* value) { SetControl(value); return *this;} private: Aws::String m_workflowId; bool m_workflowIdHasBeenSet = false; Aws::String m_runId; bool m_runIdHasBeenSet = false; Aws::String m_signalName; bool m_signalNameHasBeenSet = false; Aws::String m_input; bool m_inputHasBeenSet = false; Aws::String m_control; bool m_controlHasBeenSet = false; }; } // namespace Model } // namespace SWF } // namespace Aws