com.amazonaws.services.codedeploy.model

## Class CreateDeploymentGroupRequest

- java.lang.Object
- - com.amazonaws.AmazonWebServiceRequest
  - - com.amazonaws.services.codedeploy.model.CreateDeploymentGroupRequest

All Implemented Interfaces:
  ReadLimitInfo, Serializable, Cloneable

    public class CreateDeploymentGroupRequest
    extends AmazonWebServiceRequest
    implements Serializable, Cloneable

Represents the input of a create deployment group operation.

See Also:
  Serialized Form

### Field Summary

### Fields inherited from class com.amazonaws.AmazonWebServiceRequest

`NOOP`

### Constructor Summary

Constructors
Constructor and Description
`CreateDeploymentGroupRequest()`

### Method Summary

All Methods Instance Methods Concrete Methods
`CreateDeploymentGroupRequest` `clone()`
`boolean` `equals(Object obj)`
`AlarmConfiguration` `getAlarmConfiguration()` Information to add about Amazon CloudWatch alarms when the deployment group is created.
`String` `getApplicationName()` The name of an AWS CodeDeploy application associated with the applicable IAM user or AWS account.
`AutoRollbackConfiguration` `getAutoRollbackConfiguration()` Configuration information for an automatic rollback that is added when a deployment group is created.
`List<String>` `getAutoScalingGroups()` A list of associated Auto Scaling groups.
`String` `getDeploymentConfigName()` If specified, the deployment configuration name can be either one of the predefined configurations provided with AWS CodeDeploy or a custom deployment configuration that you create by calling the create deployment configuration operation.
`String` `getDeploymentGroupName()` The name of a new deployment group for the specified application.
`List<EC2TagFilter>` `getEc2TagFilters()` The Amazon EC2 tags on which to filter.
`List<TagFilter>` `getOnPremisesInstanceTagFilters()` The on-premises instance tags on which to filter.
`String` `getServiceRoleArn()` A service role ARN that allows AWS CodeDeploy to act on the user's behalf when interacting with AWS services.
`List<TriggerConfig>` `getTriggerConfigurations()` Information about triggers to create when the deployment group is created.
`int` `hashCode()`
`void` `setAlarmConfiguration(AlarmConfiguration alarmConfiguration)` Information to add about Amazon CloudWatch alarms when the deployment group is created.
`void` `setApplicationName(String applicationName)` The name of an AWS CodeDeploy application associated with the applicable IAM user or AWS account.
`void` `setAutoRollbackConfiguration(AutoRollbackConfiguration autoRollbackConfiguration)` Configuration information for an automatic rollback that is added when a deployment group is created.
`void` `setAutoScalingGroups(Collection<String> autoScalingGroups)` A list of associated Auto Scaling groups.
`void` `setDeploymentConfigName(String deploymentConfigName)` If specified, the deployment configuration name can be either one of the predefined configurations provided with AWS CodeDeploy or a custom deployment configuration that you create by calling the create deployment configuration operation.
`void` `setDeploymentGroupName(String deploymentGroupName)` The name of a new deployment group for the specified application.
`void` `setEc2TagFilters(Collection<EC2TagFilter> ec2TagFilters)` The Amazon EC2 tags on which to filter.
`void` `setOnPremisesInstanceTagFilters(Collection<TagFilter> onPremisesInstanceTagFilters)` The on-premises instance tags on which to filter.
`void` `setServiceRoleArn(String serviceRoleArn)` A service role ARN that allows AWS CodeDeploy to act on the user's behalf when interacting with AWS services.
`void` `setTriggerConfigurations(Collection<TriggerConfig> triggerConfigurations)` Information about triggers to create when the deployment group is created.
`String` `toString()` Returns a string representation of this object; useful for testing and debugging.
`CreateDeploymentGroupRequest` `withAlarmConfiguration(AlarmConfiguration alarmConfiguration)` Information to add about Amazon CloudWatch alarms when the deployment group is created.
`CreateDeploymentGroupRequest` `withApplicationName(String applicationName)` The name of an AWS CodeDeploy application associated with the applicable IAM user or AWS account.
`CreateDeploymentGroupRequest` `withAutoRollbackConfiguration(AutoRollbackConfiguration autoRollbackConfiguration)` Configuration information for an automatic rollback that is added when a deployment group is created.
`CreateDeploymentGroupRequest` `withAutoScalingGroups(Collection<String> autoScalingGroups)` A list of associated Auto Scaling groups.
`CreateDeploymentGroupRequest` `withAutoScalingGroups(String... autoScalingGroups)` A list of associated Auto Scaling groups.
`CreateDeploymentGroupRequest` `withDeploymentConfigName(String deploymentConfigName)` If specified, the deployment configuration name can be either one of the predefined configurations provided with AWS CodeDeploy or a custom deployment configuration that you create by calling the create deployment configuration operation.
`CreateDeploymentGroupRequest` `withDeploymentGroupName(String deploymentGroupName)` The name of a new deployment group for the specified application.
`CreateDeploymentGroupRequest` `withEc2TagFilters(Collection<EC2TagFilter> ec2TagFilters)` The Amazon EC2 tags on which to filter.
`CreateDeploymentGroupRequest` `withEc2TagFilters(EC2TagFilter... ec2TagFilters)` The Amazon EC2 tags on which to filter.
`CreateDeploymentGroupRequest` `withOnPremisesInstanceTagFilters(Collection<TagFilter> onPremisesInstanceTagFilters)` The on-premises instance tags on which to filter.
`CreateDeploymentGroupRequest` `withOnPremisesInstanceTagFilters(TagFilter... onPremisesInstanceTagFilters)` The on-premises instance tags on which to filter.
`CreateDeploymentGroupRequest` `withServiceRoleArn(String serviceRoleArn)` A service role ARN that allows AWS CodeDeploy to act on the user's behalf when interacting with AWS services.
`CreateDeploymentGroupRequest` `withTriggerConfigurations(Collection<TriggerConfig> triggerConfigurations)` Information about triggers to create when the deployment group is created.
`CreateDeploymentGroupRequest` `withTriggerConfigurations(TriggerConfig... triggerConfigurations)` Information about triggers to create when the deployment group is created.

### Methods inherited from class com.amazonaws.AmazonWebServiceRequest

`copyBaseTo, getCloneRoot, getCloneSource, getCustomQueryParameters, getCustomRequestHeaders, getGeneralProgressListener, getReadLimit, getRequestClientOptions, getRequestCredentials, getRequestCredentialsProvider, getRequestMetricCollector, getSdkClientExecutionTimeout, getSdkRequestTimeout, putCustomQueryParameter, putCustomRequestHeader, setGeneralProgressListener, setRequestCredentials, setRequestCredentialsProvider, setRequestMetricCollector, setSdkClientExecutionTimeout, setSdkRequestTimeout, withGeneralProgressListener, withRequestMetricCollector, withSdkClientExecutionTimeout, withSdkRequestTimeout`

### Methods inherited from class java.lang.Object

`finalize, getClass, notify, notifyAll, wait, wait, wait`

### Constructor Detail

#### CreateDeploymentGroupRequest

    public CreateDeploymentGroupRequest()

### Method Detail

#### setApplicationName

    public void setApplicationName(String applicationName)

The name of an AWS CodeDeploy application associated with the applicable IAM user or AWS account.

Parameters:
  `applicationName` - The name of an AWS CodeDeploy application associated with the applicable IAM user or AWS account.

#### getApplicationName

    public String getApplicationName()

The name of an AWS CodeDeploy application associated with the applicable IAM user or AWS account.

Returns:
  The name of an AWS CodeDeploy application associated with the applicable IAM user or AWS account.

#### withApplicationName

    public CreateDeploymentGroupRequest withApplicationName(String applicationName)

The name of an AWS CodeDeploy application associated with the applicable IAM user or AWS account.

Parameters:
  `applicationName` - The name of an AWS CodeDeploy application associated with the applicable IAM user or AWS account.
Returns:
  Returns a reference to this object so that method calls can be chained together.

#### setDeploymentGroupName

    public void setDeploymentGroupName(String deploymentGroupName)

The name of a new deployment group for the specified application.

Parameters:
  `deploymentGroupName` - The name of a new deployment group for the specified application.

#### getDeploymentGroupName

    public String getDeploymentGroupName()

The name of a new deployment group for the specified application.

Returns:
  The name of a new deployment group for the specified application.

#### withDeploymentGroupName

    public CreateDeploymentGroupRequest withDeploymentGroupName(String deploymentGroupName)

The name of a new deployment group for the specified application.

Parameters:
  `deploymentGroupName` - The name of a new deployment group for the specified application.
Returns:
  Returns a reference to this object so that method calls can be chained together.

#### setDeploymentConfigName

    public void setDeploymentConfigName(String deploymentConfigName)

If specified, the deployment configuration name can be either one of the predefined configurations provided with AWS CodeDeploy or a custom deployment configuration that you create by calling the create deployment configuration operation.

<note>

CodeDeployDefault.OneAtATime is the default deployment configuration. It is used if a configuration isn't specified for the deployment or the deployment group.

</note>

The predefined deployment configurations include the following:

- CodeDeployDefault.AllAtOnce attempts to deploy an application revision to as many instances as possible at once. The status of the overall deployment will be displayed as Succeeded if the application revision is deployed to one or more of the instances. The status of the overall deployment will be displayed as Failed if the application revision is not deployed to any of the instances. Using an example of nine instances, CodeDeployDefault.AllAtOnce will attempt to deploy to all nine instances at once. The overall deployment will succeed if deployment to even a single instance is successful; it will fail only if deployments to all nine instances fail.

- CodeDeployDefault.HalfAtATime deploys to up to half of the instances at a time (with fractions rounded down). The overall deployment succeeds if the application revision is deployed to at least half of the instances (with fractions rounded up); otherwise, the deployment fails. In the example of nine instances, it will deploy to up to four instances at a time. The overall deployment succeeds if deployment to five or more instances succeed; otherwise, the deployment fails. The deployment may be successfully deployed to some instances even if the overall deployment fails.

- CodeDeployDefault.OneAtATime deploys the application revision to only one instance at a time.

  For deployment groups that contain more than one instance:

  - The overall deployment succeeds if the application revision is deployed to all of the instances. The exception to this rule is if deployment to the last instance fails, the overall deployment still succeeds. This is because AWS CodeDeploy allows only one instance at a time to be taken offline with the CodeDeployDefault.OneAtATime configuration.

  - The overall deployment fails as soon as the application revision fails to be deployed to any but the last instance. The deployment may be successfully deployed to some instances even if the overall deployment fails.

  - In an example using nine instances, it will deploy to one instance at a time. The overall deployment succeeds if deployment to the first eight instances is successful; the overall deployment fails if deployment to any of the first eight instances fails.

  For deployment groups that contain only one instance, the overall deployment is successful only if deployment to the single instance is successful

Parameters:
  `deploymentConfigName` - If specified, the deployment configuration name can be either one of the predefined configurations provided with AWS CodeDeploy or a custom deployment configuration that you create by calling the create deployment configuration operation. <note>

  CodeDeployDefault.OneAtATime is the default deployment configuration. It is used if a configuration isn't specified for the deployment or the deployment group.

  </note>

  The predefined deployment configurations include the following:

  - CodeDeployDefault.AllAtOnce attempts to deploy an application revision to as many instances as possible at once. The status of the overall deployment will be displayed as Succeeded if the application revision is deployed to one or more of the instances. The status of the overall deployment will be displayed as Failed if the application revision is not deployed to any of the instances. Using an example of nine instances, CodeDeployDefault.AllAtOnce will attempt to deploy to all nine instances at once. The overall deployment will succeed if deployment to even a single instance is successful; it will fail only if deployments to all nine instances fail.

  - CodeDeployDefault.HalfAtATime deploys to up to half of the instances at a time (with fractions rounded down). The overall deployment succeeds if the application revision is deployed to at least half of the instances (with fractions rounded up); otherwise, the deployment fails. In the example of nine instances, it will deploy to up to four instances at a time. The overall deployment succeeds if deployment to five or more instances succeed; otherwise, the deployment fails. The deployment may be successfully deployed to some instances even if the overall deployment fails.

  - CodeDeployDefault.OneAtATime deploys the application revision to only one instance at a time.

    For deployment groups that contain more than one instance:

    - The overall deployment succeeds if the application revision is deployed to all of the instances. The exception to this rule is if deployment to the last instance fails, the overall deployment still succeeds. This is because AWS CodeDeploy allows only one instance at a time to be taken offline with the CodeDeployDefault.OneAtATime configuration.

    - The overall deployment fails as soon as the application revision fails to be deployed to any but the last instance. The deployment may be successfully deployed to some instances even if the overall deployment fails.

    - In an example using nine instances, it will deploy to one instance at a time. The overall deployment succeeds if deployment to the first eight instances is successful; the overall deployment fails if deployment to any of the first eight instances fails.

    For deployment groups that contain only one instance, the overall deployment is successful only if deployment to the single instance is successful

#### getDeploymentConfigName

    public String getDeploymentConfigName()

If specified, the deployment configuration name can be either one of the predefined configurations provided with AWS CodeDeploy or a custom deployment configuration that you create by calling the create deployment configuration operation.

<note>

CodeDeployDefault.OneAtATime is the default deployment configuration. It is used if a configuration isn't specified for the deployment or the deployment group.

</note>

The predefined deployment configurations include the following:

- CodeDeployDefault.AllAtOnce attempts to deploy an application revision to as many instances as possible at once. The status of the overall deployment will be displayed as Succeeded if the application revision is deployed to one or more of the instances. The status of the overall deployment will be displayed as Failed if the application revision is not deployed to any of the instances. Using an example of nine instances, CodeDeployDefault.AllAtOnce will attempt to deploy to all nine instances at once. The overall deployment will succeed if deployment to even a single instance is successful; it will fail only if deployments to all nine instances fail.

- CodeDeployDefault.HalfAtATime deploys to up to half of the instances at a time (with fractions rounded down). The overall deployment succeeds if the application revision is deployed to at least half of the instances (with fractions rounded up); otherwise, the deployment fails. In the example of nine instances, it will deploy to up to four instances at a time. The overall deployment succeeds if deployment to five or more instances succeed; otherwise, the deployment fails. The deployment may be successfully deployed to some instances even if the overall deployment fails.

- CodeDeployDefault.OneAtATime deploys the application revision to only one instance at a time.

  For deployment groups that contain more than one instance:

  - The overall deployment succeeds if the application revision is deployed to all of the instances. The exception to this rule is if deployment to the last instance fails, the overall deployment still succeeds. This is because AWS CodeDeploy allows only one instance at a time to be taken offline with the CodeDeployDefault.OneAtATime configuration.

  - The overall deployment fails as soon as the application revision fails to be deployed to any but the last instance. The deployment may be successfully deployed to some instances even if the overall deployment fails.

  - In an example using nine instances, it will deploy to one instance at a time. The overall deployment succeeds if deployment to the first eight instances is successful; the overall deployment fails if deployment to any of the first eight instances fails.

  For deployment groups that contain only one instance, the overall deployment is successful only if deployment to the single instance is successful

Returns:
  If specified, the deployment configuration name can be either one of the predefined configurations provided with AWS CodeDeploy or a custom deployment configuration that you create by calling the create deployment configuration operation. <note>

  CodeDeployDefault.OneAtATime is the default deployment configuration. It is used if a configuration isn't specified for the deployment or the deployment group.

  </note>

  The predefined deployment configurations include the following:

  - CodeDeployDefault.AllAtOnce attempts to deploy an application revision to as many instances as possible at once. The status of the overall deployment will be displayed as Succeeded if the application revision is deployed to one or more of the instances. The status of the overall deployment will be displayed as Failed if the application revision is not deployed to any of the instances. Using an example of nine instances, CodeDeployDefault.AllAtOnce will attempt to deploy to all nine instances at once. The overall deployment will succeed if deployment to even a single instance is successful; it will fail only if deployments to all nine instances fail.

  - CodeDeployDefault.HalfAtATime deploys to up to half of the instances at a time (with fractions rounded down). The overall deployment succeeds if the application revision is deployed to at least half of the instances (with fractions rounded up); otherwise, the deployment fails. In the example of nine instances, it will deploy to up to four instances at a time. The overall deployment succeeds if deployment to five or more instances succeed; otherwise, the deployment fails. The deployment may be successfully deployed to some instances even if the overall deployment fails.

  - CodeDeployDefault.OneAtATime deploys the application revision to only one instance at a time.

    For deployment groups that contain more than one instance:

    - The overall deployment succeeds if the application revision is deployed to all of the instances. The exception to this rule is if deployment to the last instance fails, the overall deployment still succeeds. This is because AWS CodeDeploy allows only one instance at a time to be taken offline with the CodeDeployDefault.OneAtATime configuration.

    - The overall deployment fails as soon as the application revision fails to be deployed to any but the last instance. The deployment may be successfully deployed to some instances even if the overall deployment fails.

    - In an example using nine instances, it will deploy to one instance at a time. The overall deployment succeeds if deployment to the first eight instances is successful; the overall deployment fails if deployment to any of the first eight instances fails.

    For deployment groups that contain only one instance, the overall deployment is successful only if deployment to the single instance is successful

#### withDeploymentConfigName

    public CreateDeploymentGroupRequest withDeploymentConfigName(String deploymentConfigName)

If specified, the deployment configuration name can be either one of the predefined configurations provided with AWS CodeDeploy or a custom deployment configuration that you create by calling the create deployment configuration operation.

<note>

CodeDeployDefault.OneAtATime is the default deployment configuration. It is used if a configuration isn't specified for the deployment or the deployment group.

</note>

The predefined deployment configurations include the following:

- CodeDeployDefault.AllAtOnce attempts to deploy an application revision to as many instances as possible at once. The status of the overall deployment will be displayed as Succeeded if the application revision is deployed to one or more of the instances. The status of the overall deployment will be displayed as Failed if the application revision is not deployed to any of the instances. Using an example of nine instances, CodeDeployDefault.AllAtOnce will attempt to deploy to all nine instances at once. The overall deployment will succeed if deployment to even a single instance is successful; it will fail only if deployments to all nine instances fail.

- CodeDeployDefault.HalfAtATime deploys to up to half of the instances at a time (with fractions rounded down). The overall deployment succeeds if the application revision is deployed to at least half of the instances (with fractions rounded up); otherwise, the deployment fails. In the example of nine instances, it will deploy to up to four instances at a time. The overall deployment succeeds if deployment to five or more instances succeed; otherwise, the deployment fails. The deployment may be successfully deployed to some instances even if the overall deployment fails.

- CodeDeployDefault.OneAtATime deploys the application revision to only one instance at a time.

  For deployment groups that contain more than one instance:

  - The overall deployment succeeds if the application revision is deployed to all of the instances. The exception to this rule is if deployment to the last instance fails, the overall deployment still succeeds. This is because AWS CodeDeploy allows only one instance at a time to be taken offline with the CodeDeployDefault.OneAtATime configuration.

  - The overall deployment fails as soon as the application revision fails to be deployed to any but the last instance. The deployment may be successfully deployed to some instances even if the overall deployment fails.

  - In an example using nine instances, it will deploy to one instance at a time. The overall deployment succeeds if deployment to the first eight instances is successful; the overall deployment fails if deployment to any of the first eight instances fails.

  For deployment groups that contain only one instance, the overall deployment is successful only if deployment to the single instance is successful

Parameters:
  `deploymentConfigName` - If specified, the deployment configuration name can be either one of the predefined configurations provided with AWS CodeDeploy or a custom deployment configuration that you create by calling the create deployment configuration operation. <note>

  CodeDeployDefault.OneAtATime is the default deployment configuration. It is used if a configuration isn't specified for the deployment or the deployment group.

  </note>

  The predefined deployment configurations include the following:

  - CodeDeployDefault.AllAtOnce attempts to deploy an application revision to as many instances as possible at once. The status of the overall deployment will be displayed as Succeeded if the application revision is deployed to one or more of the instances. The status of the overall deployment will be displayed as Failed if the application revision is not deployed to any of the instances. Using an example of nine instances, CodeDeployDefault.AllAtOnce will attempt to deploy to all nine instances at once. The overall deployment will succeed if deployment to even a single instance is successful; it will fail only if deployments to all nine instances fail.

  - CodeDeployDefault.HalfAtATime deploys to up to half of the instances at a time (with fractions rounded down). The overall deployment succeeds if the application revision is deployed to at least half of the instances (with fractions rounded up); otherwise, the deployment fails. In the example of nine instances, it will deploy to up to four instances at a time. The overall deployment succeeds if deployment to five or more instances succeed; otherwise, the deployment fails. The deployment may be successfully deployed to some instances even if the overall deployment fails.

  - CodeDeployDefault.OneAtATime deploys the application revision to only one instance at a time.

    For deployment groups that contain more than one instance:

    - The overall deployment succeeds if the application revision is deployed to all of the instances. The exception to this rule is if deployment to the last instance fails, the overall deployment still succeeds. This is because AWS CodeDeploy allows only one instance at a time to be taken offline with the CodeDeployDefault.OneAtATime configuration.

    - The overall deployment fails as soon as the application revision fails to be deployed to any but the last instance. The deployment may be successfully deployed to some instances even if the overall deployment fails.

    - In an example using nine instances, it will deploy to one instance at a time. The overall deployment succeeds if deployment to the first eight instances is successful; the overall deployment fails if deployment to any of the first eight instances fails.

    For deployment groups that contain only one instance, the overall deployment is successful only if deployment to the single instance is successful

Returns:
  Returns a reference to this object so that method calls can be chained together.

#### getEc2TagFilters

    public List<EC2TagFilter> getEc2TagFilters()

The Amazon EC2 tags on which to filter.

Returns:
  The Amazon EC2 tags on which to filter.

#### setEc2TagFilters

    public void setEc2TagFilters(Collection<EC2TagFilter> ec2TagFilters)

The Amazon EC2 tags on which to filter.

Parameters:
  `ec2TagFilters` - The Amazon EC2 tags on which to filter.

#### withEc2TagFilters

    public CreateDeploymentGroupRequest withEc2TagFilters(EC2TagFilter... ec2TagFilters)

The Amazon EC2 tags on which to filter.

NOTE: This method appends the values to the existing list (if any). Use `setEc2TagFilters(java.util.Collection)` or `withEc2TagFilters(java.util.Collection)` if you want to override the existing values.

Parameters:
  `ec2TagFilters` - The Amazon EC2 tags on which to filter.
Returns:
  Returns a reference to this object so that method calls can be chained together.

#### withEc2TagFilters

    public CreateDeploymentGroupRequest withEc2TagFilters(Collection<EC2TagFilter> ec2TagFilters)

The Amazon EC2 tags on which to filter.

Parameters:
  `ec2TagFilters` - The Amazon EC2 tags on which to filter.
Returns:
  Returns a reference to this object so that method calls can be chained together.

#### getOnPremisesInstanceTagFilters

    public List<TagFilter> getOnPremisesInstanceTagFilters()

The on-premises instance tags on which to filter.

Returns:
  The on-premises instance tags on which to filter.

#### setOnPremisesInstanceTagFilters

    public void setOnPremisesInstanceTagFilters(Collection<TagFilter> onPremisesInstanceTagFilters)

The on-premises instance tags on which to filter.

Parameters:
  `onPremisesInstanceTagFilters` - The on-premises instance tags on which to filter.

#### withOnPremisesInstanceTagFilters

    public CreateDeploymentGroupRequest withOnPremisesInstanceTagFilters(TagFilter... onPremisesInstanceTagFilters)

The on-premises instance tags on which to filter.

NOTE: This method appends the values to the existing list (if any). Use `setOnPremisesInstanceTagFilters(java.util.Collection)` or `withOnPremisesInstanceTagFilters(java.util.Collection)` if you want to override the existing values.

Parameters:
  `onPremisesInstanceTagFilters` - The on-premises instance tags on which to filter.
Returns:
  Returns a reference to this object so that method calls can be chained together.

#### withOnPremisesInstanceTagFilters

    public CreateDeploymentGroupRequest withOnPremisesInstanceTagFilters(Collection<TagFilter> onPremisesInstanceTagFilters)

The on-premises instance tags on which to filter.

Parameters:
  `onPremisesInstanceTagFilters` - The on-premises instance tags on which to filter.
Returns:
  Returns a reference to this object so that method calls can be chained together.

#### getAutoScalingGroups

    public List<String> getAutoScalingGroups()

A list of associated Auto Scaling groups.

Returns:
  A list of associated Auto Scaling groups.

#### setAutoScalingGroups

    public void setAutoScalingGroups(Collection<String> autoScalingGroups)

A list of associated Auto Scaling groups.

Parameters:
  `autoScalingGroups` - A list of associated Auto Scaling groups.

#### withAutoScalingGroups

    public CreateDeploymentGroupRequest withAutoScalingGroups(String... autoScalingGroups)

A list of associated Auto Scaling groups.

NOTE: This method appends the values to the existing list (if any). Use `setAutoScalingGroups(java.util.Collection)` or `withAutoScalingGroups(java.util.Collection)` if you want to override the existing values.

Parameters:
  `autoScalingGroups` - A list of associated Auto Scaling groups.
Returns:
  Returns a reference to this object so that method calls can be chained together.

#### withAutoScalingGroups

    public CreateDeploymentGroupRequest withAutoScalingGroups(Collection<String> autoScalingGroups)

A list of associated Auto Scaling groups.

Parameters:
  `autoScalingGroups` - A list of associated Auto Scaling groups.
Returns:
  Returns a reference to this object so that method calls can be chained together.

#### setServiceRoleArn

    public void setServiceRoleArn(String serviceRoleArn)

A service role ARN that allows AWS CodeDeploy to act on the user's behalf when interacting with AWS services.

Parameters:
  `serviceRoleArn` - A service role ARN that allows AWS CodeDeploy to act on the user's behalf when interacting with AWS services.

#### getServiceRoleArn

    public String getServiceRoleArn()

A service role ARN that allows AWS CodeDeploy to act on the user's behalf when interacting with AWS services.

Returns:
  A service role ARN that allows AWS CodeDeploy to act on the user's behalf when interacting with AWS services.

#### withServiceRoleArn

    public CreateDeploymentGroupRequest withServiceRoleArn(String serviceRoleArn)

A service role ARN that allows AWS CodeDeploy to act on the user's behalf when interacting with AWS services.

Parameters:
  `serviceRoleArn` - A service role ARN that allows AWS CodeDeploy to act on the user's behalf when interacting with AWS services.
Returns:
  Returns a reference to this object so that method calls can be chained together.

#### getTriggerConfigurations

    public List<TriggerConfig> getTriggerConfigurations()

Information about triggers to create when the deployment group is created. For examples, see Create a Trigger for an AWS CodeDeploy Event in the AWS CodeDeploy User Guide.

Returns:
  Information about triggers to create when the deployment group is created. For examples, see Create a Trigger for an AWS CodeDeploy Event in the AWS CodeDeploy User Guide.

#### setTriggerConfigurations

    public void setTriggerConfigurations(Collection<TriggerConfig> triggerConfigurations)

Information about triggers to create when the deployment group is created. For examples, see Create a Trigger for an AWS CodeDeploy Event in the AWS CodeDeploy User Guide.

Parameters:
  `triggerConfigurations` - Information about triggers to create when the deployment group is created. For examples, see Create a Trigger for an AWS CodeDeploy Event in the AWS CodeDeploy User Guide.

#### withTriggerConfigurations

    public CreateDeploymentGroupRequest withTriggerConfigurations(TriggerConfig... triggerConfigurations)

Information about triggers to create when the deployment group is created. For examples, see Create a Trigger for an AWS CodeDeploy Event in the AWS CodeDeploy User Guide.

NOTE: This method appends the values to the existing list (if any). Use `setTriggerConfigurations(java.util.Collection)` or `withTriggerConfigurations(java.util.Collection)` if you want to override the existing values.

Parameters:
  `triggerConfigurations` - Information about triggers to create when the deployment group is created. For examples, see Create a Trigger for an AWS CodeDeploy Event in the AWS CodeDeploy User Guide.
Returns:
  Returns a reference to this object so that method calls can be chained together.

#### withTriggerConfigurations

    public CreateDeploymentGroupRequest withTriggerConfigurations(Collection<TriggerConfig> triggerConfigurations)

Information about triggers to create when the deployment group is created. For examples, see Create a Trigger for an AWS CodeDeploy Event in the AWS CodeDeploy User Guide.

Parameters:
  `triggerConfigurations` - Information about triggers to create when the deployment group is created. For examples, see Create a Trigger for an AWS CodeDeploy Event in the AWS CodeDeploy User Guide.
Returns:
  Returns a reference to this object so that method calls can be chained together.

#### setAlarmConfiguration

    public void setAlarmConfiguration(AlarmConfiguration alarmConfiguration)

Information to add about Amazon CloudWatch alarms when the deployment group is created.

Parameters:
  `alarmConfiguration` - Information to add about Amazon CloudWatch alarms when the deployment group is created.

#### getAlarmConfiguration

    public AlarmConfiguration getAlarmConfiguration()

Information to add about Amazon CloudWatch alarms when the deployment group is created.

Returns:
  Information to add about Amazon CloudWatch alarms when the deployment group is created.

#### withAlarmConfiguration

    public CreateDeploymentGroupRequest withAlarmConfiguration(AlarmConfiguration alarmConfiguration)

Information to add about Amazon CloudWatch alarms when the deployment group is created.

Parameters:
  `alarmConfiguration` - Information to add about Amazon CloudWatch alarms when the deployment group is created.
Returns:
  Returns a reference to this object so that method calls can be chained together.

#### setAutoRollbackConfiguration

    public void setAutoRollbackConfiguration(AutoRollbackConfiguration autoRollbackConfiguration)

Configuration information for an automatic rollback that is added when a deployment group is created.

Parameters:
  `autoRollbackConfiguration` - Configuration information for an automatic rollback that is added when a deployment group is created.

#### getAutoRollbackConfiguration

    public AutoRollbackConfiguration getAutoRollbackConfiguration()

Configuration information for an automatic rollback that is added when a deployment group is created.

Returns:
  Configuration information for an automatic rollback that is added when a deployment group is created.

#### withAutoRollbackConfiguration

    public CreateDeploymentGroupRequest withAutoRollbackConfiguration(AutoRollbackConfiguration autoRollbackConfiguration)

Configuration information for an automatic rollback that is added when a deployment group is created.

Parameters:
  `autoRollbackConfiguration` - Configuration information for an automatic rollback that is added when a deployment group is created.
Returns:
  Returns a reference to this object so that method calls can be chained together.

#### toString

    public String toString()

Returns a string representation of this object; useful for testing and debugging.

Overrides:
  `toString` in class `Object`
Returns:
  A string representation of this object.
See Also:
  `Object.toString()`

#### equals

    public boolean equals(Object obj)

Overrides:
  `equals` in class `Object`

#### hashCode

    public int hashCode()

Overrides:
  `hashCode` in class `Object`

#### clone

    public CreateDeploymentGroupRequest clone()

Overrides:
  `clone` in class `AmazonWebServiceRequest`