All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.simpleworkflow.model.StartChildWorkflowExecutionDecisionAttributes Maven / Gradle / Ivy

Go to download

The AWS Java SDK for Amazon SWF module holds the client classes that are used for communicating with Amazon Simple Workflow Service

There is a newer version: 1.9.13
Show newest version
/*
 * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights
 * Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License").
 * You may not use this file except in compliance with the License.
 * A copy of the License is located at
 *
 *  http://aws.amazon.com/apache2.0
 *
 * or in the "license" file accompanying this file. This file is distributed
 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
 * express or implied. See the License for the specific language governing
 * permissions and limitations under the License.
 */

package com.amazonaws.services.simpleworkflow.model;

import java.io.Serializable;

/**
 * 

* Provides details of the StartChildWorkflowExecution 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. *
      *
    • tagList.member.N: The key is "swf:tagList.N" where N is the * tag number from 0 to 4, inclusive.
    • *
    • taskList: String constraint. The key is * swf:taskList.name.
    • *
    • workflowType.name: String constraint. The key is * swf:workflowType.name.
    • *
    • workflowType.version: String constraint. The key is * swf:workflowType.version.
    • *
    *
  • *
*

* If the caller does not 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 will be set to * OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows. *

*/ public class StartChildWorkflowExecutionDecisionAttributes implements Serializable, Cloneable { /** *

* Required. The type of the workflow execution to be started. *

*/ private WorkflowType workflowType; /** *

* Required. The workflowId of the workflow execution. *

*

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

*/ private String workflowId; /** *

* Optional. Data attached to the event that can be used by the * decider in subsequent workflow tasks. This data is not sent to the child * workflow execution. *

*/ private String control; /** *

* The input to be provided to the workflow execution. *

*/ private String input; /** *

* The total duration for this workflow execution. This overrides the * defaultExecutionStartToCloseTimeout specified when registering the * workflow type. *

*

* The duration is specified in seconds; an integer greater than or equal to * 0. The value "NONE" can be used to specify unlimited duration. *

* An execution start-to-close timeout for this workflow execution * must be specified either as a default for the workflow type or through * this parameter. If neither this parameter is set nor a default execution * start-to-close timeout was specified at registration time then a fault * will be returned. */ private String executionStartToCloseTimeout; /** *

* The name of the task list to be used for decision tasks of the child * workflow execution. *

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

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

*/ private TaskList taskList; /** *

* Optional. A task priority that, if set, specifies the priority for * a decision task of this workflow execution. This overrides the * defaultTaskPriority specified when registering the workflow type. 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 Simple Workflow Developer * Guide. *

*/ private String taskPriority; /** *

* Specifies the maximum duration of decision tasks for this workflow * execution. This parameter overrides the * defaultTaskStartToCloseTimout specified when registering the * workflow type using RegisterWorkflowType. *

*

* The duration is specified in seconds; an integer greater than or equal to * 0. The value "NONE" can be used to specify unlimited duration. *

* A task start-to-close timeout for this workflow execution must be * specified either as a default for the workflow type or through this * parameter. If neither this parameter is set nor a default task * start-to-close timeout was specified at registration time then a fault * will be returned. */ private String taskStartToCloseTimeout; /** *

* Optional. If set, specifies the policy to use for the child * workflow executions if the workflow execution being started is terminated * by calling the TerminateWorkflowExecution action explicitly or due * to an expired timeout. This policy overrides the default child policy * specified when registering the workflow type using * RegisterWorkflowType. *

*

* The supported child policies are: *

*
    *
  • TERMINATE: the child executions will be terminated.
  • *
  • REQUEST_CANCEL: a request to cancel will be attempted for each * child execution by recording a * WorkflowExecutionCancelRequested event in its history. It is * up to the decider to take appropriate actions when it receives an * execution history with this event.
  • *
  • ABANDON: no action will be taken. The child executions will * continue to run.
  • *
* A child policy for this workflow execution must be specified either * as a default for the workflow type or through this parameter. If neither * this parameter is set nor a default child policy was specified at * registration time then a fault will be returned. */ private String childPolicy; /** *

* The list of tags to associate with the child workflow execution. A * maximum of 5 tags can be specified. You can list workflow executions with * a specific tag by calling ListOpenWorkflowExecutions or * ListClosedWorkflowExecutions and specifying a TagFilter. *

*/ private java.util.List tagList; /** *

* The ARN of an IAM role that authorizes Amazon SWF to invoke AWS Lambda * functions. *

* In order for this workflow execution to invoke AWS Lambda * functions, an appropriate IAM role must be specified either as a default * for the workflow type or through this field. */ private String lambdaRole; /** *

* Required. The type of the workflow execution to be started. *

* * @param workflowType * Required. */ public void setWorkflowType(WorkflowType workflowType) { this.workflowType = workflowType; } /** *

* Required. The type of the workflow execution to be started. *

* * @return Required. */ public WorkflowType getWorkflowType() { return this.workflowType; } /** *

* Required. The type of the workflow execution to be started. *

* * @param workflowType * Required. * @return Returns a reference to this object so that method calls can be * chained together. */ public StartChildWorkflowExecutionDecisionAttributes withWorkflowType( WorkflowType workflowType) { setWorkflowType(workflowType); return this; } /** *

* Required. The workflowId of the workflow execution. *

*

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

* * @param workflowId * Required. The workflowId of the workflow * execution.

*

* The specified string must not start or end with whitespace. It * must not contain a : (colon), / (slash), * | */ public void setWorkflowId(String workflowId) { this.workflowId = workflowId; } /** *

* Required. The workflowId of the workflow execution. *

*

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

* * @return Required. The workflowId of the workflow * execution.

*

* The specified string must not start or end with whitespace. It * must not contain a : (colon), / * (slash), | */ public String getWorkflowId() { return this.workflowId; } /** *

* Required. The workflowId of the workflow execution. *

*

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

* * @param workflowId * Required. The workflowId of the workflow * execution.

*

* The specified string must not start or end with whitespace. It * must not contain a : (colon), / (slash), * | * @return Returns a reference to this object so that method calls can be * chained together. */ public StartChildWorkflowExecutionDecisionAttributes withWorkflowId( String workflowId) { setWorkflowId(workflowId); return this; } /** *

* Optional. Data attached to the event that can be used by the * decider in subsequent workflow tasks. This data is not sent to the child * workflow execution. *

* * @param control * Optional. */ public void setControl(String control) { this.control = control; } /** *

* Optional. Data attached to the event that can be used by the * decider in subsequent workflow tasks. This data is not sent to the child * workflow execution. *

* * @return Optional. */ public String getControl() { return this.control; } /** *

* Optional. Data attached to the event that can be used by the * decider in subsequent workflow tasks. This data is not sent to the child * workflow execution. *

* * @param control * Optional. * @return Returns a reference to this object so that method calls can be * chained together. */ public StartChildWorkflowExecutionDecisionAttributes withControl( String control) { setControl(control); return this; } /** *

* The input to be provided to the workflow execution. *

* * @param input * The input to be provided to the workflow execution. */ public void setInput(String input) { this.input = input; } /** *

* The input to be provided to the workflow execution. *

* * @return The input to be provided to the workflow execution. */ public String getInput() { return this.input; } /** *

* The input to be provided to the workflow execution. *

* * @param input * The input to be provided to the workflow execution. * @return Returns a reference to this object so that method calls can be * chained together. */ public StartChildWorkflowExecutionDecisionAttributes withInput(String input) { setInput(input); return this; } /** *

* The total duration for this workflow execution. This overrides the * defaultExecutionStartToCloseTimeout specified when registering the * workflow type. *

*

* The duration is specified in seconds; an integer greater than or equal to * 0. The value "NONE" can be used to specify unlimited duration. *

* An execution start-to-close timeout for this workflow execution * must be specified either as a default for the workflow type or through * this parameter. If neither this parameter is set nor a default execution * start-to-close timeout was specified at registration time then a fault * will be returned. * * @param executionStartToCloseTimeout * The total duration for this workflow execution. This overrides the * defaultExecutionStartToCloseTimeout specified when registering the * workflow type.

*

* The duration is specified in seconds; an integer greater than or * equal to 0. The value "NONE" can be used to specify unlimited * duration. *

* An execution start-to-close timeout for this workflow * execution must be specified either as a default for the workflow * type or through this parameter. If neither this parameter is set * nor a default execution start-to-close timeout was specified at * registration time then a fault will be returned. */ public void setExecutionStartToCloseTimeout( String executionStartToCloseTimeout) { this.executionStartToCloseTimeout = executionStartToCloseTimeout; } /** *

* The total duration for this workflow execution. This overrides the * defaultExecutionStartToCloseTimeout specified when registering the * workflow type. *

*

* The duration is specified in seconds; an integer greater than or equal to * 0. The value "NONE" can be used to specify unlimited duration. *

* An execution start-to-close timeout for this workflow execution * must be specified either as a default for the workflow type or through * this parameter. If neither this parameter is set nor a default execution * start-to-close timeout was specified at registration time then a fault * will be returned. * * @return The total duration for this workflow execution. This overrides * the defaultExecutionStartToCloseTimeout specified when * registering the workflow type.

*

* The duration is specified in seconds; an integer greater than or * equal to 0. The value "NONE" can be used to specify unlimited * duration. *

* An execution start-to-close timeout for this workflow * execution must be specified either as a default for the workflow * type or through this parameter. If neither this parameter is set * nor a default execution start-to-close timeout was specified at * registration time then a fault will be returned. */ public String getExecutionStartToCloseTimeout() { return this.executionStartToCloseTimeout; } /** *

* The total duration for this workflow execution. This overrides the * defaultExecutionStartToCloseTimeout specified when registering the * workflow type. *

*

* The duration is specified in seconds; an integer greater than or equal to * 0. The value "NONE" can be used to specify unlimited duration. *

* An execution start-to-close timeout for this workflow execution * must be specified either as a default for the workflow type or through * this parameter. If neither this parameter is set nor a default execution * start-to-close timeout was specified at registration time then a fault * will be returned. * * @param executionStartToCloseTimeout * The total duration for this workflow execution. This overrides the * defaultExecutionStartToCloseTimeout specified when registering the * workflow type.

*

* The duration is specified in seconds; an integer greater than or * equal to 0. The value "NONE" can be used to specify unlimited * duration. *

* An execution start-to-close timeout for this workflow * execution must be specified either as a default for the workflow * type or through this parameter. If neither this parameter is set * nor a default execution start-to-close timeout was specified at * registration time then a fault will be returned. * @return Returns a reference to this object so that method calls can be * chained together. */ public StartChildWorkflowExecutionDecisionAttributes withExecutionStartToCloseTimeout( String executionStartToCloseTimeout) { setExecutionStartToCloseTimeout(executionStartToCloseTimeout); return this; } /** *

* The name of the task list to be used for decision tasks of the child * workflow execution. *

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

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

* * @param taskList * The name of the task list to be used for decision tasks of the * child workflow execution.

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

* The specified string must not start or end with whitespace. It * must not contain a : (colon), / (slash), * | (vertical bar), or any control characters * (\u0000-\u001f | \u007f - \u009f). Also, it must not contain the * literal string quotarnquot. */ public void setTaskList(TaskList taskList) { this.taskList = taskList; } /** *

* The name of the task list to be used for decision tasks of the child * workflow execution. *

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

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

* * @return The name of the task list to be used for decision tasks of the * child workflow execution.

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

* The specified string must not start or end with whitespace. It * must not contain a : (colon), / * (slash), | (vertical bar), or any control characters * (\u0000-\u001f | \u007f - \u009f). Also, it must not contain the * literal string quotarnquot. */ public TaskList getTaskList() { return this.taskList; } /** *

* The name of the task list to be used for decision tasks of the child * workflow execution. *

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

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

* * @param taskList * The name of the task list to be used for decision tasks of the * child workflow execution.

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

* The specified string must not start or end with whitespace. It * must not contain a : (colon), / (slash), * | (vertical bar), or any control characters * (\u0000-\u001f | \u007f - \u009f). Also, it must not contain the * literal string quotarnquot. * @return Returns a reference to this object so that method calls can be * chained together. */ public StartChildWorkflowExecutionDecisionAttributes withTaskList( TaskList taskList) { setTaskList(taskList); return this; } /** *

* Optional. A task priority that, if set, specifies the priority for * a decision task of this workflow execution. This overrides the * defaultTaskPriority specified when registering the workflow type. 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 Simple Workflow Developer * Guide. *

* * @param taskPriority * Optional. A task priority that, if set, specifies the priority * for a decision task of this workflow execution. This overrides the * defaultTaskPriority specified when registering the workflow type. * 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 Simple Workflow * Developer Guide */ public void setTaskPriority(String taskPriority) { this.taskPriority = taskPriority; } /** *

* Optional. A task priority that, if set, specifies the priority for * a decision task of this workflow execution. This overrides the * defaultTaskPriority specified when registering the workflow type. 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 Simple Workflow Developer * Guide. *

* * @return Optional.
A task priority that, if set, specifies the * priority for a decision task of this workflow execution. This * overrides the defaultTaskPriority specified when registering the * workflow type. 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 Simple Workflow * Developer Guide */ public String getTaskPriority() { return this.taskPriority; } /** *

* Optional. A task priority that, if set, specifies the priority for * a decision task of this workflow execution. This overrides the * defaultTaskPriority specified when registering the workflow type. 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 Simple Workflow Developer * Guide. *

* * @param taskPriority * Optional.
A task priority that, if set, specifies the priority * for a decision task of this workflow execution. This overrides the * defaultTaskPriority specified when registering the workflow type. * 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 Simple Workflow * Developer Guide * @return Returns a reference to this object so that method calls can be * chained together. */ public StartChildWorkflowExecutionDecisionAttributes withTaskPriority( String taskPriority) { setTaskPriority(taskPriority); return this; } /** *

* Specifies the maximum duration of decision tasks for this workflow * execution. This parameter overrides the * defaultTaskStartToCloseTimout specified when registering the * workflow type using RegisterWorkflowType. *

*

* The duration is specified in seconds; an integer greater than or equal to * 0. The value "NONE" can be used to specify unlimited duration. *

* A task start-to-close timeout for this workflow execution must be * specified either as a default for the workflow type or through this * parameter. If neither this parameter is set nor a default task * start-to-close timeout was specified at registration time then a fault * will be returned. * * @param taskStartToCloseTimeout * Specifies the maximum duration of decision tasks for this workflow * execution. This parameter overrides the * defaultTaskStartToCloseTimout specified when * registering the workflow type using * RegisterWorkflowType.

*

* The duration is specified in seconds; an integer greater than or * equal to 0. The value "NONE" can be used to specify unlimited * duration. *

* A task start-to-close timeout for this workflow execution * must be specified either as a default for the workflow type or * through this parameter. If neither this parameter is set nor a * default task start-to-close timeout was specified at registration * time then a fault will be returned. */ public void setTaskStartToCloseTimeout(String taskStartToCloseTimeout) { this.taskStartToCloseTimeout = taskStartToCloseTimeout; } /** *

* Specifies the maximum duration of decision tasks for this workflow * execution. This parameter overrides the * defaultTaskStartToCloseTimout specified when registering the * workflow type using RegisterWorkflowType. *

*

* The duration is specified in seconds; an integer greater than or equal to * 0. The value "NONE" can be used to specify unlimited duration. *

* A task start-to-close timeout for this workflow execution must be * specified either as a default for the workflow type or through this * parameter. If neither this parameter is set nor a default task * start-to-close timeout was specified at registration time then a fault * will be returned. * * @return Specifies the maximum duration of decision tasks for this * workflow execution. This parameter overrides the * defaultTaskStartToCloseTimout specified when * registering the workflow type using * RegisterWorkflowType.

*

* The duration is specified in seconds; an integer greater than or * equal to 0. The value "NONE" can be used to specify unlimited * duration. *

* A task start-to-close timeout for this workflow execution * must be specified either as a default for the workflow type or * through this parameter. If neither this parameter is set nor a * default task start-to-close timeout was specified at registration * time then a fault will be returned. */ public String getTaskStartToCloseTimeout() { return this.taskStartToCloseTimeout; } /** *

* Specifies the maximum duration of decision tasks for this workflow * execution. This parameter overrides the * defaultTaskStartToCloseTimout specified when registering the * workflow type using RegisterWorkflowType. *

*

* The duration is specified in seconds; an integer greater than or equal to * 0. The value "NONE" can be used to specify unlimited duration. *

* A task start-to-close timeout for this workflow execution must be * specified either as a default for the workflow type or through this * parameter. If neither this parameter is set nor a default task * start-to-close timeout was specified at registration time then a fault * will be returned. * * @param taskStartToCloseTimeout * Specifies the maximum duration of decision tasks for this workflow * execution. This parameter overrides the * defaultTaskStartToCloseTimout specified when * registering the workflow type using * RegisterWorkflowType.

*

* The duration is specified in seconds; an integer greater than or * equal to 0. The value "NONE" can be used to specify unlimited * duration. *

* A task start-to-close timeout for this workflow execution * must be specified either as a default for the workflow type or * through this parameter. If neither this parameter is set nor a * default task start-to-close timeout was specified at registration * time then a fault will be returned. * @return Returns a reference to this object so that method calls can be * chained together. */ public StartChildWorkflowExecutionDecisionAttributes withTaskStartToCloseTimeout( String taskStartToCloseTimeout) { setTaskStartToCloseTimeout(taskStartToCloseTimeout); return this; } /** *

* Optional. If set, specifies the policy to use for the child * workflow executions if the workflow execution being started is terminated * by calling the TerminateWorkflowExecution action explicitly or due * to an expired timeout. This policy overrides the default child policy * specified when registering the workflow type using * RegisterWorkflowType. *

*

* The supported child policies are: *

*
    *
  • TERMINATE: the child executions will be terminated.
  • *
  • REQUEST_CANCEL: a request to cancel will be attempted for each * child execution by recording a * WorkflowExecutionCancelRequested event in its history. It is * up to the decider to take appropriate actions when it receives an * execution history with this event.
  • *
  • ABANDON: no action will be taken. The child executions will * continue to run.
  • *
* A child policy for this workflow execution must be specified either * as a default for the workflow type or through this parameter. If neither * this parameter is set nor a default child policy was specified at * registration time then a fault will be returned. * * @param childPolicy * Optional.
If set, specifies the policy to use for the child * workflow executions if the workflow execution being started is * terminated by calling the TerminateWorkflowExecution action * explicitly or due to an expired timeout. This policy overrides the * default child policy specified when registering the workflow type * using RegisterWorkflowType.

*

* The supported child policies are: *

*
    *
  • TERMINATE: the child executions will be terminated.
  • *
  • REQUEST_CANCEL: a request to cancel will be attempted * for each child execution by recording a * WorkflowExecutionCancelRequested event in its * history. It is up to the decider to take appropriate actions when * it receives an execution history with this event.
  • *
  • ABANDON: no action will be taken. The child executions * will continue to run.
  • *
* @see ChildPolicy */ public void setChildPolicy(String childPolicy) { this.childPolicy = childPolicy; } /** *

* Optional. If set, specifies the policy to use for the child * workflow executions if the workflow execution being started is terminated * by calling the TerminateWorkflowExecution action explicitly or due * to an expired timeout. This policy overrides the default child policy * specified when registering the workflow type using * RegisterWorkflowType. *

*

* The supported child policies are: *

*
    *
  • TERMINATE: the child executions will be terminated.
  • *
  • REQUEST_CANCEL: a request to cancel will be attempted for each * child execution by recording a * WorkflowExecutionCancelRequested event in its history. It is * up to the decider to take appropriate actions when it receives an * execution history with this event.
  • *
  • ABANDON: no action will be taken. The child executions will * continue to run.
  • *
* A child policy for this workflow execution must be specified either * as a default for the workflow type or through this parameter. If neither * this parameter is set nor a default child policy was specified at * registration time then a fault will be returned. * * @return Optional. If set, specifies the policy to use for the child * workflow executions if the workflow execution being started is * terminated by calling the TerminateWorkflowExecution * action explicitly or due to an expired timeout. This policy * overrides the default child policy specified when registering the * workflow type using RegisterWorkflowType.

*

* The supported child policies are: *

*
    *
  • TERMINATE: the child executions will be terminated.
  • *
  • REQUEST_CANCEL: a request to cancel will be attempted * for each child execution by recording a * WorkflowExecutionCancelRequested event in its * history. It is up to the decider to take appropriate actions when * it receives an execution history with this event.
  • *
  • ABANDON: no action will be taken. The child executions * will continue to run.
  • *
* @see ChildPolicy */ public String getChildPolicy() { return this.childPolicy; } /** *

* Optional. If set, specifies the policy to use for the child * workflow executions if the workflow execution being started is terminated * by calling the TerminateWorkflowExecution action explicitly or due * to an expired timeout. This policy overrides the default child policy * specified when registering the workflow type using * RegisterWorkflowType. *

*

* The supported child policies are: *

*
    *
  • TERMINATE: the child executions will be terminated.
  • *
  • REQUEST_CANCEL: a request to cancel will be attempted for each * child execution by recording a * WorkflowExecutionCancelRequested event in its history. It is * up to the decider to take appropriate actions when it receives an * execution history with this event.
  • *
  • ABANDON: no action will be taken. The child executions will * continue to run.
  • *
* A child policy for this workflow execution must be specified either * as a default for the workflow type or through this parameter. If neither * this parameter is set nor a default child policy was specified at * registration time then a fault will be returned. * * @param childPolicy * Optional. If set, specifies the policy to use for the child * workflow executions if the workflow execution being started is * terminated by calling the TerminateWorkflowExecution action * explicitly or due to an expired timeout. This policy overrides the * default child policy specified when registering the workflow type * using RegisterWorkflowType.

*

* The supported child policies are: *

*
    *
  • TERMINATE: the child executions will be terminated.
  • *
  • REQUEST_CANCEL: a request to cancel will be attempted * for each child execution by recording a * WorkflowExecutionCancelRequested event in its * history. It is up to the decider to take appropriate actions when * it receives an execution history with this event.
  • *
  • ABANDON: no action will be taken. The child executions * will continue to run.
  • *
* @return Returns a reference to this object so that method calls can be * chained together. * @see ChildPolicy */ public StartChildWorkflowExecutionDecisionAttributes withChildPolicy( String childPolicy) { setChildPolicy(childPolicy); return this; } /** *

* Optional. If set, specifies the policy to use for the child * workflow executions if the workflow execution being started is terminated * by calling the TerminateWorkflowExecution action explicitly or due * to an expired timeout. This policy overrides the default child policy * specified when registering the workflow type using * RegisterWorkflowType. *

*

* The supported child policies are: *

*
    *
  • TERMINATE: the child executions will be terminated.
  • *
  • REQUEST_CANCEL: a request to cancel will be attempted for each * child execution by recording a * WorkflowExecutionCancelRequested event in its history. It is * up to the decider to take appropriate actions when it receives an * execution history with this event.
  • *
  • ABANDON: no action will be taken. The child executions will * continue to run.
  • *
* A child policy for this workflow execution must be specified either * as a default for the workflow type or through this parameter. If neither * this parameter is set nor a default child policy was specified at * registration time then a fault will be returned. * * @param childPolicy * Optional. If set, specifies the policy to use for the child * workflow executions if the workflow execution being started is * terminated by calling the TerminateWorkflowExecution action * explicitly or due to an expired timeout. This policy overrides the * default child policy specified when registering the workflow type * using RegisterWorkflowType.

*

* The supported child policies are: *

*
    *
  • TERMINATE: the child executions will be terminated.
  • *
  • REQUEST_CANCEL: a request to cancel will be attempted * for each child execution by recording a * WorkflowExecutionCancelRequested event in its * history. It is up to the decider to take appropriate actions when * it receives an execution history with this event.
  • *
  • ABANDON: no action will be taken. The child executions * will continue to run.
  • *
* @see ChildPolicy */ public void setChildPolicy(ChildPolicy childPolicy) { this.childPolicy = childPolicy.toString(); } /** *

* Optional. If set, specifies the policy to use for the child * workflow executions if the workflow execution being started is terminated * by calling the TerminateWorkflowExecution action explicitly or due * to an expired timeout. This policy overrides the default child policy * specified when registering the workflow type using * RegisterWorkflowType. *

*

* The supported child policies are: *

*
    *
  • TERMINATE: the child executions will be terminated.
  • *
  • REQUEST_CANCEL: a request to cancel will be attempted for each * child execution by recording a * WorkflowExecutionCancelRequested event in its history. It is * up to the decider to take appropriate actions when it receives an * execution history with this event.
  • *
  • ABANDON: no action will be taken. The child executions will * continue to run.
  • *
* A child policy for this workflow execution must be specified either * as a default for the workflow type or through this parameter. If neither * this parameter is set nor a default child policy was specified at * registration time then a fault will be returned. * * @param childPolicy * Optional. If set, specifies the policy to use for the child * workflow executions if the workflow execution being started is * terminated by calling the TerminateWorkflowExecution action * explicitly or due to an expired timeout. This policy overrides the * default child policy specified when registering the workflow type * using RegisterWorkflowType.

*

* The supported child policies are: *

*
    *
  • TERMINATE: the child executions will be terminated.
  • *
  • REQUEST_CANCEL: a request to cancel will be attempted * for each child execution by recording a * WorkflowExecutionCancelRequested event in its * history. It is up to the decider to take appropriate actions when * it receives an execution history with this event.
  • *
  • ABANDON: no action will be taken. The child executions * will continue to run.
  • *
* @return Returns a reference to this object so that method calls can be * chained together. * @see ChildPolicy */ public StartChildWorkflowExecutionDecisionAttributes withChildPolicy( ChildPolicy childPolicy) { setChildPolicy(childPolicy); return this; } /** *

* The list of tags to associate with the child workflow execution. A * maximum of 5 tags can be specified. You can list workflow executions with * a specific tag by calling ListOpenWorkflowExecutions or * ListClosedWorkflowExecutions and specifying a TagFilter. *

* * @return The list of tags to associate with the child workflow execution. * A maximum of 5 tags can be specified. You can list workflow * executions with a specific tag by calling * ListOpenWorkflowExecutions or * ListClosedWorkflowExecutions and specifying a * TagFilter. */ public java.util.List getTagList() { return tagList; } /** *

* The list of tags to associate with the child workflow execution. A * maximum of 5 tags can be specified. You can list workflow executions with * a specific tag by calling ListOpenWorkflowExecutions or * ListClosedWorkflowExecutions and specifying a TagFilter. *

* * @param tagList * The list of tags to associate with the child workflow execution. A * maximum of 5 tags can be specified. You can list workflow * executions with a specific tag by calling * ListOpenWorkflowExecutions or * ListClosedWorkflowExecutions and specifying a * TagFilter. */ public void setTagList(java.util.Collection tagList) { if (tagList == null) { this.tagList = null; return; } this.tagList = new java.util.ArrayList(tagList); } /** *

* The list of tags to associate with the child workflow execution. A * maximum of 5 tags can be specified. You can list workflow executions with * a specific tag by calling ListOpenWorkflowExecutions or * ListClosedWorkflowExecutions and specifying a TagFilter. *

*

* NOTE: This method appends the values to the existing list (if * any). Use {@link #setTagList(java.util.Collection)} or * {@link #withTagList(java.util.Collection)} if you want to override the * existing values. *

* * @param tagList * The list of tags to associate with the child workflow execution. A * maximum of 5 tags can be specified. You can list workflow * executions with a specific tag by calling * ListOpenWorkflowExecutions or * ListClosedWorkflowExecutions and specifying a * TagFilter. * @return Returns a reference to this object so that method calls can be * chained together. */ public StartChildWorkflowExecutionDecisionAttributes withTagList( String... tagList) { if (this.tagList == null) { setTagList(new java.util.ArrayList(tagList.length)); } for (String ele : tagList) { this.tagList.add(ele); } return this; } /** *

* The list of tags to associate with the child workflow execution. A * maximum of 5 tags can be specified. You can list workflow executions with * a specific tag by calling ListOpenWorkflowExecutions or * ListClosedWorkflowExecutions and specifying a TagFilter. *

* * @param tagList * The list of tags to associate with the child workflow execution. A * maximum of 5 tags can be specified. You can list workflow * executions with a specific tag by calling * ListOpenWorkflowExecutions or * ListClosedWorkflowExecutions and specifying a * TagFilter. * @return Returns a reference to this object so that method calls can be * chained together. */ public StartChildWorkflowExecutionDecisionAttributes withTagList( java.util.Collection tagList) { setTagList(tagList); return this; } /** *

* The ARN of an IAM role that authorizes Amazon SWF to invoke AWS Lambda * functions. *

* In order for this workflow execution to invoke AWS Lambda * functions, an appropriate IAM role must be specified either as a default * for the workflow type or through this field. * * @param lambdaRole * The ARN of an IAM role that authorizes Amazon SWF to invoke AWS * Lambda functions.

In order for this workflow execution * to invoke AWS Lambda functions, an appropriate IAM role must be * specified either as a default for the workflow type or through * this field. */ public void setLambdaRole(String lambdaRole) { this.lambdaRole = lambdaRole; } /** *

* The ARN of an IAM role that authorizes Amazon SWF to invoke AWS Lambda * functions. *

* In order for this workflow execution to invoke AWS Lambda * functions, an appropriate IAM role must be specified either as a default * for the workflow type or through this field. * * @return The ARN of an IAM role that authorizes Amazon SWF to invoke AWS * Lambda functions.

In order for this workflow execution * to invoke AWS Lambda functions, an appropriate IAM role must be * specified either as a default for the workflow type or through * this field. */ public String getLambdaRole() { return this.lambdaRole; } /** *

* The ARN of an IAM role that authorizes Amazon SWF to invoke AWS Lambda * functions. *

* In order for this workflow execution to invoke AWS Lambda * functions, an appropriate IAM role must be specified either as a default * for the workflow type or through this field. * * @param lambdaRole * The ARN of an IAM role that authorizes Amazon SWF to invoke AWS * Lambda functions.

In order for this workflow execution * to invoke AWS Lambda functions, an appropriate IAM role must be * specified either as a default for the workflow type or through * this field. * @return Returns a reference to this object so that method calls can be * chained together. */ public StartChildWorkflowExecutionDecisionAttributes withLambdaRole( String lambdaRole) { setLambdaRole(lambdaRole); return this; } /** * Returns a string representation of this object; useful for testing and * debugging. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getWorkflowType() != null) sb.append("WorkflowType: " + getWorkflowType() + ","); if (getWorkflowId() != null) sb.append("WorkflowId: " + getWorkflowId() + ","); if (getControl() != null) sb.append("Control: " + getControl() + ","); if (getInput() != null) sb.append("Input: " + getInput() + ","); if (getExecutionStartToCloseTimeout() != null) sb.append("ExecutionStartToCloseTimeout: " + getExecutionStartToCloseTimeout() + ","); if (getTaskList() != null) sb.append("TaskList: " + getTaskList() + ","); if (getTaskPriority() != null) sb.append("TaskPriority: " + getTaskPriority() + ","); if (getTaskStartToCloseTimeout() != null) sb.append("TaskStartToCloseTimeout: " + getTaskStartToCloseTimeout() + ","); if (getChildPolicy() != null) sb.append("ChildPolicy: " + getChildPolicy() + ","); if (getTagList() != null) sb.append("TagList: " + getTagList() + ","); if (getLambdaRole() != null) sb.append("LambdaRole: " + getLambdaRole()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof StartChildWorkflowExecutionDecisionAttributes == false) return false; StartChildWorkflowExecutionDecisionAttributes other = (StartChildWorkflowExecutionDecisionAttributes) obj; if (other.getWorkflowType() == null ^ this.getWorkflowType() == null) return false; if (other.getWorkflowType() != null && other.getWorkflowType().equals(this.getWorkflowType()) == false) return false; if (other.getWorkflowId() == null ^ this.getWorkflowId() == null) return false; if (other.getWorkflowId() != null && other.getWorkflowId().equals(this.getWorkflowId()) == false) return false; if (other.getControl() == null ^ this.getControl() == null) return false; if (other.getControl() != null && other.getControl().equals(this.getControl()) == false) return false; if (other.getInput() == null ^ this.getInput() == null) return false; if (other.getInput() != null && other.getInput().equals(this.getInput()) == false) return false; if (other.getExecutionStartToCloseTimeout() == null ^ this.getExecutionStartToCloseTimeout() == null) return false; if (other.getExecutionStartToCloseTimeout() != null && other.getExecutionStartToCloseTimeout().equals( this.getExecutionStartToCloseTimeout()) == false) return false; if (other.getTaskList() == null ^ this.getTaskList() == null) return false; if (other.getTaskList() != null && other.getTaskList().equals(this.getTaskList()) == false) return false; if (other.getTaskPriority() == null ^ this.getTaskPriority() == null) return false; if (other.getTaskPriority() != null && other.getTaskPriority().equals(this.getTaskPriority()) == false) return false; if (other.getTaskStartToCloseTimeout() == null ^ this.getTaskStartToCloseTimeout() == null) return false; if (other.getTaskStartToCloseTimeout() != null && other.getTaskStartToCloseTimeout().equals( this.getTaskStartToCloseTimeout()) == false) return false; if (other.getChildPolicy() == null ^ this.getChildPolicy() == null) return false; if (other.getChildPolicy() != null && other.getChildPolicy().equals(this.getChildPolicy()) == false) return false; if (other.getTagList() == null ^ this.getTagList() == null) return false; if (other.getTagList() != null && other.getTagList().equals(this.getTagList()) == false) return false; if (other.getLambdaRole() == null ^ this.getLambdaRole() == null) return false; if (other.getLambdaRole() != null && other.getLambdaRole().equals(this.getLambdaRole()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getWorkflowType() == null) ? 0 : getWorkflowType() .hashCode()); hashCode = prime * hashCode + ((getWorkflowId() == null) ? 0 : getWorkflowId().hashCode()); hashCode = prime * hashCode + ((getControl() == null) ? 0 : getControl().hashCode()); hashCode = prime * hashCode + ((getInput() == null) ? 0 : getInput().hashCode()); hashCode = prime * hashCode + ((getExecutionStartToCloseTimeout() == null) ? 0 : getExecutionStartToCloseTimeout().hashCode()); hashCode = prime * hashCode + ((getTaskList() == null) ? 0 : getTaskList().hashCode()); hashCode = prime * hashCode + ((getTaskPriority() == null) ? 0 : getTaskPriority() .hashCode()); hashCode = prime * hashCode + ((getTaskStartToCloseTimeout() == null) ? 0 : getTaskStartToCloseTimeout().hashCode()); hashCode = prime * hashCode + ((getChildPolicy() == null) ? 0 : getChildPolicy().hashCode()); hashCode = prime * hashCode + ((getTagList() == null) ? 0 : getTagList().hashCode()); hashCode = prime * hashCode + ((getLambdaRole() == null) ? 0 : getLambdaRole().hashCode()); return hashCode; } @Override public StartChildWorkflowExecutionDecisionAttributes clone() { try { return (StartChildWorkflowExecutionDecisionAttributes) super .clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException( "Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } }