com.amazonaws.services.codebuild

## Class AWSCodeBuildAsyncClient

- java.lang.Object
- - com.amazonaws.AmazonWebServiceClient
  - - com.amazonaws.services.codebuild.AWSCodeBuildClient
    - - com.amazonaws.services.codebuild.AWSCodeBuildAsyncClient

All Implemented Interfaces:
  AWSCodeBuild, AWSCodeBuildAsync

    @ThreadSafe
    public class AWSCodeBuildAsyncClient
    extends AWSCodeBuildClient
    implements AWSCodeBuildAsync

Client for accessing AWS CodeBuild asynchronously. Each asynchronous method will return a Java Future object representing the asynchronous operation; overloads which accept an `AsyncHandler` can be used to receive notification when an asynchronous operation completes.

<fullname>AWS CodeBuild</fullname>

AWS CodeBuild is a fully-managed build service in the cloud. AWS CodeBuild compiles your source code, runs unit tests, and produces artifacts that are ready to deploy. AWS CodeBuild eliminates the need to provision, manage, and scale your own build servers. It provides prepackaged build environments for the most popular programming languages and build tools such as Apach Maven, Gradle, and more. You can also fully customize build environments in AWS CodeBuild to use your own build tools. AWS CodeBuild scales automatically to meet peak build requests, and you pay only for the build time you consume. For more information about AWS CodeBuild, see the AWS CodeBuild User Guide.

AWS CodeBuild supports these operations:

- `BatchGetProjects`: Gets information about one or more build projects. A build project defines how AWS CodeBuild will run a build. This includes information such as where to get the source code to build, the build environment to use, the build commands to run, and where to store the build output. A build environment represents a combination of operating system, programming language runtime, and tools that AWS CodeBuild will use to run a build. Also, you can add tags to build projects to help manage your resources and costs.

- `CreateProject`: Creates a build project.

- `DeleteProject`: Deletes a build project.

- `ListProjects`: Gets a list of build project names, with each build project name representing a single build project.

- `UpdateProject`: Changes the settings of an existing build project.

- `BatchGetBuilds`: Gets information about one or more builds.

- `ListBuilds`: Gets a list of build IDs, with each build ID representing a single build.

- `ListBuildsForProject`: Gets a list of build IDs for the specified build project, with each build ID representing a single build.

- `StartBuild`: Starts running a build.

- `StopBuild`: Attempts to stop running a build.

- `ListCuratedEnvironmentImages`: Gets information about Docker images that are managed by AWS CodeBuild.

### Field Summary

### Fields inherited from class com.amazonaws.services.codebuild.AWSCodeBuildClient

`configFactory`

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

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

### Fields inherited from interface com.amazonaws.services.codebuild.AWSCodeBuild

`ENDPOINT_PREFIX`

### Constructor Summary

Constructors
Constructor and Description
`AWSCodeBuildAsyncClient()` Constructs a new asynchronous client to invoke service methods on AWS CodeBuild.
`AWSCodeBuildAsyncClient(AWSCredentials awsCredentials)` Constructs a new asynchronous client to invoke service methods on AWS CodeBuild using the specified AWS account credentials.
`AWSCodeBuildAsyncClient(AWSCredentials awsCredentials, ClientConfiguration clientConfiguration, ExecutorService executorService)` Constructs a new asynchronous client to invoke service methods on AWS CodeBuild using the specified AWS account credentials, executor service, and client configuration options.
`AWSCodeBuildAsyncClient(AWSCredentials awsCredentials, ExecutorService executorService)` Constructs a new asynchronous client to invoke service methods on AWS CodeBuild using the specified AWS account credentials and executor service.
`AWSCodeBuildAsyncClient(AWSCredentialsProvider awsCredentialsProvider)` Constructs a new asynchronous client to invoke service methods on AWS CodeBuild using the specified AWS account credentials provider.
`AWSCodeBuildAsyncClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration)` Constructs a new asynchronous client to invoke service methods on AWS CodeBuild using the provided AWS account credentials provider and client configuration options.
`AWSCodeBuildAsyncClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration, ExecutorService executorService)` Constructs a new asynchronous client to invoke service methods on AWS CodeBuild using the specified AWS account credentials provider, executor service, and client configuration options.
`AWSCodeBuildAsyncClient(AWSCredentialsProvider awsCredentialsProvider, ExecutorService executorService)` Constructs a new asynchronous client to invoke service methods on AWS CodeBuild using the specified AWS account credentials provider and executor service.
`AWSCodeBuildAsyncClient(ClientConfiguration clientConfiguration)` Constructs a new asynchronous client to invoke service methods on AWS CodeBuild.

### Method Summary

All Methods Instance Methods Concrete Methods
`Future<BatchGetBuildsResult>` `batchGetBuildsAsync(BatchGetBuildsRequest request)` Gets information about one or more builds.
`Future<BatchGetBuildsResult>` `batchGetBuildsAsync(BatchGetBuildsRequest request, AsyncHandler<BatchGetBuildsRequest,BatchGetBuildsResult> asyncHandler)` Gets information about one or more builds.
`Future<BatchGetProjectsResult>` `batchGetProjectsAsync(BatchGetProjectsRequest request)` Gets information about one or more build projects.
`Future<BatchGetProjectsResult>` `batchGetProjectsAsync(BatchGetProjectsRequest request, AsyncHandler<BatchGetProjectsRequest,BatchGetProjectsResult> asyncHandler)` Gets information about one or more build projects.
`Future<CreateProjectResult>` `createProjectAsync(CreateProjectRequest request)` Creates a build project.
`Future<CreateProjectResult>` `createProjectAsync(CreateProjectRequest request, AsyncHandler<CreateProjectRequest,CreateProjectResult> asyncHandler)` Creates a build project.
`Future<DeleteProjectResult>` `deleteProjectAsync(DeleteProjectRequest request)` Deletes a build project.
`Future<DeleteProjectResult>` `deleteProjectAsync(DeleteProjectRequest request, AsyncHandler<DeleteProjectRequest,DeleteProjectResult> asyncHandler)` Deletes a build project.
`ExecutorService` `getExecutorService()` Returns the executor service used by this client to execute async requests.
`Future<ListBuildsResult>` `listBuildsAsync(ListBuildsRequest request)` Gets a list of build IDs, with each build ID representing a single build.
`Future<ListBuildsResult>` `listBuildsAsync(ListBuildsRequest request, AsyncHandler<ListBuildsRequest,ListBuildsResult> asyncHandler)` Gets a list of build IDs, with each build ID representing a single build.
`Future<ListBuildsForProjectResult>` `listBuildsForProjectAsync(ListBuildsForProjectRequest request)` Gets a list of build IDs for the specified build project, with each build ID representing a single build.
`Future<ListBuildsForProjectResult>` `listBuildsForProjectAsync(ListBuildsForProjectRequest request, AsyncHandler<ListBuildsForProjectRequest,ListBuildsForProjectResult> asyncHandler)` Gets a list of build IDs for the specified build project, with each build ID representing a single build.
`Future<ListCuratedEnvironmentImagesResult>` `listCuratedEnvironmentImagesAsync(ListCuratedEnvironmentImagesRequest request)` Gets information about Docker images that are managed by AWS CodeBuild.
`Future<ListCuratedEnvironmentImagesResult>` `listCuratedEnvironmentImagesAsync(ListCuratedEnvironmentImagesRequest request, AsyncHandler<ListCuratedEnvironmentImagesRequest,ListCuratedEnvironmentImagesResult> asyncHandler)` Gets information about Docker images that are managed by AWS CodeBuild.
`Future<ListProjectsResult>` `listProjectsAsync(ListProjectsRequest request)` Gets a list of build project names, with each build project name representing a single build project.
`Future<ListProjectsResult>` `listProjectsAsync(ListProjectsRequest request, AsyncHandler<ListProjectsRequest,ListProjectsResult> asyncHandler)` Gets a list of build project names, with each build project name representing a single build project.
`void` `shutdown()` Shuts down the client, releasing all managed resources.
`Future<StartBuildResult>` `startBuildAsync(StartBuildRequest request)` Starts running a build.
`Future<StartBuildResult>` `startBuildAsync(StartBuildRequest request, AsyncHandler<StartBuildRequest,StartBuildResult> asyncHandler)` Starts running a build.
`Future<StopBuildResult>` `stopBuildAsync(StopBuildRequest request)` Attempts to stop running a build.
`Future<StopBuildResult>` `stopBuildAsync(StopBuildRequest request, AsyncHandler<StopBuildRequest,StopBuildResult> asyncHandler)` Attempts to stop running a build.
`Future<UpdateProjectResult>` `updateProjectAsync(UpdateProjectRequest request)` Changes the settings of an existing build project.
`Future<UpdateProjectResult>` `updateProjectAsync(UpdateProjectRequest request, AsyncHandler<UpdateProjectRequest,UpdateProjectResult> asyncHandler)` Changes the settings of an existing build project.

### Methods inherited from class com.amazonaws.services.codebuild.AWSCodeBuildClient

`batchGetBuilds, batchGetProjects, createProject, deleteProject, getCachedResponseMetadata, listBuilds, listBuildsForProject, listCuratedEnvironmentImages, listProjects, startBuild, stopBuild, updateProject`

### 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, 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.codebuild.AWSCodeBuild

`batchGetBuilds, batchGetProjects, createProject, deleteProject, getCachedResponseMetadata, listBuilds, listBuildsForProject, listCuratedEnvironmentImages, listProjects, setEndpoint, setRegion, startBuild, stopBuild, updateProject`

### Constructor Detail

#### AWSCodeBuildAsyncClient

    public AWSCodeBuildAsyncClient()

Constructs a new asynchronous client to invoke service methods on AWS CodeBuild. 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
- Credential profiles file at the default location (~/.aws/credentials) shared by all AWS SDKs and the AWS CLI
- Instance profile credentials delivered through the Amazon EC2 metadata service

Asynchronous methods are delegated to a fixed-size thread pool containing 50 threads (to match the default maximum number of concurrent connections to the service).

See Also:
  `DefaultAWSCredentialsProviderChain`, `Executors.newFixedThreadPool(int)`

#### AWSCodeBuildAsyncClient

    public AWSCodeBuildAsyncClient(ClientConfiguration clientConfiguration)

Constructs a new asynchronous client to invoke service methods on AWS CodeBuild. 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
- Credential profiles file at the default location (~/.aws/credentials) shared by all AWS SDKs and the AWS CLI
- Instance profile credentials delivered through the Amazon EC2 metadata service

Asynchronous methods are delegated to a fixed-size thread pool containing a number of threads equal to the maximum number of concurrent connections configured via `ClientConfiguration.getMaxConnections()`.

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

#### AWSCodeBuildAsyncClient

    public AWSCodeBuildAsyncClient(AWSCredentials awsCredentials)

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

Asynchronous methods are delegated to a fixed-size thread pool containing 50 threads (to match the default maximum number of concurrent connections to the service).

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

#### AWSCodeBuildAsyncClient

    public AWSCodeBuildAsyncClient(AWSCredentials awsCredentials,
                                   ExecutorService executorService)

Constructs a new asynchronous client to invoke service methods on AWS CodeBuild using the specified AWS account credentials and executor service. Default client settings will be used.

Parameters:
  `awsCredentials` - The AWS credentials (access key ID and secret key) to use when authenticating with AWS services.
  `executorService` - The executor service by which all asynchronous requests will be executed.

#### AWSCodeBuildAsyncClient

    public AWSCodeBuildAsyncClient(AWSCredentials awsCredentials,
                                   ClientConfiguration clientConfiguration,
                                   ExecutorService executorService)

Constructs a new asynchronous client to invoke service methods on AWS CodeBuild using the specified AWS account credentials, executor service, and client configuration options.

Parameters:
  `awsCredentials` - The AWS credentials (access key ID and secret key) to use when authenticating with AWS services.
  `clientConfiguration` - Client configuration options (ex: max retry limit, proxy settings, etc).
  `executorService` - The executor service by which all asynchronous requests will be executed.

#### AWSCodeBuildAsyncClient

    public AWSCodeBuildAsyncClient(AWSCredentialsProvider awsCredentialsProvider)

Constructs a new asynchronous client to invoke service methods on AWS CodeBuild using the specified AWS account credentials provider. Default client settings will be used.

Asynchronous methods are delegated to a fixed-size thread pool containing 50 threads (to match the default maximum number of concurrent connections to the service).

Parameters:
  `awsCredentialsProvider` - The AWS credentials provider which will provide credentials to authenticate requests with AWS services.
See Also:
  `Executors.newFixedThreadPool(int)`

#### AWSCodeBuildAsyncClient

    public AWSCodeBuildAsyncClient(AWSCredentialsProvider awsCredentialsProvider,
                                   ClientConfiguration clientConfiguration)

Constructs a new asynchronous client to invoke service methods on AWS CodeBuild using the provided AWS account credentials provider and client configuration options.

Asynchronous methods are delegated to a fixed-size thread pool containing a number of threads equal to the maximum number of concurrent connections configured via `ClientConfiguration.getMaxConnections()`.

Parameters:
  `awsCredentialsProvider` - The AWS credentials provider which will provide credentials to authenticate requests with AWS services.
  `clientConfiguration` - Client configuration options (ex: max retry limit, proxy settings, etc).
See Also:
  `DefaultAWSCredentialsProviderChain`, `Executors.newFixedThreadPool(int)`

#### AWSCodeBuildAsyncClient

    public AWSCodeBuildAsyncClient(AWSCredentialsProvider awsCredentialsProvider,
                                   ExecutorService executorService)

Constructs a new asynchronous client to invoke service methods on AWS CodeBuild using the specified AWS account credentials provider and executor service. Default client settings will be used.

Parameters:
  `awsCredentialsProvider` - The AWS credentials provider which will provide credentials to authenticate requests with AWS services.
  `executorService` - The executor service by which all asynchronous requests will be executed.

#### AWSCodeBuildAsyncClient

    public AWSCodeBuildAsyncClient(AWSCredentialsProvider awsCredentialsProvider,
                                   ClientConfiguration clientConfiguration,
                                   ExecutorService executorService)

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

Parameters:
  `awsCredentialsProvider` - The AWS credentials provider which will provide credentials to authenticate requests with AWS services.
  `clientConfiguration` - Client configuration options (ex: max retry limit, proxy settings, etc).
  `executorService` - The executor service by which all asynchronous requests will be executed.

### Method Detail

#### getExecutorService

    public ExecutorService getExecutorService()

Returns the executor service used by this client to execute async requests.

Returns:
  The executor service used by this client to execute async requests.

#### batchGetBuildsAsync

    public Future<BatchGetBuildsResult> batchGetBuildsAsync(BatchGetBuildsRequest request)

Description copied from interface: `AWSCodeBuildAsync`

Gets information about one or more builds.

Specified by:
  `batchGetBuildsAsync` in interface `AWSCodeBuildAsync`
Returns:
  A Java Future containing the result of the BatchGetBuilds operation returned by the service.

#### batchGetBuildsAsync

    public Future<BatchGetBuildsResult> batchGetBuildsAsync(BatchGetBuildsRequest request,
                                                            AsyncHandler<BatchGetBuildsRequest,BatchGetBuildsResult> asyncHandler)

Description copied from interface: `AWSCodeBuildAsync`

Gets information about one or more builds.

Specified by:
  `batchGetBuildsAsync` in interface `AWSCodeBuildAsync`
  `asyncHandler` - Asynchronous callback handler for events in the lifecycle of the request. Users can provide an implementation of the callback methods in this interface to receive notification of successful or unsuccessful completion of the operation.
Returns:
  A Java Future containing the result of the BatchGetBuilds operation returned by the service.

#### batchGetProjectsAsync

    public Future<BatchGetProjectsResult> batchGetProjectsAsync(BatchGetProjectsRequest request)

Description copied from interface: `AWSCodeBuildAsync`

Gets information about one or more build projects.

Specified by:
  `batchGetProjectsAsync` in interface `AWSCodeBuildAsync`
Returns:
  A Java Future containing the result of the BatchGetProjects operation returned by the service.

#### batchGetProjectsAsync

    public Future<BatchGetProjectsResult> batchGetProjectsAsync(BatchGetProjectsRequest request,
                                                                AsyncHandler<BatchGetProjectsRequest,BatchGetProjectsResult> asyncHandler)

Description copied from interface: `AWSCodeBuildAsync`

Gets information about one or more build projects.

Specified by:
  `batchGetProjectsAsync` in interface `AWSCodeBuildAsync`
  `asyncHandler` - Asynchronous callback handler for events in the lifecycle of the request. Users can provide an implementation of the callback methods in this interface to receive notification of successful or unsuccessful completion of the operation.
Returns:
  A Java Future containing the result of the BatchGetProjects operation returned by the service.

#### createProjectAsync

    public Future<CreateProjectResult> createProjectAsync(CreateProjectRequest request)

Description copied from interface: `AWSCodeBuildAsync`

Creates a build project.

Specified by:
  `createProjectAsync` in interface `AWSCodeBuildAsync`
Returns:
  A Java Future containing the result of the CreateProject operation returned by the service.

#### createProjectAsync

    public Future<CreateProjectResult> createProjectAsync(CreateProjectRequest request,
                                                          AsyncHandler<CreateProjectRequest,CreateProjectResult> asyncHandler)

Description copied from interface: `AWSCodeBuildAsync`

Creates a build project.

Specified by:
  `createProjectAsync` in interface `AWSCodeBuildAsync`
  `asyncHandler` - Asynchronous callback handler for events in the lifecycle of the request. Users can provide an implementation of the callback methods in this interface to receive notification of successful or unsuccessful completion of the operation.
Returns:
  A Java Future containing the result of the CreateProject operation returned by the service.

#### deleteProjectAsync

    public Future<DeleteProjectResult> deleteProjectAsync(DeleteProjectRequest request)

Description copied from interface: `AWSCodeBuildAsync`

Deletes a build project.

Specified by:
  `deleteProjectAsync` in interface `AWSCodeBuildAsync`
Returns:
  A Java Future containing the result of the DeleteProject operation returned by the service.

#### deleteProjectAsync

    public Future<DeleteProjectResult> deleteProjectAsync(DeleteProjectRequest request,
                                                          AsyncHandler<DeleteProjectRequest,DeleteProjectResult> asyncHandler)

Description copied from interface: `AWSCodeBuildAsync`

Deletes a build project.

Specified by:
  `deleteProjectAsync` in interface `AWSCodeBuildAsync`
  `asyncHandler` - Asynchronous callback handler for events in the lifecycle of the request. Users can provide an implementation of the callback methods in this interface to receive notification of successful or unsuccessful completion of the operation.
Returns:
  A Java Future containing the result of the DeleteProject operation returned by the service.

#### listBuildsAsync

    public Future<ListBuildsResult> listBuildsAsync(ListBuildsRequest request)

Description copied from interface: `AWSCodeBuildAsync`

Gets a list of build IDs, with each build ID representing a single build.

Specified by:
  `listBuildsAsync` in interface `AWSCodeBuildAsync`
Returns:
  A Java Future containing the result of the ListBuilds operation returned by the service.

#### listBuildsAsync

    public Future<ListBuildsResult> listBuildsAsync(ListBuildsRequest request,
                                                    AsyncHandler<ListBuildsRequest,ListBuildsResult> asyncHandler)

Description copied from interface: `AWSCodeBuildAsync`

Gets a list of build IDs, with each build ID representing a single build.

Specified by:
  `listBuildsAsync` in interface `AWSCodeBuildAsync`
  `asyncHandler` - Asynchronous callback handler for events in the lifecycle of the request. Users can provide an implementation of the callback methods in this interface to receive notification of successful or unsuccessful completion of the operation.
Returns:
  A Java Future containing the result of the ListBuilds operation returned by the service.

#### listBuildsForProjectAsync

    public Future<ListBuildsForProjectResult> listBuildsForProjectAsync(ListBuildsForProjectRequest request)

Description copied from interface: `AWSCodeBuildAsync`

Gets a list of build IDs for the specified build project, with each build ID representing a single build.

Specified by:
  `listBuildsForProjectAsync` in interface `AWSCodeBuildAsync`
Returns:
  A Java Future containing the result of the ListBuildsForProject operation returned by the service.

#### listBuildsForProjectAsync

    public Future<ListBuildsForProjectResult> listBuildsForProjectAsync(ListBuildsForProjectRequest request,
                                                                        AsyncHandler<ListBuildsForProjectRequest,ListBuildsForProjectResult> asyncHandler)

Description copied from interface: `AWSCodeBuildAsync`

Gets a list of build IDs for the specified build project, with each build ID representing a single build.

Specified by:
  `listBuildsForProjectAsync` in interface `AWSCodeBuildAsync`
  `asyncHandler` - Asynchronous callback handler for events in the lifecycle of the request. Users can provide an implementation of the callback methods in this interface to receive notification of successful or unsuccessful completion of the operation.
Returns:
  A Java Future containing the result of the ListBuildsForProject operation returned by the service.

#### listCuratedEnvironmentImagesAsync

    public Future<ListCuratedEnvironmentImagesResult> listCuratedEnvironmentImagesAsync(ListCuratedEnvironmentImagesRequest request)

Description copied from interface: `AWSCodeBuildAsync`

Gets information about Docker images that are managed by AWS CodeBuild.

Specified by:
  `listCuratedEnvironmentImagesAsync` in interface `AWSCodeBuildAsync`
Returns:
  A Java Future containing the result of the ListCuratedEnvironmentImages operation returned by the service.

#### listCuratedEnvironmentImagesAsync

    public Future<ListCuratedEnvironmentImagesResult> listCuratedEnvironmentImagesAsync(ListCuratedEnvironmentImagesRequest request,
                                                                                        AsyncHandler<ListCuratedEnvironmentImagesRequest,ListCuratedEnvironmentImagesResult> asyncHandler)

Description copied from interface: `AWSCodeBuildAsync`

Gets information about Docker images that are managed by AWS CodeBuild.

Specified by:
  `listCuratedEnvironmentImagesAsync` in interface `AWSCodeBuildAsync`
  `asyncHandler` - Asynchronous callback handler for events in the lifecycle of the request. Users can provide an implementation of the callback methods in this interface to receive notification of successful or unsuccessful completion of the operation.
Returns:
  A Java Future containing the result of the ListCuratedEnvironmentImages operation returned by the service.

#### listProjectsAsync

    public Future<ListProjectsResult> listProjectsAsync(ListProjectsRequest request)

Description copied from interface: `AWSCodeBuildAsync`

Gets a list of build project names, with each build project name representing a single build project.

Specified by:
  `listProjectsAsync` in interface `AWSCodeBuildAsync`
Returns:
  A Java Future containing the result of the ListProjects operation returned by the service.

#### listProjectsAsync

    public Future<ListProjectsResult> listProjectsAsync(ListProjectsRequest request,
                                                        AsyncHandler<ListProjectsRequest,ListProjectsResult> asyncHandler)

Description copied from interface: `AWSCodeBuildAsync`

Gets a list of build project names, with each build project name representing a single build project.

Specified by:
  `listProjectsAsync` in interface `AWSCodeBuildAsync`
  `asyncHandler` - Asynchronous callback handler for events in the lifecycle of the request. Users can provide an implementation of the callback methods in this interface to receive notification of successful or unsuccessful completion of the operation.
Returns:
  A Java Future containing the result of the ListProjects operation returned by the service.

#### startBuildAsync

    public Future<StartBuildResult> startBuildAsync(StartBuildRequest request)

Description copied from interface: `AWSCodeBuildAsync`

Starts running a build.

Specified by:
  `startBuildAsync` in interface `AWSCodeBuildAsync`
Returns:
  A Java Future containing the result of the StartBuild operation returned by the service.

#### startBuildAsync

    public Future<StartBuildResult> startBuildAsync(StartBuildRequest request,
                                                    AsyncHandler<StartBuildRequest,StartBuildResult> asyncHandler)

Description copied from interface: `AWSCodeBuildAsync`

Starts running a build.

Specified by:
  `startBuildAsync` in interface `AWSCodeBuildAsync`
  `asyncHandler` - Asynchronous callback handler for events in the lifecycle of the request. Users can provide an implementation of the callback methods in this interface to receive notification of successful or unsuccessful completion of the operation.
Returns:
  A Java Future containing the result of the StartBuild operation returned by the service.

#### stopBuildAsync

    public Future<StopBuildResult> stopBuildAsync(StopBuildRequest request)

Description copied from interface: `AWSCodeBuildAsync`

Attempts to stop running a build.

<note>

Completed builds cannot be stopped.

</note>

Specified by:
  `stopBuildAsync` in interface `AWSCodeBuildAsync`
Returns:
  A Java Future containing the result of the StopBuild operation returned by the service.

#### stopBuildAsync

    public Future<StopBuildResult> stopBuildAsync(StopBuildRequest request,
                                                  AsyncHandler<StopBuildRequest,StopBuildResult> asyncHandler)

Description copied from interface: `AWSCodeBuildAsync`

Attempts to stop running a build.

<note>

Completed builds cannot be stopped.

</note>

Specified by:
  `stopBuildAsync` in interface `AWSCodeBuildAsync`
  `asyncHandler` - Asynchronous callback handler for events in the lifecycle of the request. Users can provide an implementation of the callback methods in this interface to receive notification of successful or unsuccessful completion of the operation.
Returns:
  A Java Future containing the result of the StopBuild operation returned by the service.

#### updateProjectAsync

    public Future<UpdateProjectResult> updateProjectAsync(UpdateProjectRequest request)

Description copied from interface: `AWSCodeBuildAsync`

Changes the settings of an existing build project.

Specified by:
  `updateProjectAsync` in interface `AWSCodeBuildAsync`
Returns:
  A Java Future containing the result of the UpdateProject operation returned by the service.

#### updateProjectAsync

    public Future<UpdateProjectResult> updateProjectAsync(UpdateProjectRequest request,
                                                          AsyncHandler<UpdateProjectRequest,UpdateProjectResult> asyncHandler)

Description copied from interface: `AWSCodeBuildAsync`

Changes the settings of an existing build project.

Specified by:
  `updateProjectAsync` in interface `AWSCodeBuildAsync`
  `asyncHandler` - Asynchronous callback handler for events in the lifecycle of the request. Users can provide an implementation of the callback methods in this interface to receive notification of successful or unsuccessful completion of the operation.
Returns:
  A Java Future containing the result of the UpdateProject operation returned by the service.

#### shutdown

    public void shutdown()

Shuts down the client, releasing all managed resources. This includes forcibly terminating all pending asynchronous service calls. Clients who wish to give pending asynchronous service calls time to complete should call `getExecutorService().shutdown()` followed by `getExecutorService().awaitTermination()` prior to calling this method.

Specified by:
  `shutdown` in interface `AWSCodeBuild`
Overrides:
  `shutdown` in class `AmazonWebServiceClient`