/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #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 ScheduleActivityTask 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.

  • Constrain the * following parameters by using a Condition element with the * appropriate keys.

    • activityType.name – String * constraint. The key is swf:activityType.name.

    • * activityType.version – String constraint. The key is * swf:activityType.version.

    • taskList * – String constraint. The key is swf:taskList.name.

    *

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 ScheduleActivityTaskDecisionAttributes { public: AWS_SWF_API ScheduleActivityTaskDecisionAttributes(); AWS_SWF_API ScheduleActivityTaskDecisionAttributes(Aws::Utils::Json::JsonView jsonValue); AWS_SWF_API ScheduleActivityTaskDecisionAttributes& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_SWF_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The type of the activity task to schedule.

*/ inline const ActivityType& GetActivityType() const{ return m_activityType; } /** *

The type of the activity task to schedule.

*/ inline bool ActivityTypeHasBeenSet() const { return m_activityTypeHasBeenSet; } /** *

The type of the activity task to schedule.

*/ inline void SetActivityType(const ActivityType& value) { m_activityTypeHasBeenSet = true; m_activityType = value; } /** *

The type of the activity task to schedule.

*/ inline void SetActivityType(ActivityType&& value) { m_activityTypeHasBeenSet = true; m_activityType = std::move(value); } /** *

The type of the activity task to schedule.

*/ inline ScheduleActivityTaskDecisionAttributes& WithActivityType(const ActivityType& value) { SetActivityType(value); return *this;} /** *

The type of the activity task to schedule.

*/ inline ScheduleActivityTaskDecisionAttributes& WithActivityType(ActivityType&& value) { SetActivityType(std::move(value)); return *this;} /** *

The activityId of the activity task.

The specified * string must not contain a : (colon), / (slash), * | (vertical bar), or any control characters * (\u0000-\u001f | \u007f-\u009f). Also, it must * not be the literal string arn.

*/ inline const Aws::String& GetActivityId() const{ return m_activityId; } /** *

The activityId of the activity task.

The specified * string must not contain a : (colon), / (slash), * | (vertical bar), or any control characters * (\u0000-\u001f | \u007f-\u009f). Also, it must * not be the literal string arn.

*/ inline bool ActivityIdHasBeenSet() const { return m_activityIdHasBeenSet; } /** *

The activityId of the activity task.

The specified * string must not contain a : (colon), / (slash), * | (vertical bar), or any control characters * (\u0000-\u001f | \u007f-\u009f). Also, it must * not be the literal string arn.

*/ inline void SetActivityId(const Aws::String& value) { m_activityIdHasBeenSet = true; m_activityId = value; } /** *

The activityId of the activity task.

The specified * string must not contain a : (colon), / (slash), * | (vertical bar), or any control characters * (\u0000-\u001f | \u007f-\u009f). Also, it must * not be the literal string arn.

*/ inline void SetActivityId(Aws::String&& value) { m_activityIdHasBeenSet = true; m_activityId = std::move(value); } /** *

The activityId of the activity task.

The specified * string must not contain a : (colon), / (slash), * | (vertical bar), or any control characters * (\u0000-\u001f | \u007f-\u009f). Also, it must * not be the literal string arn.

*/ inline void SetActivityId(const char* value) { m_activityIdHasBeenSet = true; m_activityId.assign(value); } /** *

The activityId of the activity task.

The specified * string must not contain a : (colon), / (slash), * | (vertical bar), or any control characters * (\u0000-\u001f | \u007f-\u009f). Also, it must * not be the literal string arn.

*/ inline ScheduleActivityTaskDecisionAttributes& WithActivityId(const Aws::String& value) { SetActivityId(value); return *this;} /** *

The activityId of the activity task.

The specified * string must not contain a : (colon), / (slash), * | (vertical bar), or any control characters * (\u0000-\u001f | \u007f-\u009f). Also, it must * not be the literal string arn.

*/ inline ScheduleActivityTaskDecisionAttributes& WithActivityId(Aws::String&& value) { SetActivityId(std::move(value)); return *this;} /** *

The activityId of the activity task.

The specified * string must not contain a : (colon), / (slash), * | (vertical bar), or any control characters * (\u0000-\u001f | \u007f-\u009f). Also, it must * not be the literal string arn.

*/ inline ScheduleActivityTaskDecisionAttributes& WithActivityId(const char* value) { SetActivityId(value); return *this;} /** *

Data attached to the event that can be used by the decider in subsequent * workflow tasks. This data isn't sent to the activity.

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

Data attached to the event that can be used by the decider in subsequent * workflow tasks. This data isn't sent to the activity.

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

Data attached to the event that can be used by the decider in subsequent * workflow tasks. This data isn't sent to the activity.

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

Data attached to the event that can be used by the decider in subsequent * workflow tasks. This data isn't sent to the activity.

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

Data attached to the event that can be used by the decider in subsequent * workflow tasks. This data isn't sent to the activity.

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

Data attached to the event that can be used by the decider in subsequent * workflow tasks. This data isn't sent to the activity.

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

Data attached to the event that can be used by the decider in subsequent * workflow tasks. This data isn't sent to the activity.

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

Data attached to the event that can be used by the decider in subsequent * workflow tasks. This data isn't sent to the activity.

*/ inline ScheduleActivityTaskDecisionAttributes& WithControl(const char* value) { SetControl(value); return *this;} /** *

The input provided to the activity task.

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

The input provided to the activity task.

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

The input provided to the activity task.

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

The input provided to the activity task.

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

The input provided to the activity task.

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

The input provided to the activity task.

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

The input provided to the activity task.

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

The input provided to the activity task.

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

The maximum duration for this activity task.

The duration is specified * in seconds, an integer greater than or equal to 0. You can use * NONE to specify unlimited duration.

A * schedule-to-close timeout for this activity task must be specified either as a * default for the activity type or through this field. If neither this field is * set nor a default schedule-to-close timeout was specified at registration time * then a fault is returned.

*/ inline const Aws::String& GetScheduleToCloseTimeout() const{ return m_scheduleToCloseTimeout; } /** *

The maximum duration for this activity task.

The duration is specified * in seconds, an integer greater than or equal to 0. You can use * NONE to specify unlimited duration.

A * schedule-to-close timeout for this activity task must be specified either as a * default for the activity type or through this field. If neither this field is * set nor a default schedule-to-close timeout was specified at registration time * then a fault is returned.

*/ inline bool ScheduleToCloseTimeoutHasBeenSet() const { return m_scheduleToCloseTimeoutHasBeenSet; } /** *

The maximum duration for this activity task.

The duration is specified * in seconds, an integer greater than or equal to 0. You can use * NONE to specify unlimited duration.

A * schedule-to-close timeout for this activity task must be specified either as a * default for the activity type or through this field. If neither this field is * set nor a default schedule-to-close timeout was specified at registration time * then a fault is returned.

*/ inline void SetScheduleToCloseTimeout(const Aws::String& value) { m_scheduleToCloseTimeoutHasBeenSet = true; m_scheduleToCloseTimeout = value; } /** *

The maximum duration for this activity task.

The duration is specified * in seconds, an integer greater than or equal to 0. You can use * NONE to specify unlimited duration.

A * schedule-to-close timeout for this activity task must be specified either as a * default for the activity type or through this field. If neither this field is * set nor a default schedule-to-close timeout was specified at registration time * then a fault is returned.

*/ inline void SetScheduleToCloseTimeout(Aws::String&& value) { m_scheduleToCloseTimeoutHasBeenSet = true; m_scheduleToCloseTimeout = std::move(value); } /** *

The maximum duration for this activity task.

The duration is specified * in seconds, an integer greater than or equal to 0. You can use * NONE to specify unlimited duration.

A * schedule-to-close timeout for this activity task must be specified either as a * default for the activity type or through this field. If neither this field is * set nor a default schedule-to-close timeout was specified at registration time * then a fault is returned.

*/ inline void SetScheduleToCloseTimeout(const char* value) { m_scheduleToCloseTimeoutHasBeenSet = true; m_scheduleToCloseTimeout.assign(value); } /** *

The maximum duration for this activity task.

The duration is specified * in seconds, an integer greater than or equal to 0. You can use * NONE to specify unlimited duration.

A * schedule-to-close timeout for this activity task must be specified either as a * default for the activity type or through this field. If neither this field is * set nor a default schedule-to-close timeout was specified at registration time * then a fault is returned.

*/ inline ScheduleActivityTaskDecisionAttributes& WithScheduleToCloseTimeout(const Aws::String& value) { SetScheduleToCloseTimeout(value); return *this;} /** *

The maximum duration for this activity task.

The duration is specified * in seconds, an integer greater than or equal to 0. You can use * NONE to specify unlimited duration.

A * schedule-to-close timeout for this activity task must be specified either as a * default for the activity type or through this field. If neither this field is * set nor a default schedule-to-close timeout was specified at registration time * then a fault is returned.

*/ inline ScheduleActivityTaskDecisionAttributes& WithScheduleToCloseTimeout(Aws::String&& value) { SetScheduleToCloseTimeout(std::move(value)); return *this;} /** *

The maximum duration for this activity task.

The duration is specified * in seconds, an integer greater than or equal to 0. You can use * NONE to specify unlimited duration.

A * schedule-to-close timeout for this activity task must be specified either as a * default for the activity type or through this field. If neither this field is * set nor a default schedule-to-close timeout was specified at registration time * then a fault is returned.

*/ inline ScheduleActivityTaskDecisionAttributes& WithScheduleToCloseTimeout(const char* value) { SetScheduleToCloseTimeout(value); return *this;} /** *

If set, specifies the name of the task list in which to schedule the activity * task. If not specified, the defaultTaskList registered with the * activity type is used.

A task list for this activity task must be * specified either as a default for the activity type or through this field. If * neither this field is set nor a default task list was specified at registration * time then a fault is returned.

The specified string must not * contain a : (colon), / (slash), | * (vertical bar), or any control characters (\u0000-\u001f | * \u007f-\u009f). Also, it must not be the literal string * arn.

*/ inline const TaskList& GetTaskList() const{ return m_taskList; } /** *

If set, specifies the name of the task list in which to schedule the activity * task. If not specified, the defaultTaskList registered with the * activity type is used.

A task list for this activity task must be * specified either as a default for the activity type or through this field. If * neither this field is set nor a default task list was specified at registration * time then a fault is returned.

The specified string must not * contain a : (colon), / (slash), | * (vertical bar), or any control characters (\u0000-\u001f | * \u007f-\u009f). Also, it must not be the literal string * arn.

*/ inline bool TaskListHasBeenSet() const { return m_taskListHasBeenSet; } /** *

If set, specifies the name of the task list in which to schedule the activity * task. If not specified, the defaultTaskList registered with the * activity type is used.

A task list for this activity task must be * specified either as a default for the activity type or through this field. If * neither this field is set nor a default task list was specified at registration * time then a fault is returned.

The specified string must not * contain a : (colon), / (slash), | * (vertical bar), or any control characters (\u0000-\u001f | * \u007f-\u009f). Also, it must not be the literal string * arn.

*/ inline void SetTaskList(const TaskList& value) { m_taskListHasBeenSet = true; m_taskList = value; } /** *

If set, specifies the name of the task list in which to schedule the activity * task. If not specified, the defaultTaskList registered with the * activity type is used.

A task list for this activity task must be * specified either as a default for the activity type or through this field. If * neither this field is set nor a default task list was specified at registration * time then a fault is returned.

The specified string must not * contain a : (colon), / (slash), | * (vertical bar), or any control characters (\u0000-\u001f | * \u007f-\u009f). Also, it must not be the literal string * arn.

*/ inline void SetTaskList(TaskList&& value) { m_taskListHasBeenSet = true; m_taskList = std::move(value); } /** *

If set, specifies the name of the task list in which to schedule the activity * task. If not specified, the defaultTaskList registered with the * activity type is used.

A task list for this activity task must be * specified either as a default for the activity type or through this field. If * neither this field is set nor a default task list was specified at registration * time then a fault is returned.

The specified string must not * contain a : (colon), / (slash), | * (vertical bar), or any control characters (\u0000-\u001f | * \u007f-\u009f). Also, it must not be the literal string * arn.

*/ inline ScheduleActivityTaskDecisionAttributes& WithTaskList(const TaskList& value) { SetTaskList(value); return *this;} /** *

If set, specifies the name of the task list in which to schedule the activity * task. If not specified, the defaultTaskList registered with the * activity type is used.

A task list for this activity task must be * specified either as a default for the activity type or through this field. If * neither this field is set nor a default task list was specified at registration * time then a fault is returned.

The specified string must not * contain a : (colon), / (slash), | * (vertical bar), or any control characters (\u0000-\u001f | * \u007f-\u009f). Also, it must not be the literal string * arn.

*/ inline ScheduleActivityTaskDecisionAttributes& WithTaskList(TaskList&& value) { SetTaskList(std::move(value)); return *this;} /** *

If set, specifies the priority with which the activity task is to be * assigned to a worker. This overrides the defaultTaskPriority specified when * registering the activity type using RegisterActivityType. Valid values * are integers that range from Java's Integer.MIN_VALUE (-2147483648) * to Integer.MAX_VALUE (2147483647). Higher numbers indicate higher * priority.

For more information about setting task priority, see Setting * Task Priority in the Amazon SWF Developer Guide.

*/ inline const Aws::String& GetTaskPriority() const{ return m_taskPriority; } /** *

If set, specifies the priority with which the activity task is to be * assigned to a worker. This overrides the defaultTaskPriority specified when * registering the activity type using RegisterActivityType. Valid values * are integers that range from Java's Integer.MIN_VALUE (-2147483648) * to Integer.MAX_VALUE (2147483647). Higher numbers indicate higher * priority.

For more information about setting task priority, see Setting * Task Priority in the Amazon SWF Developer Guide.

*/ inline bool TaskPriorityHasBeenSet() const { return m_taskPriorityHasBeenSet; } /** *

If set, specifies the priority with which the activity task is to be * assigned to a worker. This overrides the defaultTaskPriority specified when * registering the activity type using RegisterActivityType. Valid values * are integers that range from Java's Integer.MIN_VALUE (-2147483648) * to Integer.MAX_VALUE (2147483647). Higher numbers indicate higher * priority.

For more information about setting task priority, see Setting * Task Priority in the Amazon SWF Developer Guide.

*/ inline void SetTaskPriority(const Aws::String& value) { m_taskPriorityHasBeenSet = true; m_taskPriority = value; } /** *

If set, specifies the priority with which the activity task is to be * assigned to a worker. This overrides the defaultTaskPriority specified when * registering the activity type using RegisterActivityType. Valid values * are integers that range from Java's Integer.MIN_VALUE (-2147483648) * to Integer.MAX_VALUE (2147483647). Higher numbers indicate higher * priority.

For more information about setting task priority, see Setting * Task Priority in the Amazon SWF Developer Guide.

*/ inline void SetTaskPriority(Aws::String&& value) { m_taskPriorityHasBeenSet = true; m_taskPriority = std::move(value); } /** *

If set, specifies the priority with which the activity task is to be * assigned to a worker. This overrides the defaultTaskPriority specified when * registering the activity type using RegisterActivityType. Valid values * are integers that range from Java's Integer.MIN_VALUE (-2147483648) * to Integer.MAX_VALUE (2147483647). Higher numbers indicate higher * priority.

For more information about setting task priority, see Setting * Task Priority in the Amazon SWF Developer Guide.

*/ inline void SetTaskPriority(const char* value) { m_taskPriorityHasBeenSet = true; m_taskPriority.assign(value); } /** *

If set, specifies the priority with which the activity task is to be * assigned to a worker. This overrides the defaultTaskPriority specified when * registering the activity type using RegisterActivityType. Valid values * are integers that range from Java's Integer.MIN_VALUE (-2147483648) * to Integer.MAX_VALUE (2147483647). Higher numbers indicate higher * priority.

For more information about setting task priority, see Setting * Task Priority in the Amazon SWF Developer Guide.

*/ inline ScheduleActivityTaskDecisionAttributes& WithTaskPriority(const Aws::String& value) { SetTaskPriority(value); return *this;} /** *

If set, specifies the priority with which the activity task is to be * assigned to a worker. This overrides the defaultTaskPriority specified when * registering the activity type using RegisterActivityType. Valid values * are integers that range from Java's Integer.MIN_VALUE (-2147483648) * to Integer.MAX_VALUE (2147483647). Higher numbers indicate higher * priority.

For more information about setting task priority, see Setting * Task Priority in the Amazon SWF Developer Guide.

*/ inline ScheduleActivityTaskDecisionAttributes& WithTaskPriority(Aws::String&& value) { SetTaskPriority(std::move(value)); return *this;} /** *

If set, specifies the priority with which the activity task is to be * assigned to a worker. This overrides the defaultTaskPriority specified when * registering the activity type using RegisterActivityType. Valid values * are integers that range from Java's Integer.MIN_VALUE (-2147483648) * to Integer.MAX_VALUE (2147483647). Higher numbers indicate higher * priority.

For more information about setting task priority, see Setting * Task Priority in the Amazon SWF Developer Guide.

*/ inline ScheduleActivityTaskDecisionAttributes& WithTaskPriority(const char* value) { SetTaskPriority(value); return *this;} /** *

If set, specifies the maximum duration the activity task can wait to be * assigned to a worker. This overrides the default schedule-to-start timeout * specified when registering the activity type using * RegisterActivityType.

The duration is specified in seconds, an * integer greater than or equal to 0. You can use NONE * to specify unlimited duration.

A schedule-to-start timeout for * this activity task must be specified either as a default for the activity type * or through this field. If neither this field is set nor a default * schedule-to-start timeout was specified at registration time then a fault is * returned.

*/ inline const Aws::String& GetScheduleToStartTimeout() const{ return m_scheduleToStartTimeout; } /** *

If set, specifies the maximum duration the activity task can wait to be * assigned to a worker. This overrides the default schedule-to-start timeout * specified when registering the activity type using * RegisterActivityType.

The duration is specified in seconds, an * integer greater than or equal to 0. You can use NONE * to specify unlimited duration.

A schedule-to-start timeout for * this activity task must be specified either as a default for the activity type * or through this field. If neither this field is set nor a default * schedule-to-start timeout was specified at registration time then a fault is * returned.

*/ inline bool ScheduleToStartTimeoutHasBeenSet() const { return m_scheduleToStartTimeoutHasBeenSet; } /** *

If set, specifies the maximum duration the activity task can wait to be * assigned to a worker. This overrides the default schedule-to-start timeout * specified when registering the activity type using * RegisterActivityType.

The duration is specified in seconds, an * integer greater than or equal to 0. You can use NONE * to specify unlimited duration.

A schedule-to-start timeout for * this activity task must be specified either as a default for the activity type * or through this field. If neither this field is set nor a default * schedule-to-start timeout was specified at registration time then a fault is * returned.

*/ inline void SetScheduleToStartTimeout(const Aws::String& value) { m_scheduleToStartTimeoutHasBeenSet = true; m_scheduleToStartTimeout = value; } /** *

If set, specifies the maximum duration the activity task can wait to be * assigned to a worker. This overrides the default schedule-to-start timeout * specified when registering the activity type using * RegisterActivityType.

The duration is specified in seconds, an * integer greater than or equal to 0. You can use NONE * to specify unlimited duration.

A schedule-to-start timeout for * this activity task must be specified either as a default for the activity type * or through this field. If neither this field is set nor a default * schedule-to-start timeout was specified at registration time then a fault is * returned.

*/ inline void SetScheduleToStartTimeout(Aws::String&& value) { m_scheduleToStartTimeoutHasBeenSet = true; m_scheduleToStartTimeout = std::move(value); } /** *

If set, specifies the maximum duration the activity task can wait to be * assigned to a worker. This overrides the default schedule-to-start timeout * specified when registering the activity type using * RegisterActivityType.

The duration is specified in seconds, an * integer greater than or equal to 0. You can use NONE * to specify unlimited duration.

A schedule-to-start timeout for * this activity task must be specified either as a default for the activity type * or through this field. If neither this field is set nor a default * schedule-to-start timeout was specified at registration time then a fault is * returned.

*/ inline void SetScheduleToStartTimeout(const char* value) { m_scheduleToStartTimeoutHasBeenSet = true; m_scheduleToStartTimeout.assign(value); } /** *

If set, specifies the maximum duration the activity task can wait to be * assigned to a worker. This overrides the default schedule-to-start timeout * specified when registering the activity type using * RegisterActivityType.

The duration is specified in seconds, an * integer greater than or equal to 0. You can use NONE * to specify unlimited duration.

A schedule-to-start timeout for * this activity task must be specified either as a default for the activity type * or through this field. If neither this field is set nor a default * schedule-to-start timeout was specified at registration time then a fault is * returned.

*/ inline ScheduleActivityTaskDecisionAttributes& WithScheduleToStartTimeout(const Aws::String& value) { SetScheduleToStartTimeout(value); return *this;} /** *

If set, specifies the maximum duration the activity task can wait to be * assigned to a worker. This overrides the default schedule-to-start timeout * specified when registering the activity type using * RegisterActivityType.

The duration is specified in seconds, an * integer greater than or equal to 0. You can use NONE * to specify unlimited duration.

A schedule-to-start timeout for * this activity task must be specified either as a default for the activity type * or through this field. If neither this field is set nor a default * schedule-to-start timeout was specified at registration time then a fault is * returned.

*/ inline ScheduleActivityTaskDecisionAttributes& WithScheduleToStartTimeout(Aws::String&& value) { SetScheduleToStartTimeout(std::move(value)); return *this;} /** *

If set, specifies the maximum duration the activity task can wait to be * assigned to a worker. This overrides the default schedule-to-start timeout * specified when registering the activity type using * RegisterActivityType.

The duration is specified in seconds, an * integer greater than or equal to 0. You can use NONE * to specify unlimited duration.

A schedule-to-start timeout for * this activity task must be specified either as a default for the activity type * or through this field. If neither this field is set nor a default * schedule-to-start timeout was specified at registration time then a fault is * returned.

*/ inline ScheduleActivityTaskDecisionAttributes& WithScheduleToStartTimeout(const char* value) { SetScheduleToStartTimeout(value); return *this;} /** *

If set, specifies the maximum duration a worker may take to process this * activity task. This overrides the default start-to-close timeout specified when * registering the activity type using RegisterActivityType.

The * duration is specified in seconds, an integer greater than or equal to * 0. You can use NONE to specify unlimited duration.

*

A start-to-close timeout for this activity task must be specified * either as a default for the activity type or through this field. If neither this * field is set nor a default start-to-close timeout was specified at registration * time then a fault is returned.

*/ inline const Aws::String& GetStartToCloseTimeout() const{ return m_startToCloseTimeout; } /** *

If set, specifies the maximum duration a worker may take to process this * activity task. This overrides the default start-to-close timeout specified when * registering the activity type using RegisterActivityType.

The * duration is specified in seconds, an integer greater than or equal to * 0. You can use NONE to specify unlimited duration.

*

A start-to-close timeout for this activity task must be specified * either as a default for the activity type or through this field. If neither this * field is set nor a default start-to-close timeout was specified at registration * time then a fault is returned.

*/ inline bool StartToCloseTimeoutHasBeenSet() const { return m_startToCloseTimeoutHasBeenSet; } /** *

If set, specifies the maximum duration a worker may take to process this * activity task. This overrides the default start-to-close timeout specified when * registering the activity type using RegisterActivityType.

The * duration is specified in seconds, an integer greater than or equal to * 0. You can use NONE to specify unlimited duration.

*

A start-to-close timeout for this activity task must be specified * either as a default for the activity type or through this field. If neither this * field is set nor a default start-to-close timeout was specified at registration * time then a fault is returned.

*/ inline void SetStartToCloseTimeout(const Aws::String& value) { m_startToCloseTimeoutHasBeenSet = true; m_startToCloseTimeout = value; } /** *

If set, specifies the maximum duration a worker may take to process this * activity task. This overrides the default start-to-close timeout specified when * registering the activity type using RegisterActivityType.

The * duration is specified in seconds, an integer greater than or equal to * 0. You can use NONE to specify unlimited duration.

*

A start-to-close timeout for this activity task must be specified * either as a default for the activity type or through this field. If neither this * field is set nor a default start-to-close timeout was specified at registration * time then a fault is returned.

*/ inline void SetStartToCloseTimeout(Aws::String&& value) { m_startToCloseTimeoutHasBeenSet = true; m_startToCloseTimeout = std::move(value); } /** *

If set, specifies the maximum duration a worker may take to process this * activity task. This overrides the default start-to-close timeout specified when * registering the activity type using RegisterActivityType.

The * duration is specified in seconds, an integer greater than or equal to * 0. You can use NONE to specify unlimited duration.

*

A start-to-close timeout for this activity task must be specified * either as a default for the activity type or through this field. If neither this * field is set nor a default start-to-close timeout was specified at registration * time then a fault is returned.

*/ inline void SetStartToCloseTimeout(const char* value) { m_startToCloseTimeoutHasBeenSet = true; m_startToCloseTimeout.assign(value); } /** *

If set, specifies the maximum duration a worker may take to process this * activity task. This overrides the default start-to-close timeout specified when * registering the activity type using RegisterActivityType.

The * duration is specified in seconds, an integer greater than or equal to * 0. You can use NONE to specify unlimited duration.

*

A start-to-close timeout for this activity task must be specified * either as a default for the activity type or through this field. If neither this * field is set nor a default start-to-close timeout was specified at registration * time then a fault is returned.

*/ inline ScheduleActivityTaskDecisionAttributes& WithStartToCloseTimeout(const Aws::String& value) { SetStartToCloseTimeout(value); return *this;} /** *

If set, specifies the maximum duration a worker may take to process this * activity task. This overrides the default start-to-close timeout specified when * registering the activity type using RegisterActivityType.

The * duration is specified in seconds, an integer greater than or equal to * 0. You can use NONE to specify unlimited duration.

*

A start-to-close timeout for this activity task must be specified * either as a default for the activity type or through this field. If neither this * field is set nor a default start-to-close timeout was specified at registration * time then a fault is returned.

*/ inline ScheduleActivityTaskDecisionAttributes& WithStartToCloseTimeout(Aws::String&& value) { SetStartToCloseTimeout(std::move(value)); return *this;} /** *

If set, specifies the maximum duration a worker may take to process this * activity task. This overrides the default start-to-close timeout specified when * registering the activity type using RegisterActivityType.

The * duration is specified in seconds, an integer greater than or equal to * 0. You can use NONE to specify unlimited duration.

*

A start-to-close timeout for this activity task must be specified * either as a default for the activity type or through this field. If neither this * field is set nor a default start-to-close timeout was specified at registration * time then a fault is returned.

*/ inline ScheduleActivityTaskDecisionAttributes& WithStartToCloseTimeout(const char* value) { SetStartToCloseTimeout(value); return *this;} /** *

If set, specifies the maximum time before which a worker processing a task of * this type must report progress by calling RecordActivityTaskHeartbeat. If * the timeout is exceeded, the activity task is automatically timed out. If the * worker subsequently attempts to record a heartbeat or returns a result, it is * ignored. This overrides the default heartbeat timeout specified when registering * the activity type using RegisterActivityType.

The duration is * specified in seconds, an integer greater than or equal to 0. You * can use NONE to specify unlimited duration.

*/ inline const Aws::String& GetHeartbeatTimeout() const{ return m_heartbeatTimeout; } /** *

If set, specifies the maximum time before which a worker processing a task of * this type must report progress by calling RecordActivityTaskHeartbeat. If * the timeout is exceeded, the activity task is automatically timed out. If the * worker subsequently attempts to record a heartbeat or returns a result, it is * ignored. This overrides the default heartbeat timeout specified when registering * the activity type using RegisterActivityType.

The duration is * specified in seconds, an integer greater than or equal to 0. You * can use NONE to specify unlimited duration.

*/ inline bool HeartbeatTimeoutHasBeenSet() const { return m_heartbeatTimeoutHasBeenSet; } /** *

If set, specifies the maximum time before which a worker processing a task of * this type must report progress by calling RecordActivityTaskHeartbeat. If * the timeout is exceeded, the activity task is automatically timed out. If the * worker subsequently attempts to record a heartbeat or returns a result, it is * ignored. This overrides the default heartbeat timeout specified when registering * the activity type using RegisterActivityType.

The duration is * specified in seconds, an integer greater than or equal to 0. You * can use NONE to specify unlimited duration.

*/ inline void SetHeartbeatTimeout(const Aws::String& value) { m_heartbeatTimeoutHasBeenSet = true; m_heartbeatTimeout = value; } /** *

If set, specifies the maximum time before which a worker processing a task of * this type must report progress by calling RecordActivityTaskHeartbeat. If * the timeout is exceeded, the activity task is automatically timed out. If the * worker subsequently attempts to record a heartbeat or returns a result, it is * ignored. This overrides the default heartbeat timeout specified when registering * the activity type using RegisterActivityType.

The duration is * specified in seconds, an integer greater than or equal to 0. You * can use NONE to specify unlimited duration.

*/ inline void SetHeartbeatTimeout(Aws::String&& value) { m_heartbeatTimeoutHasBeenSet = true; m_heartbeatTimeout = std::move(value); } /** *

If set, specifies the maximum time before which a worker processing a task of * this type must report progress by calling RecordActivityTaskHeartbeat. If * the timeout is exceeded, the activity task is automatically timed out. If the * worker subsequently attempts to record a heartbeat or returns a result, it is * ignored. This overrides the default heartbeat timeout specified when registering * the activity type using RegisterActivityType.

The duration is * specified in seconds, an integer greater than or equal to 0. You * can use NONE to specify unlimited duration.

*/ inline void SetHeartbeatTimeout(const char* value) { m_heartbeatTimeoutHasBeenSet = true; m_heartbeatTimeout.assign(value); } /** *

If set, specifies the maximum time before which a worker processing a task of * this type must report progress by calling RecordActivityTaskHeartbeat. If * the timeout is exceeded, the activity task is automatically timed out. If the * worker subsequently attempts to record a heartbeat or returns a result, it is * ignored. This overrides the default heartbeat timeout specified when registering * the activity type using RegisterActivityType.

The duration is * specified in seconds, an integer greater than or equal to 0. You * can use NONE to specify unlimited duration.

*/ inline ScheduleActivityTaskDecisionAttributes& WithHeartbeatTimeout(const Aws::String& value) { SetHeartbeatTimeout(value); return *this;} /** *

If set, specifies the maximum time before which a worker processing a task of * this type must report progress by calling RecordActivityTaskHeartbeat. If * the timeout is exceeded, the activity task is automatically timed out. If the * worker subsequently attempts to record a heartbeat or returns a result, it is * ignored. This overrides the default heartbeat timeout specified when registering * the activity type using RegisterActivityType.

The duration is * specified in seconds, an integer greater than or equal to 0. You * can use NONE to specify unlimited duration.

*/ inline ScheduleActivityTaskDecisionAttributes& WithHeartbeatTimeout(Aws::String&& value) { SetHeartbeatTimeout(std::move(value)); return *this;} /** *

If set, specifies the maximum time before which a worker processing a task of * this type must report progress by calling RecordActivityTaskHeartbeat. If * the timeout is exceeded, the activity task is automatically timed out. If the * worker subsequently attempts to record a heartbeat or returns a result, it is * ignored. This overrides the default heartbeat timeout specified when registering * the activity type using RegisterActivityType.

The duration is * specified in seconds, an integer greater than or equal to 0. You * can use NONE to specify unlimited duration.

*/ inline ScheduleActivityTaskDecisionAttributes& WithHeartbeatTimeout(const char* value) { SetHeartbeatTimeout(value); return *this;} private: ActivityType m_activityType; bool m_activityTypeHasBeenSet = false; Aws::String m_activityId; bool m_activityIdHasBeenSet = false; Aws::String m_control; bool m_controlHasBeenSet = false; Aws::String m_input; bool m_inputHasBeenSet = false; Aws::String m_scheduleToCloseTimeout; bool m_scheduleToCloseTimeoutHasBeenSet = false; TaskList m_taskList; bool m_taskListHasBeenSet = false; Aws::String m_taskPriority; bool m_taskPriorityHasBeenSet = false; Aws::String m_scheduleToStartTimeout; bool m_scheduleToStartTimeoutHasBeenSet = false; Aws::String m_startToCloseTimeout; bool m_startToCloseTimeoutHasBeenSet = false; Aws::String m_heartbeatTimeout; bool m_heartbeatTimeoutHasBeenSet = false; }; } // namespace Model } // namespace SWF } // namespace Aws