com.amazonaws.services.codedeploy

## Class AmazonCodeDeployClient

- java.lang.Object
- - com.amazonaws.AmazonWebServiceClient
  - - com.amazonaws.services.codedeploy.AmazonCodeDeployClient

All Implemented Interfaces:
  AmazonCodeDeploy

Direct Known Subclasses:
  AmazonCodeDeployAsyncClient

    @ThreadSafe
    public class AmazonCodeDeployClient
    extends AmazonWebServiceClient
    implements AmazonCodeDeploy

Client for accessing CodeDeploy. All service calls made using this client are blocking, and will not return until the service call completes.

<fullname>AWS CodeDeploy</fullname>

Overview

This reference guide provides descriptions of the AWS CodeDeploy APIs. For more information about AWS CodeDeploy, see the AWS CodeDeploy User Guide.

Using the APIs

You can use the AWS CodeDeploy APIs to work with the following:

- Applications are unique identifiers used by AWS CodeDeploy to ensure the correct combinations of revisions, deployment configurations, and deployment groups are being referenced during deployments.

  You can use the AWS CodeDeploy APIs to create, delete, get, list, and update applications.

- Deployment configurations are sets of deployment rules and success and failure conditions used by AWS CodeDeploy during deployments.

  You can use the AWS CodeDeploy APIs to create, delete, get, and list deployment configurations.

- Deployment groups are groups of instances to which application revisions can be deployed.

  You can use the AWS CodeDeploy APIs to create, delete, get, list, and update deployment groups.

- Instances represent Amazon EC2 instances to which application revisions are deployed. Instances are identified by their Amazon EC2 tags or Auto Scaling group names. Instances belong to deployment groups.

  You can use the AWS CodeDeploy APIs to get and list instance.

- Deployments represent the process of deploying revisions to instances.

  You can use the AWS CodeDeploy APIs to create, get, list, and stop deployments.

- Application revisions are archive files stored in Amazon S3 buckets or GitHub repositories. These revisions contain source content (such as source code, web pages, executable files, and deployment scripts) along with an application specification (AppSpec) file. (The AppSpec file is unique to AWS CodeDeploy; it defines the deployment actions you want AWS CodeDeploy to execute.) For application revisions stored in Amazon S3 buckets, an application revision is uniquely identified by its Amazon S3 object key and its ETag, version, or both. For application revisions stored in GitHub repositories, an application revision is uniquely identified by its repository name and commit ID. Application revisions are deployed through deployment groups.

  You can use the AWS CodeDeploy APIs to get, list, and register application revisions.

### Field Summary

Fields
`protected static ClientConfigurationFactory` `configFactory` Client configuration factory providing ClientConfigurations tailored to this client

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

`client, clientConfiguration, endpoint, LOGGING_AWS_REQUEST_METRIC, requestHandler2s, timeOffset`

### Fields inherited from interface com.amazonaws.services.codedeploy.AmazonCodeDeploy

`ENDPOINT_PREFIX`

### Constructor Summary

Constructors
Constructor and Description
`AmazonCodeDeployClient()` Constructs a new client to invoke service methods on CodeDeploy.
`AmazonCodeDeployClient(AWSCredentials awsCredentials)` Constructs a new client to invoke service methods on CodeDeploy using the specified AWS account credentials.
`AmazonCodeDeployClient(AWSCredentials awsCredentials, ClientConfiguration clientConfiguration)` Constructs a new client to invoke service methods on CodeDeploy using the specified AWS account credentials and client configuration options.
`AmazonCodeDeployClient(AWSCredentialsProvider awsCredentialsProvider)` Constructs a new client to invoke service methods on CodeDeploy using the specified AWS account credentials provider.
`AmazonCodeDeployClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration)` Constructs a new client to invoke service methods on CodeDeploy using the specified AWS account credentials provider and client configuration options.
`AmazonCodeDeployClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration, RequestMetricCollector requestMetricCollector)` Constructs a new client to invoke service methods on CodeDeploy using the specified AWS account credentials provider, client configuration options, and request metric collector.
`AmazonCodeDeployClient(ClientConfiguration clientConfiguration)` Constructs a new client to invoke service methods on CodeDeploy.

### Method Summary

All Methods Instance Methods Concrete Methods
`AddTagsToOnPremisesInstancesResult` `addTagsToOnPremisesInstances(AddTagsToOnPremisesInstancesRequest addTagsToOnPremisesInstancesRequest)` Adds tags to on-premises instances.
`BatchGetApplicationRevisionsResult` `batchGetApplicationRevisions(BatchGetApplicationRevisionsRequest batchGetApplicationRevisionsRequest)` Gets information about one or more application revisions.
`BatchGetApplicationsResult` `batchGetApplications()` Simplified method form for invoking the BatchGetApplications operation.
`BatchGetApplicationsResult` `batchGetApplications(BatchGetApplicationsRequest batchGetApplicationsRequest)` Gets information about one or more applications.
`BatchGetDeploymentGroupsResult` `batchGetDeploymentGroups(BatchGetDeploymentGroupsRequest batchGetDeploymentGroupsRequest)` Get information about one or more deployment groups.
`BatchGetDeploymentInstancesResult` `batchGetDeploymentInstances(BatchGetDeploymentInstancesRequest batchGetDeploymentInstancesRequest)` Gets information about one or more instance that are part of a deployment group.
`BatchGetDeploymentsResult` `batchGetDeployments()` Simplified method form for invoking the BatchGetDeployments operation.
`BatchGetDeploymentsResult` `batchGetDeployments(BatchGetDeploymentsRequest batchGetDeploymentsRequest)` Gets information about one or more deployments.
`BatchGetOnPremisesInstancesResult` `batchGetOnPremisesInstances()` Simplified method form for invoking the BatchGetOnPremisesInstances operation.
`BatchGetOnPremisesInstancesResult` `batchGetOnPremisesInstances(BatchGetOnPremisesInstancesRequest batchGetOnPremisesInstancesRequest)` Gets information about one or more on-premises instances.
`CreateApplicationResult` `createApplication(CreateApplicationRequest createApplicationRequest)` Creates an application.
`CreateDeploymentResult` `createDeployment(CreateDeploymentRequest createDeploymentRequest)` Deploys an application revision through the specified deployment group.
`CreateDeploymentConfigResult` `createDeploymentConfig(CreateDeploymentConfigRequest createDeploymentConfigRequest)` Creates a deployment configuration.
`CreateDeploymentGroupResult` `createDeploymentGroup(CreateDeploymentGroupRequest createDeploymentGroupRequest)` Creates a deployment group to which application revisions will be deployed.
`DeleteApplicationResult` `deleteApplication(DeleteApplicationRequest deleteApplicationRequest)` Deletes an application.
`DeleteDeploymentConfigResult` `deleteDeploymentConfig(DeleteDeploymentConfigRequest deleteDeploymentConfigRequest)` Deletes a deployment configuration.
`DeleteDeploymentGroupResult` `deleteDeploymentGroup(DeleteDeploymentGroupRequest deleteDeploymentGroupRequest)` Deletes a deployment group.
`DeregisterOnPremisesInstanceResult` `deregisterOnPremisesInstance(DeregisterOnPremisesInstanceRequest deregisterOnPremisesInstanceRequest)` Deregisters an on-premises instance.
`GetApplicationResult` `getApplication(GetApplicationRequest getApplicationRequest)` Gets information about an application.
`GetApplicationRevisionResult` `getApplicationRevision(GetApplicationRevisionRequest getApplicationRevisionRequest)` Gets information about an application revision.
`ResponseMetadata` `getCachedResponseMetadata(AmazonWebServiceRequest request)` Returns additional metadata for a previously executed successful, request, typically used for debugging issues where a service isn't acting as expected.
`GetDeploymentResult` `getDeployment(GetDeploymentRequest getDeploymentRequest)` Gets information about a deployment.
`GetDeploymentConfigResult` `getDeploymentConfig(GetDeploymentConfigRequest getDeploymentConfigRequest)` Gets information about a deployment configuration.
`GetDeploymentGroupResult` `getDeploymentGroup(GetDeploymentGroupRequest getDeploymentGroupRequest)` Gets information about a deployment group.
`GetDeploymentInstanceResult` `getDeploymentInstance(GetDeploymentInstanceRequest getDeploymentInstanceRequest)` Gets information about an instance as part of a deployment.
`GetOnPremisesInstanceResult` `getOnPremisesInstance(GetOnPremisesInstanceRequest getOnPremisesInstanceRequest)` Gets information about an on-premises instance.
`ListApplicationRevisionsResult` `listApplicationRevisions(ListApplicationRevisionsRequest listApplicationRevisionsRequest)` Lists information about revisions for an application.
`ListApplicationsResult` `listApplications()` Simplified method form for invoking the ListApplications operation.
`ListApplicationsResult` `listApplications(ListApplicationsRequest listApplicationsRequest)` Lists the applications registered with the applicable IAM user or AWS account.
`ListDeploymentConfigsResult` `listDeploymentConfigs()` Simplified method form for invoking the ListDeploymentConfigs operation.
`ListDeploymentConfigsResult` `listDeploymentConfigs(ListDeploymentConfigsRequest listDeploymentConfigsRequest)` Lists the deployment configurations with the applicable IAM user or AWS account.
`ListDeploymentGroupsResult` `listDeploymentGroups(ListDeploymentGroupsRequest listDeploymentGroupsRequest)` Lists the deployment groups for an application registered with the applicable IAM user or AWS account.
`ListDeploymentInstancesResult` `listDeploymentInstances(ListDeploymentInstancesRequest listDeploymentInstancesRequest)` Lists the instance for a deployment associated with the applicable IAM user or AWS account.
`ListDeploymentsResult` `listDeployments()` Simplified method form for invoking the ListDeployments operation.
`ListDeploymentsResult` `listDeployments(ListDeploymentsRequest listDeploymentsRequest)` Lists the deployments in a deployment group for an application registered with the applicable IAM user or AWS account.
`ListOnPremisesInstancesResult` `listOnPremisesInstances()` Simplified method form for invoking the ListOnPremisesInstances operation.
`ListOnPremisesInstancesResult` `listOnPremisesInstances(ListOnPremisesInstancesRequest listOnPremisesInstancesRequest)` Gets a list of names for one or more on-premises instances.
`RegisterApplicationRevisionResult` `registerApplicationRevision(RegisterApplicationRevisionRequest registerApplicationRevisionRequest)` Registers with AWS CodeDeploy a revision for the specified application.
`RegisterOnPremisesInstanceResult` `registerOnPremisesInstance(RegisterOnPremisesInstanceRequest registerOnPremisesInstanceRequest)` Registers an on-premises instance.
`RemoveTagsFromOnPremisesInstancesResult` `removeTagsFromOnPremisesInstances(RemoveTagsFromOnPremisesInstancesRequest removeTagsFromOnPremisesInstancesRequest)` Removes one or more tags from one or more on-premises instances.
`StopDeploymentResult` `stopDeployment(StopDeploymentRequest stopDeploymentRequest)` Attempts to stop an ongoing deployment.
`UpdateApplicationResult` `updateApplication()` Simplified method form for invoking the UpdateApplication operation.
`UpdateApplicationResult` `updateApplication(UpdateApplicationRequest updateApplicationRequest)` Changes the name of an application.
`UpdateDeploymentGroupResult` `updateDeploymentGroup(UpdateDeploymentGroupRequest updateDeploymentGroupRequest)` Changes information about a deployment group.
`AmazonCodeDeployWaiters` `waiters()`

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

`addRequestHandler, addRequestHandler, beforeMarshalling, calculateCRC32FromCompressedData, checkMutability, configureRegion, createExecutionContext, createExecutionContext, createExecutionContext, createSignerProvider, endClientExecution, endClientExecution, getEndpointPrefix, getRequestMetricsCollector, getServiceAbbreviation, getServiceName, getServiceNameIntern, getSigner, getSignerByURI, getSignerProvider, getSignerRegionOverride, getTimeOffset, isProfilingEnabled, isRequestMetricsEnabled, makeImmutable, removeRequestHandler, removeRequestHandler, requestMetricCollector, setEndpoint, setEndpointPrefix, setRegion, setServiceNameIntern, setSignerRegionOverride, setTimeOffset, shutdown, useStrictHostNameVerification, withEndpoint, withRegion, withRegion, withTimeOffset`

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

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface com.amazonaws.services.codedeploy.AmazonCodeDeploy

`setEndpoint, setRegion, shutdown`

### Field Detail

#### configFactory

    protected static final ClientConfigurationFactory configFactory

Client configuration factory providing ClientConfigurations tailored to this client

### Constructor Detail

#### AmazonCodeDeployClient

    public AmazonCodeDeployClient()

Constructs a new client to invoke service methods on CodeDeploy. A credentials provider chain will be used that searches for credentials in this order:

- Environment Variables - AWS_ACCESS_KEY_ID and AWS_SECRET_KEY
- Java System Properties - aws.accessKeyId and aws.secretKey
- Instance profile credentials delivered through the Amazon EC2 metadata service

All service calls made using this new client object are blocking, and will not return until the service call completes.

See Also:
  `DefaultAWSCredentialsProviderChain`

#### AmazonCodeDeployClient

    public AmazonCodeDeployClient(ClientConfiguration clientConfiguration)

Constructs a new client to invoke service methods on CodeDeploy. A credentials provider chain will be used that searches for credentials in this order:

- Environment Variables - AWS_ACCESS_KEY_ID and AWS_SECRET_KEY
- Java System Properties - aws.accessKeyId and aws.secretKey
- Instance profile credentials delivered through the Amazon EC2 metadata service

All service calls made using this new client object are blocking, and will not return until the service call completes.

Parameters:
  `clientConfiguration` - The client configuration options controlling how this client connects to CodeDeploy (ex: proxy settings, retry counts, etc.).
See Also:
  `DefaultAWSCredentialsProviderChain`

#### AmazonCodeDeployClient

    public AmazonCodeDeployClient(AWSCredentials awsCredentials)

Constructs a new client to invoke service methods on CodeDeploy using the specified AWS account credentials.

All service calls made using this new client object are blocking, and will not return until the service call completes.

Parameters:
  `awsCredentials` - The AWS credentials (access key ID and secret key) to use when authenticating with AWS services.

#### AmazonCodeDeployClient

    public AmazonCodeDeployClient(AWSCredentials awsCredentials,
                                  ClientConfiguration clientConfiguration)

Constructs a new client to invoke service methods on CodeDeploy using the specified AWS account credentials and client configuration options.

All service calls made using this new client object are blocking, and will not return until the service call completes.

Parameters:
  `awsCredentials` - The AWS credentials (access key ID and secret key) to use when authenticating with AWS services.
  `clientConfiguration` - The client configuration options controlling how this client connects to CodeDeploy (ex: proxy settings, retry counts, etc.).

#### AmazonCodeDeployClient

    public AmazonCodeDeployClient(AWSCredentialsProvider awsCredentialsProvider)

Constructs a new client to invoke service methods on CodeDeploy using the specified AWS account credentials provider.

All service calls made using this new client object are blocking, and will not return until the service call completes.

Parameters:
  `awsCredentialsProvider` - The AWS credentials provider which will provide credentials to authenticate requests with AWS services.

#### AmazonCodeDeployClient

    public AmazonCodeDeployClient(AWSCredentialsProvider awsCredentialsProvider,
                                  ClientConfiguration clientConfiguration)

Constructs a new client to invoke service methods on CodeDeploy using the specified AWS account credentials provider and client configuration options.

All service calls made using this new client object are blocking, and will not return until the service call completes.

Parameters:
  `awsCredentialsProvider` - The AWS credentials provider which will provide credentials to authenticate requests with AWS services.
  `clientConfiguration` - The client configuration options controlling how this client connects to CodeDeploy (ex: proxy settings, retry counts, etc.).

#### AmazonCodeDeployClient

    public AmazonCodeDeployClient(AWSCredentialsProvider awsCredentialsProvider,
                                  ClientConfiguration clientConfiguration,
                                  RequestMetricCollector requestMetricCollector)

Constructs a new client to invoke service methods on CodeDeploy using the specified AWS account credentials provider, client configuration options, and request metric collector.

All service calls made using this new client object are blocking, and will not return until the service call completes.

Parameters:
  `awsCredentialsProvider` - The AWS credentials provider which will provide credentials to authenticate requests with AWS services.
  `clientConfiguration` - The client configuration options controlling how this client connects to CodeDeploy (ex: proxy settings, retry counts, etc.).
  `requestMetricCollector` - optional request metric collector

### Method Detail

#### addTagsToOnPremisesInstances

    public AddTagsToOnPremisesInstancesResult addTagsToOnPremisesInstances(AddTagsToOnPremisesInstancesRequest addTagsToOnPremisesInstancesRequest)

Adds tags to on-premises instances.

Specified by:
  `addTagsToOnPremisesInstances` in interface `AmazonCodeDeploy`
Parameters:
  `addTagsToOnPremisesInstancesRequest` - Represents the input of, and adds tags to, an on-premises instance operation.
Returns:
  Result of the AddTagsToOnPremisesInstances operation returned by the service.
Throws:
  `InstanceNameRequiredException` - An on-premises instance name was not specified.
  `TagRequiredException` - A tag was not specified.
  `InvalidTagException` - The specified tag was specified in an invalid format.
  `TagLimitExceededException` - The maximum allowed number of tags was exceeded.
  `InstanceLimitExceededException` - The maximum number of allowed on-premises instances in a single call was exceeded.
  `InstanceNotRegisteredException` - The specified on-premises instance is not registered.

#### batchGetApplicationRevisions

    public BatchGetApplicationRevisionsResult batchGetApplicationRevisions(BatchGetApplicationRevisionsRequest batchGetApplicationRevisionsRequest)

Gets information about one or more application revisions.

Specified by:
  `batchGetApplicationRevisions` in interface `AmazonCodeDeploy`
Parameters:
  `batchGetApplicationRevisionsRequest` - Represents the input of a batch get application revisions operation.
Returns:
  Result of the BatchGetApplicationRevisions operation returned by the service.
Throws:
  `ApplicationDoesNotExistException` - The application does not exist with the applicable IAM user or AWS account.
  `ApplicationNameRequiredException` - The minimum number of required application names was not specified.
  `InvalidApplicationNameException` - The application name was specified in an invalid format.
  `RevisionRequiredException` - The revision ID was not specified.
  `InvalidRevisionException` - The revision was specified in an invalid format.
  `BatchLimitExceededException` - The maximum number of names or IDs allowed for this request (100) was exceeded.

#### batchGetApplications

    public BatchGetApplicationsResult batchGetApplications(BatchGetApplicationsRequest batchGetApplicationsRequest)

Gets information about one or more applications.

Specified by:
  `batchGetApplications` in interface `AmazonCodeDeploy`
Parameters:
  `batchGetApplicationsRequest` - Represents the input of a batch get applications operation.
Returns:
  Result of the BatchGetApplications operation returned by the service.
Throws:
  `ApplicationNameRequiredException` - The minimum number of required application names was not specified.
  `InvalidApplicationNameException` - The application name was specified in an invalid format.
  `ApplicationDoesNotExistException` - The application does not exist with the applicable IAM user or AWS account.
  `BatchLimitExceededException` - The maximum number of names or IDs allowed for this request (100) was exceeded.

#### batchGetApplications

    public BatchGetApplicationsResult batchGetApplications()

Description copied from interface: `AmazonCodeDeploy`
Simplified method form for invoking the BatchGetApplications operation.

Specified by:
  `batchGetApplications` in interface `AmazonCodeDeploy`
See Also:
  `AmazonCodeDeploy.batchGetApplications(BatchGetApplicationsRequest)`

#### batchGetDeploymentGroups

    public BatchGetDeploymentGroupsResult batchGetDeploymentGroups(BatchGetDeploymentGroupsRequest batchGetDeploymentGroupsRequest)

Get information about one or more deployment groups.

Specified by:
  `batchGetDeploymentGroups` in interface `AmazonCodeDeploy`
Parameters:
  `batchGetDeploymentGroupsRequest` - Represents the input of a batch get deployment groups operation.
Returns:
  Result of the BatchGetDeploymentGroups operation returned by the service.
Throws:
  `ApplicationNameRequiredException` - The minimum number of required application names was not specified.
  `InvalidApplicationNameException` - The application name was specified in an invalid format.
  `ApplicationDoesNotExistException` - The application does not exist with the applicable IAM user or AWS account.
  `DeploymentGroupNameRequiredException` - The deployment group name was not specified.
  `InvalidDeploymentGroupNameException` - The deployment group name was specified in an invalid format.
  `BatchLimitExceededException` - The maximum number of names or IDs allowed for this request (100) was exceeded.

#### batchGetDeploymentInstances

    public BatchGetDeploymentInstancesResult batchGetDeploymentInstances(BatchGetDeploymentInstancesRequest batchGetDeploymentInstancesRequest)

Gets information about one or more instance that are part of a deployment group.

Specified by:
  `batchGetDeploymentInstances` in interface `AmazonCodeDeploy`
Parameters:
  `batchGetDeploymentInstancesRequest` - Represents the input of a batch get deployment instances operation.
Returns:
  Result of the BatchGetDeploymentInstances operation returned by the service.
Throws:
  `DeploymentIdRequiredException` - At least one deployment ID must be specified.
  `DeploymentDoesNotExistException` - The deployment does not exist with the applicable IAM user or AWS account.
  `InstanceIdRequiredException` - The instance ID was not specified.
  `InvalidDeploymentIdException` - At least one of the deployment IDs was specified in an invalid format.
  `InvalidInstanceNameException` - The specified on-premises instance name was specified in an invalid format.
  `BatchLimitExceededException` - The maximum number of names or IDs allowed for this request (100) was exceeded.

#### batchGetDeployments

    public BatchGetDeploymentsResult batchGetDeployments(BatchGetDeploymentsRequest batchGetDeploymentsRequest)

Gets information about one or more deployments.

Specified by:
  `batchGetDeployments` in interface `AmazonCodeDeploy`
Parameters:
  `batchGetDeploymentsRequest` - Represents the input of a batch get deployments operation.
Returns:
  Result of the BatchGetDeployments operation returned by the service.
Throws:
  `DeploymentIdRequiredException` - At least one deployment ID must be specified.
  `InvalidDeploymentIdException` - At least one of the deployment IDs was specified in an invalid format.
  `BatchLimitExceededException` - The maximum number of names or IDs allowed for this request (100) was exceeded.

#### batchGetDeployments

    public BatchGetDeploymentsResult batchGetDeployments()

Description copied from interface: `AmazonCodeDeploy`
Simplified method form for invoking the BatchGetDeployments operation.

Specified by:
  `batchGetDeployments` in interface `AmazonCodeDeploy`
See Also:
  `AmazonCodeDeploy.batchGetDeployments(BatchGetDeploymentsRequest)`

#### batchGetOnPremisesInstances

    public BatchGetOnPremisesInstancesResult batchGetOnPremisesInstances(BatchGetOnPremisesInstancesRequest batchGetOnPremisesInstancesRequest)

Gets information about one or more on-premises instances.

Specified by:
  `batchGetOnPremisesInstances` in interface `AmazonCodeDeploy`
Parameters:
  `batchGetOnPremisesInstancesRequest` - Represents the input of a batch get on-premises instances operation.
Returns:
  Result of the BatchGetOnPremisesInstances operation returned by the service.
Throws:
  `InstanceNameRequiredException` - An on-premises instance name was not specified.
  `InvalidInstanceNameException` - The specified on-premises instance name was specified in an invalid format.
  `BatchLimitExceededException` - The maximum number of names or IDs allowed for this request (100) was exceeded.

#### batchGetOnPremisesInstances

    public BatchGetOnPremisesInstancesResult batchGetOnPremisesInstances()

Description copied from interface: `AmazonCodeDeploy`
Simplified method form for invoking the BatchGetOnPremisesInstances operation.

Specified by:
  `batchGetOnPremisesInstances` in interface `AmazonCodeDeploy`
See Also:
  `AmazonCodeDeploy.batchGetOnPremisesInstances(BatchGetOnPremisesInstancesRequest)`

#### createApplication

    public CreateApplicationResult createApplication(CreateApplicationRequest createApplicationRequest)

Creates an application.

Specified by:
  `createApplication` in interface `AmazonCodeDeploy`
Parameters:
  `createApplicationRequest` - Represents the input of a create application operation.
Returns:
  Result of the CreateApplication operation returned by the service.
Throws:
  `ApplicationNameRequiredException` - The minimum number of required application names was not specified.
  `InvalidApplicationNameException` - The application name was specified in an invalid format.
  `ApplicationAlreadyExistsException` - An application with the specified name already exists with the applicable IAM user or AWS account.
  `ApplicationLimitExceededException` - More applications were attempted to be created than are allowed.

#### createDeployment

    public CreateDeploymentResult createDeployment(CreateDeploymentRequest createDeploymentRequest)

Deploys an application revision through the specified deployment group.

Specified by:
  `createDeployment` in interface `AmazonCodeDeploy`
Parameters:
  `createDeploymentRequest` - Represents the input of a create deployment operation.
Returns:
  Result of the CreateDeployment operation returned by the service.
Throws:
  `ApplicationNameRequiredException` - The minimum number of required application names was not specified.
  `InvalidApplicationNameException` - The application name was specified in an invalid format.
  `ApplicationDoesNotExistException` - The application does not exist with the applicable IAM user or AWS account.
  `DeploymentGroupNameRequiredException` - The deployment group name was not specified.
  `InvalidDeploymentGroupNameException` - The deployment group name was specified in an invalid format.
  `DeploymentGroupDoesNotExistException` - The named deployment group does not exist with the applicable IAM user or AWS account.
  `RevisionRequiredException` - The revision ID was not specified.
  `RevisionDoesNotExistException` - The named revision does not exist with the applicable IAM user or AWS account.
  `InvalidRevisionException` - The revision was specified in an invalid format.
  `InvalidDeploymentConfigNameException` - The deployment configuration name was specified in an invalid format.
  `DeploymentConfigDoesNotExistException` - The deployment configuration does not exist with the applicable IAM user or AWS account.
  `DescriptionTooLongException` - The description is too long.
  `DeploymentLimitExceededException` - The number of allowed deployments was exceeded.
  `InvalidAutoRollbackConfigException` - The automatic rollback configuration was specified in an invalid format. For example, automatic rollback is enabled but an invalid triggering event type or no event types were listed.

#### createDeploymentConfig

    public CreateDeploymentConfigResult createDeploymentConfig(CreateDeploymentConfigRequest createDeploymentConfigRequest)

Creates a deployment configuration.

Specified by:
  `createDeploymentConfig` in interface `AmazonCodeDeploy`
Parameters:
  `createDeploymentConfigRequest` - Represents the input of a create deployment configuration operation.
Returns:
  Result of the CreateDeploymentConfig operation returned by the service.
Throws:
  `InvalidDeploymentConfigNameException` - The deployment configuration name was specified in an invalid format.
  `DeploymentConfigNameRequiredException` - The deployment configuration name was not specified.
  `DeploymentConfigAlreadyExistsException` - A deployment configuration with the specified name already exists with the applicable IAM user or AWS account.
  `InvalidMinimumHealthyHostValueException` - The minimum healthy instance value was specified in an invalid format.
  `DeploymentConfigLimitExceededException` - The deployment configurations limit was exceeded.

#### createDeploymentGroup

    public CreateDeploymentGroupResult createDeploymentGroup(CreateDeploymentGroupRequest createDeploymentGroupRequest)

Creates a deployment group to which application revisions will be deployed.

Specified by:
  `createDeploymentGroup` in interface `AmazonCodeDeploy`
Parameters:
  `createDeploymentGroupRequest` - Represents the input of a create deployment group operation.
Returns:
  Result of the CreateDeploymentGroup operation returned by the service.
Throws:
  `ApplicationNameRequiredException` - The minimum number of required application names was not specified.
  `InvalidApplicationNameException` - The application name was specified in an invalid format.
  `ApplicationDoesNotExistException` - The application does not exist with the applicable IAM user or AWS account.
  `DeploymentGroupNameRequiredException` - The deployment group name was not specified.
  `InvalidDeploymentGroupNameException` - The deployment group name was specified in an invalid format.
  `DeploymentGroupAlreadyExistsException` - A deployment group with the specified name already exists with the applicable IAM user or AWS account.
  `InvalidEC2TagException` - The tag was specified in an invalid format.
  `InvalidTagException` - The specified tag was specified in an invalid format.
  `InvalidAutoScalingGroupException` - The Auto Scaling group was specified in an invalid format or does not exist.
  `InvalidDeploymentConfigNameException` - The deployment configuration name was specified in an invalid format.
  `DeploymentConfigDoesNotExistException` - The deployment configuration does not exist with the applicable IAM user or AWS account.
  `RoleRequiredException` - The role ID was not specified.
  `InvalidRoleException` - The service role ARN was specified in an invalid format. Or, if an Auto Scaling group was specified, the specified service role does not grant the appropriate permissions to Auto Scaling.
  `DeploymentGroupLimitExceededException` - The deployment groups limit was exceeded.
  `LifecycleHookLimitExceededException` - The limit for lifecycle hooks was exceeded.
  `InvalidTriggerConfigException` - The trigger was specified in an invalid format.
  `TriggerTargetsLimitExceededException` - The maximum allowed number of triggers was exceeded.
  `InvalidAlarmConfigException` - The format of the alarm configuration is invalid. Possible causes include:

  - The alarm list is null.

  - The alarm object is null.

  - The alarm name is empty or null or exceeds the 255 character limit.

  - Two alarms with the same name have been specified.

  - The alarm configuration is enabled but the alarm list is empty.

  `AlarmsLimitExceededException` - The maximum number of alarms for a deployment group (10) was exceeded.
  `InvalidAutoRollbackConfigException` - The automatic rollback configuration was specified in an invalid format. For example, automatic rollback is enabled but an invalid triggering event type or no event types were listed.

#### deleteApplication

    public DeleteApplicationResult deleteApplication(DeleteApplicationRequest deleteApplicationRequest)

Deletes an application.

Specified by:
  `deleteApplication` in interface `AmazonCodeDeploy`
Parameters:
  `deleteApplicationRequest` - Represents the input of a delete application operation.
Returns:
  Result of the DeleteApplication operation returned by the service.
Throws:
  `ApplicationNameRequiredException` - The minimum number of required application names was not specified.
  `InvalidApplicationNameException` - The application name was specified in an invalid format.

#### deleteDeploymentConfig

    public DeleteDeploymentConfigResult deleteDeploymentConfig(DeleteDeploymentConfigRequest deleteDeploymentConfigRequest)

Deletes a deployment configuration.

<note>

A deployment configuration cannot be deleted if it is currently in use. Predefined configurations cannot be deleted.

</note>

Specified by:
  `deleteDeploymentConfig` in interface `AmazonCodeDeploy`
Parameters:
  `deleteDeploymentConfigRequest` - Represents the input of a delete deployment configuration operation.
Returns:
  Result of the DeleteDeploymentConfig operation returned by the service.
Throws:
  `InvalidDeploymentConfigNameException` - The deployment configuration name was specified in an invalid format.
  `DeploymentConfigNameRequiredException` - The deployment configuration name was not specified.
  `DeploymentConfigInUseException` - The deployment configuration is still in use.
  `InvalidOperationException` - An invalid operation was detected.

#### deleteDeploymentGroup

    public DeleteDeploymentGroupResult deleteDeploymentGroup(DeleteDeploymentGroupRequest deleteDeploymentGroupRequest)

Deletes a deployment group.

Specified by:
  `deleteDeploymentGroup` in interface `AmazonCodeDeploy`
Parameters:
  `deleteDeploymentGroupRequest` - Represents the input of a delete deployment group operation.
Returns:
  Result of the DeleteDeploymentGroup operation returned by the service.
Throws:
  `ApplicationNameRequiredException` - The minimum number of required application names was not specified.
  `InvalidApplicationNameException` - The application name was specified in an invalid format.
  `DeploymentGroupNameRequiredException` - The deployment group name was not specified.
  `InvalidDeploymentGroupNameException` - The deployment group name was specified in an invalid format.
  `InvalidRoleException` - The service role ARN was specified in an invalid format. Or, if an Auto Scaling group was specified, the specified service role does not grant the appropriate permissions to Auto Scaling.

#### deregisterOnPremisesInstance

    public DeregisterOnPremisesInstanceResult deregisterOnPremisesInstance(DeregisterOnPremisesInstanceRequest deregisterOnPremisesInstanceRequest)

Deregisters an on-premises instance.

Specified by:
  `deregisterOnPremisesInstance` in interface `AmazonCodeDeploy`
Parameters:
  `deregisterOnPremisesInstanceRequest` - Represents the input of a deregister on-premises instance operation.
Returns:
  Result of the DeregisterOnPremisesInstance operation returned by the service.
Throws:
  `InstanceNameRequiredException` - An on-premises instance name was not specified.
  `InvalidInstanceNameException` - The specified on-premises instance name was specified in an invalid format.

#### getApplication

    public GetApplicationResult getApplication(GetApplicationRequest getApplicationRequest)

Gets information about an application.

Specified by:
  `getApplication` in interface `AmazonCodeDeploy`
Parameters:
  `getApplicationRequest` - Represents the input of a get application operation.
Returns:
  Result of the GetApplication operation returned by the service.
Throws:
  `ApplicationNameRequiredException` - The minimum number of required application names was not specified.
  `InvalidApplicationNameException` - The application name was specified in an invalid format.
  `ApplicationDoesNotExistException` - The application does not exist with the applicable IAM user or AWS account.

#### getApplicationRevision

    public GetApplicationRevisionResult getApplicationRevision(GetApplicationRevisionRequest getApplicationRevisionRequest)

Gets information about an application revision.

Specified by:
  `getApplicationRevision` in interface `AmazonCodeDeploy`
Parameters:
  `getApplicationRevisionRequest` - Represents the input of a get application revision operation.
Returns:
  Result of the GetApplicationRevision operation returned by the service.
Throws:
  `ApplicationDoesNotExistException` - The application does not exist with the applicable IAM user or AWS account.
  `ApplicationNameRequiredException` - The minimum number of required application names was not specified.
  `InvalidApplicationNameException` - The application name was specified in an invalid format.
  `RevisionDoesNotExistException` - The named revision does not exist with the applicable IAM user or AWS account.
  `RevisionRequiredException` - The revision ID was not specified.
  `InvalidRevisionException` - The revision was specified in an invalid format.

#### getDeployment

    public GetDeploymentResult getDeployment(GetDeploymentRequest getDeploymentRequest)

Gets information about a deployment.

Specified by:
  `getDeployment` in interface `AmazonCodeDeploy`
Parameters:
  `getDeploymentRequest` - Represents the input of a get deployment operation.
Returns:
  Result of the GetDeployment operation returned by the service.
Throws:
  `DeploymentIdRequiredException` - At least one deployment ID must be specified.
  `InvalidDeploymentIdException` - At least one of the deployment IDs was specified in an invalid format.
  `DeploymentDoesNotExistException` - The deployment does not exist with the applicable IAM user or AWS account.

#### getDeploymentConfig

    public GetDeploymentConfigResult getDeploymentConfig(GetDeploymentConfigRequest getDeploymentConfigRequest)

Gets information about a deployment configuration.

Specified by:
  `getDeploymentConfig` in interface `AmazonCodeDeploy`
Parameters:
  `getDeploymentConfigRequest` - Represents the input of a get deployment configuration operation.
Returns:
  Result of the GetDeploymentConfig operation returned by the service.
Throws:
  `InvalidDeploymentConfigNameException` - The deployment configuration name was specified in an invalid format.
  `DeploymentConfigNameRequiredException` - The deployment configuration name was not specified.
  `DeploymentConfigDoesNotExistException` - The deployment configuration does not exist with the applicable IAM user or AWS account.

#### getDeploymentGroup

    public GetDeploymentGroupResult getDeploymentGroup(GetDeploymentGroupRequest getDeploymentGroupRequest)

Gets information about a deployment group.

Specified by:
  `getDeploymentGroup` in interface `AmazonCodeDeploy`
Parameters:
  `getDeploymentGroupRequest` - Represents the input of a get deployment group operation.
Returns:
  Result of the GetDeploymentGroup operation returned by the service.
Throws:
  `ApplicationNameRequiredException` - The minimum number of required application names was not specified.
  `InvalidApplicationNameException` - The application name was specified in an invalid format.
  `ApplicationDoesNotExistException` - The application does not exist with the applicable IAM user or AWS account.
  `DeploymentGroupNameRequiredException` - The deployment group name was not specified.
  `InvalidDeploymentGroupNameException` - The deployment group name was specified in an invalid format.
  `DeploymentGroupDoesNotExistException` - The named deployment group does not exist with the applicable IAM user or AWS account.

#### getDeploymentInstance

    public GetDeploymentInstanceResult getDeploymentInstance(GetDeploymentInstanceRequest getDeploymentInstanceRequest)

Gets information about an instance as part of a deployment.

Specified by:
  `getDeploymentInstance` in interface `AmazonCodeDeploy`
Parameters:
  `getDeploymentInstanceRequest` - Represents the input of a get deployment instance operation.
Returns:
  Result of the GetDeploymentInstance operation returned by the service.
Throws:
  `DeploymentIdRequiredException` - At least one deployment ID must be specified.
  `DeploymentDoesNotExistException` - The deployment does not exist with the applicable IAM user or AWS account.
  `InstanceIdRequiredException` - The instance ID was not specified.
  `InvalidDeploymentIdException` - At least one of the deployment IDs was specified in an invalid format.
  `InstanceDoesNotExistException` - The specified instance does not exist in the deployment group.
  `InvalidInstanceNameException` - The specified on-premises instance name was specified in an invalid format.

#### getOnPremisesInstance

    public GetOnPremisesInstanceResult getOnPremisesInstance(GetOnPremisesInstanceRequest getOnPremisesInstanceRequest)

Gets information about an on-premises instance.

Specified by:
  `getOnPremisesInstance` in interface `AmazonCodeDeploy`
Parameters:
  `getOnPremisesInstanceRequest` - Represents the input of a get on-premises instance operation.
Returns:
  Result of the GetOnPremisesInstance operation returned by the service.
Throws:
  `InstanceNameRequiredException` - An on-premises instance name was not specified.
  `InstanceNotRegisteredException` - The specified on-premises instance is not registered.
  `InvalidInstanceNameException` - The specified on-premises instance name was specified in an invalid format.

#### listApplicationRevisions

    public ListApplicationRevisionsResult listApplicationRevisions(ListApplicationRevisionsRequest listApplicationRevisionsRequest)

Lists information about revisions for an application.

Specified by:
  `listApplicationRevisions` in interface `AmazonCodeDeploy`
Parameters:
  `listApplicationRevisionsRequest` - Represents the input of a list application revisions operation.
Returns:
  Result of the ListApplicationRevisions operation returned by the service.
Throws:
  `ApplicationDoesNotExistException` - The application does not exist with the applicable IAM user or AWS account.
  `ApplicationNameRequiredException` - The minimum number of required application names was not specified.
  `InvalidApplicationNameException` - The application name was specified in an invalid format.
  `InvalidSortByException` - The column name to sort by is either not present or was specified in an invalid format.
  `InvalidSortOrderException` - The sort order was specified in an invalid format.
  `InvalidBucketNameFilterException` - The bucket name either doesn't exist or was specified in an invalid format.
  `InvalidKeyPrefixFilterException` - The specified key prefix filter was specified in an invalid format.
  `BucketNameFilterRequiredException` - A bucket name is required, but was not provided.
  `InvalidDeployedStateFilterException` - The deployed state filter was specified in an invalid format.
  `InvalidNextTokenException` - The next token was specified in an invalid format.

#### listApplications

    public ListApplicationsResult listApplications(ListApplicationsRequest listApplicationsRequest)

Lists the applications registered with the applicable IAM user or AWS account.

Specified by:
  `listApplications` in interface `AmazonCodeDeploy`
Parameters:
  `listApplicationsRequest` - Represents the input of a list applications operation.
Returns:
  Result of the ListApplications operation returned by the service.
Throws:
  `InvalidNextTokenException` - The next token was specified in an invalid format.

#### listApplications

    public ListApplicationsResult listApplications()

Description copied from interface: `AmazonCodeDeploy`
Simplified method form for invoking the ListApplications operation.

Specified by:
  `listApplications` in interface `AmazonCodeDeploy`
See Also:
  `AmazonCodeDeploy.listApplications(ListApplicationsRequest)`

#### listDeploymentConfigs

    public ListDeploymentConfigsResult listDeploymentConfigs(ListDeploymentConfigsRequest listDeploymentConfigsRequest)

Lists the deployment configurations with the applicable IAM user or AWS account.

Specified by:
  `listDeploymentConfigs` in interface `AmazonCodeDeploy`
Parameters:
  `listDeploymentConfigsRequest` - Represents the input of a list deployment configurations operation.
Returns:
  Result of the ListDeploymentConfigs operation returned by the service.
Throws:
  `InvalidNextTokenException` - The next token was specified in an invalid format.

#### listDeploymentConfigs

    public ListDeploymentConfigsResult listDeploymentConfigs()

Description copied from interface: `AmazonCodeDeploy`
Simplified method form for invoking the ListDeploymentConfigs operation.

Specified by:
  `listDeploymentConfigs` in interface `AmazonCodeDeploy`
See Also:
  `AmazonCodeDeploy.listDeploymentConfigs(ListDeploymentConfigsRequest)`

#### listDeploymentGroups

    public ListDeploymentGroupsResult listDeploymentGroups(ListDeploymentGroupsRequest listDeploymentGroupsRequest)

Lists the deployment groups for an application registered with the applicable IAM user or AWS account.

Specified by:
  `listDeploymentGroups` in interface `AmazonCodeDeploy`
Parameters:
  `listDeploymentGroupsRequest` - Represents the input of a list deployment groups operation.
Returns:
  Result of the ListDeploymentGroups operation returned by the service.
Throws:
  `ApplicationNameRequiredException` - The minimum number of required application names was not specified.
  `InvalidApplicationNameException` - The application name was specified in an invalid format.
  `ApplicationDoesNotExistException` - The application does not exist with the applicable IAM user or AWS account.
  `InvalidNextTokenException` - The next token was specified in an invalid format.

#### listDeploymentInstances

    public ListDeploymentInstancesResult listDeploymentInstances(ListDeploymentInstancesRequest listDeploymentInstancesRequest)

Lists the instance for a deployment associated with the applicable IAM user or AWS account.

Specified by:
  `listDeploymentInstances` in interface `AmazonCodeDeploy`
Parameters:
  `listDeploymentInstancesRequest` - Represents the input of a list deployment instances operation.
Returns:
  Result of the ListDeploymentInstances operation returned by the service.
Throws:
  `DeploymentIdRequiredException` - At least one deployment ID must be specified.
  `DeploymentDoesNotExistException` - The deployment does not exist with the applicable IAM user or AWS account.
  `DeploymentNotStartedException` - The specified deployment has not started.
  `InvalidNextTokenException` - The next token was specified in an invalid format.
  `InvalidDeploymentIdException` - At least one of the deployment IDs was specified in an invalid format.
  `InvalidInstanceStatusException` - The specified instance status does not exist.

#### listDeployments

    public ListDeploymentsResult listDeployments(ListDeploymentsRequest listDeploymentsRequest)

Lists the deployments in a deployment group for an application registered with the applicable IAM user or AWS account.

Specified by:
  `listDeployments` in interface `AmazonCodeDeploy`
Parameters:
  `listDeploymentsRequest` - Represents the input of a list deployments operation.
Returns:
  Result of the ListDeployments operation returned by the service.
Throws:
  `ApplicationNameRequiredException` - The minimum number of required application names was not specified.
  `InvalidApplicationNameException` - The application name was specified in an invalid format.
  `ApplicationDoesNotExistException` - The application does not exist with the applicable IAM user or AWS account.
  `InvalidDeploymentGroupNameException` - The deployment group name was specified in an invalid format.
  `DeploymentGroupDoesNotExistException` - The named deployment group does not exist with the applicable IAM user or AWS account.
  `DeploymentGroupNameRequiredException` - The deployment group name was not specified.
  `InvalidTimeRangeException` - The specified time range was specified in an invalid format.
  `InvalidDeploymentStatusException` - The specified deployment status doesn't exist or cannot be determined.
  `InvalidNextTokenException` - The next token was specified in an invalid format.

#### listDeployments

    public ListDeploymentsResult listDeployments()

Description copied from interface: `AmazonCodeDeploy`
Simplified method form for invoking the ListDeployments operation.

Specified by:
  `listDeployments` in interface `AmazonCodeDeploy`
See Also:
  `AmazonCodeDeploy.listDeployments(ListDeploymentsRequest)`

#### listOnPremisesInstances

    public ListOnPremisesInstancesResult listOnPremisesInstances(ListOnPremisesInstancesRequest listOnPremisesInstancesRequest)

Gets a list of names for one or more on-premises instances.

Unless otherwise specified, both registered and deregistered on-premises instance names will be listed. To list only registered or deregistered on-premises instance names, use the registration status parameter.

Specified by:
  `listOnPremisesInstances` in interface `AmazonCodeDeploy`
Parameters:
  `listOnPremisesInstancesRequest` - Represents the input of a list on-premises instances operation.
Returns:
  Result of the ListOnPremisesInstances operation returned by the service.
Throws:
  `InvalidRegistrationStatusException` - The registration status was specified in an invalid format.
  `InvalidTagFilterException` - The specified tag filter was specified in an invalid format.
  `InvalidNextTokenException` - The next token was specified in an invalid format.

#### listOnPremisesInstances

    public ListOnPremisesInstancesResult listOnPremisesInstances()

Description copied from interface: `AmazonCodeDeploy`
Simplified method form for invoking the ListOnPremisesInstances operation.

Specified by:
  `listOnPremisesInstances` in interface `AmazonCodeDeploy`
See Also:
  `AmazonCodeDeploy.listOnPremisesInstances(ListOnPremisesInstancesRequest)`

#### registerApplicationRevision

    public RegisterApplicationRevisionResult registerApplicationRevision(RegisterApplicationRevisionRequest registerApplicationRevisionRequest)

Registers with AWS CodeDeploy a revision for the specified application.

Specified by:
  `registerApplicationRevision` in interface `AmazonCodeDeploy`
Parameters:
  `registerApplicationRevisionRequest` - Represents the input of a register application revision operation.
Returns:
  Result of the RegisterApplicationRevision operation returned by the service.
Throws:
  `ApplicationDoesNotExistException` - The application does not exist with the applicable IAM user or AWS account.
  `ApplicationNameRequiredException` - The minimum number of required application names was not specified.
  `InvalidApplicationNameException` - The application name was specified in an invalid format.
  `DescriptionTooLongException` - The description is too long.
  `RevisionRequiredException` - The revision ID was not specified.
  `InvalidRevisionException` - The revision was specified in an invalid format.

#### registerOnPremisesInstance

    public RegisterOnPremisesInstanceResult registerOnPremisesInstance(RegisterOnPremisesInstanceRequest registerOnPremisesInstanceRequest)

Registers an on-premises instance.

Specified by:
  `registerOnPremisesInstance` in interface `AmazonCodeDeploy`
Parameters:
  `registerOnPremisesInstanceRequest` - Represents the input of the register on-premises instance operation.
Returns:
  Result of the RegisterOnPremisesInstance operation returned by the service.
Throws:
  `InstanceNameAlreadyRegisteredException` - The specified on-premises instance name is already registered.
  `IamUserArnAlreadyRegisteredException` - The specified IAM user ARN is already registered with an on-premises instance.
  `InstanceNameRequiredException` - An on-premises instance name was not specified.
  `IamUserArnRequiredException` - An IAM user ARN was not specified.
  `InvalidInstanceNameException` - The specified on-premises instance name was specified in an invalid format.
  `InvalidIamUserArnException` - The IAM user ARN was specified in an invalid format.

#### removeTagsFromOnPremisesInstances

    public RemoveTagsFromOnPremisesInstancesResult removeTagsFromOnPremisesInstances(RemoveTagsFromOnPremisesInstancesRequest removeTagsFromOnPremisesInstancesRequest)

Removes one or more tags from one or more on-premises instances.

Specified by:
  `removeTagsFromOnPremisesInstances` in interface `AmazonCodeDeploy`
Parameters:
  `removeTagsFromOnPremisesInstancesRequest` - Represents the input of a remove tags from on-premises instances operation.
Returns:
  Result of the RemoveTagsFromOnPremisesInstances operation returned by the service.
Throws:
  `InstanceNameRequiredException` - An on-premises instance name was not specified.
  `TagRequiredException` - A tag was not specified.
  `InvalidTagException` - The specified tag was specified in an invalid format.
  `TagLimitExceededException` - The maximum allowed number of tags was exceeded.
  `InstanceLimitExceededException` - The maximum number of allowed on-premises instances in a single call was exceeded.
  `InstanceNotRegisteredException` - The specified on-premises instance is not registered.

#### stopDeployment

    public StopDeploymentResult stopDeployment(StopDeploymentRequest stopDeploymentRequest)

Attempts to stop an ongoing deployment.

Specified by:
  `stopDeployment` in interface `AmazonCodeDeploy`
Parameters:
  `stopDeploymentRequest` - Represents the input of a stop deployment operation.
Returns:
  Result of the StopDeployment operation returned by the service.
Throws:
  `DeploymentIdRequiredException` - At least one deployment ID must be specified.
  `DeploymentDoesNotExistException` - The deployment does not exist with the applicable IAM user or AWS account.
  `DeploymentAlreadyCompletedException` - The deployment is already complete.
  `InvalidDeploymentIdException` - At least one of the deployment IDs was specified in an invalid format.

#### updateApplication

    public UpdateApplicationResult updateApplication(UpdateApplicationRequest updateApplicationRequest)

Changes the name of an application.

Specified by:
  `updateApplication` in interface `AmazonCodeDeploy`
Parameters:
  `updateApplicationRequest` - Represents the input of an update application operation.
Returns:
  Result of the UpdateApplication operation returned by the service.
Throws:
  `ApplicationNameRequiredException` - The minimum number of required application names was not specified.
  `InvalidApplicationNameException` - The application name was specified in an invalid format.
  `ApplicationAlreadyExistsException` - An application with the specified name already exists with the applicable IAM user or AWS account.
  `ApplicationDoesNotExistException` - The application does not exist with the applicable IAM user or AWS account.

#### updateApplication

    public UpdateApplicationResult updateApplication()

Description copied from interface: `AmazonCodeDeploy`
Simplified method form for invoking the UpdateApplication operation.

Specified by:
  `updateApplication` in interface `AmazonCodeDeploy`
See Also:
  `AmazonCodeDeploy.updateApplication(UpdateApplicationRequest)`

#### updateDeploymentGroup

    public UpdateDeploymentGroupResult updateDeploymentGroup(UpdateDeploymentGroupRequest updateDeploymentGroupRequest)

Changes information about a deployment group.

Specified by:
  `updateDeploymentGroup` in interface `AmazonCodeDeploy`
Parameters:
  `updateDeploymentGroupRequest` - Represents the input of an update deployment group operation.
Returns:
  Result of the UpdateDeploymentGroup operation returned by the service.
Throws:
  `ApplicationNameRequiredException` - The minimum number of required application names was not specified.
  `InvalidApplicationNameException` - The application name was specified in an invalid format.
  `ApplicationDoesNotExistException` - The application does not exist with the applicable IAM user or AWS account.
  `InvalidDeploymentGroupNameException` - The deployment group name was specified in an invalid format.
  `DeploymentGroupAlreadyExistsException` - A deployment group with the specified name already exists with the applicable IAM user or AWS account.
  `DeploymentGroupNameRequiredException` - The deployment group name was not specified.
  `DeploymentGroupDoesNotExistException` - The named deployment group does not exist with the applicable IAM user or AWS account.
  `InvalidEC2TagException` - The tag was specified in an invalid format.
  `InvalidTagException` - The specified tag was specified in an invalid format.
  `InvalidAutoScalingGroupException` - The Auto Scaling group was specified in an invalid format or does not exist.
  `InvalidDeploymentConfigNameException` - The deployment configuration name was specified in an invalid format.
  `DeploymentConfigDoesNotExistException` - The deployment configuration does not exist with the applicable IAM user or AWS account.
  `InvalidRoleException` - The service role ARN was specified in an invalid format. Or, if an Auto Scaling group was specified, the specified service role does not grant the appropriate permissions to Auto Scaling.
  `LifecycleHookLimitExceededException` - The limit for lifecycle hooks was exceeded.
  `InvalidTriggerConfigException` - The trigger was specified in an invalid format.
  `TriggerTargetsLimitExceededException` - The maximum allowed number of triggers was exceeded.
  `InvalidAlarmConfigException` - The format of the alarm configuration is invalid. Possible causes include:

  - The alarm list is null.

  - The alarm object is null.

  - The alarm name is empty or null or exceeds the 255 character limit.

  - Two alarms with the same name have been specified.

  - The alarm configuration is enabled but the alarm list is empty.

  `AlarmsLimitExceededException` - The maximum number of alarms for a deployment group (10) was exceeded.
  `InvalidAutoRollbackConfigException` - The automatic rollback configuration was specified in an invalid format. For example, automatic rollback is enabled but an invalid triggering event type or no event types were listed.

#### getCachedResponseMetadata

    public ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request)

Returns additional metadata for a previously executed successful, request, typically used for debugging issues where a service isn't acting as expected. This data isn't considered part of the result data returned by an operation, so it's available through this separate, diagnostic interface.

Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic information for an executed request, you should use this method to retrieve it as soon as possible after executing the request.

Specified by:
  `getCachedResponseMetadata` in interface `AmazonCodeDeploy`
Parameters:
  `request` - The originally executed request
Returns:
  The response metadata for the specified request, or null if none is available.

#### waiters

    public AmazonCodeDeployWaiters waiters()

Specified by:
  `waiters` in interface `AmazonCodeDeploy`