
com.amazonaws.services.codebuild.model.Build Maven / Gradle / Ivy
/*
* Copyright 2017-2022 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
* the License. A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
* and limitations under the License.
*/
package com.amazonaws.services.codebuild.model;
import java.io.Serializable;
import javax.annotation.Generated;
import com.amazonaws.protocol.StructuredPojo;
import com.amazonaws.protocol.ProtocolMarshaller;
/**
*
* Information about a build.
*
*
* @see AWS API
* Documentation
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class Build implements Serializable, Cloneable, StructuredPojo {
/**
*
* The unique ID for the build.
*
*/
private String id;
/**
*
* The Amazon Resource Name (ARN) of the build.
*
*/
private String arn;
/**
*
* The number of the build. For each project, the buildNumber
of its first build is 1
. The
* buildNumber
of each subsequent build is incremented by 1
. If a build is deleted, the
* buildNumber
of other builds does not change.
*
*/
private Long buildNumber;
/**
*
* When the build process started, expressed in Unix time format.
*
*/
private java.util.Date startTime;
/**
*
* When the build process ended, expressed in Unix time format.
*
*/
private java.util.Date endTime;
/**
*
* The current build phase.
*
*/
private String currentPhase;
/**
*
* The current status of the build. Valid values include:
*
*
* -
*
* FAILED
: The build failed.
*
*
* -
*
* FAULT
: The build faulted.
*
*
* -
*
* IN_PROGRESS
: The build is still in progress.
*
*
* -
*
* STOPPED
: The build stopped.
*
*
* -
*
* SUCCEEDED
: The build succeeded.
*
*
* -
*
* TIMED_OUT
: The build timed out.
*
*
*
*/
private String buildStatus;
/**
*
* Any version identifier for the version of the source code to be built. If sourceVersion
is specified
* at the project level, then this sourceVersion
(at the build level) takes precedence.
*
*
* For more information, see Source Version Sample
* with CodeBuild in the CodeBuild User Guide.
*
*/
private String sourceVersion;
/**
*
* An identifier for the version of this build's source code.
*
*
* -
*
* For CodeCommit, GitHub, GitHub Enterprise, and BitBucket, the commit ID.
*
*
* -
*
* For CodePipeline, the source revision provided by CodePipeline.
*
*
* -
*
* For Amazon S3, this does not apply.
*
*
*
*/
private String resolvedSourceVersion;
/**
*
* The name of the CodeBuild project.
*
*/
private String projectName;
/**
*
* Information about all previous build phases that are complete and information about any current build phase that
* is not yet complete.
*
*/
private java.util.List phases;
/**
*
* Information about the source code to be built.
*
*/
private ProjectSource source;
/**
*
* An array of ProjectSource
objects.
*
*/
private java.util.List secondarySources;
/**
*
* An array of ProjectSourceVersion
objects. Each ProjectSourceVersion
must be one of:
*
*
* -
*
* For CodeCommit: the commit ID, branch, or Git tag to use.
*
*
* -
*
* For GitHub: the commit ID, pull request ID, branch name, or tag name that corresponds to the version of the
* source code you want to build. If a pull request ID is specified, it must use the format
* pr/pull-request-ID
(for example, pr/25
). If a branch name is specified, the branch's
* HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used.
*
*
* -
*
* For Bitbucket: the commit ID, branch name, or tag name that corresponds to the version of the source code you
* want to build. If a branch name is specified, the branch's HEAD commit ID is used. If not specified, the default
* branch's HEAD commit ID is used.
*
*
* -
*
* For Amazon S3: the version ID of the object that represents the build input ZIP file to use.
*
*
*
*/
private java.util.List secondarySourceVersions;
/**
*
* Information about the output artifacts for the build.
*
*/
private BuildArtifacts artifacts;
/**
*
* An array of ProjectArtifacts
objects.
*
*/
private java.util.List secondaryArtifacts;
/**
*
* Information about the cache for the build.
*
*/
private ProjectCache cache;
/**
*
* Information about the build environment for this build.
*
*/
private ProjectEnvironment environment;
/**
*
* The name of a service role used for this build.
*
*/
private String serviceRole;
/**
*
* Information about the build's logs in CloudWatch Logs.
*
*/
private LogsLocation logs;
/**
*
* How long, in minutes, for CodeBuild to wait before timing out this build if it does not get marked as completed.
*
*/
private Integer timeoutInMinutes;
/**
*
* The number of minutes a build is allowed to be queued before it times out.
*
*/
private Integer queuedTimeoutInMinutes;
/**
*
* Whether the build is complete. True if complete; otherwise, false.
*
*/
private Boolean buildComplete;
/**
*
* The entity that started the build. Valid values include:
*
*
* -
*
* If CodePipeline started the build, the pipeline's name (for example, codepipeline/my-demo-pipeline
).
*
*
* -
*
* If an IAM user started the build, the user's name (for example, MyUserName
).
*
*
* -
*
* If the Jenkins plugin for CodeBuild started the build, the string CodeBuild-Jenkins-Plugin
.
*
*
*
*/
private String initiator;
/**
*
* If your CodeBuild project accesses resources in an Amazon VPC, you provide this parameter that identifies the VPC
* ID and the list of security group IDs and subnet IDs. The security groups and subnets must belong to the same
* VPC. You must provide at least one security group and one subnet ID.
*
*/
private VpcConfig vpcConfig;
/**
*
* Describes a network interface.
*
*/
private NetworkInterface networkInterface;
/**
*
* The Key Management Service customer master key (CMK) to be used for encrypting the build output artifacts.
*
*
*
* You can use a cross-account KMS key to encrypt the build output artifacts if your service role has permission to
* that key.
*
*
*
* You can specify either the Amazon Resource Name (ARN) of the CMK or, if available, the CMK's alias (using the
* format alias/<alias-name>
).
*
*/
private String encryptionKey;
/**
*
* A list of exported environment variables for this build.
*
*
* Exported environment variables are used in conjunction with CodePipeline to export environment variables from the
* current build stage to subsequent stages in the pipeline. For more information, see Working with
* variables in the CodePipeline User Guide.
*
*/
private java.util.List exportedEnvironmentVariables;
/**
*
* An array of the ARNs associated with this build's reports.
*
*/
private java.util.List reportArns;
/**
*
* An array of ProjectFileSystemLocation
objects for a CodeBuild build project. A
* ProjectFileSystemLocation
object specifies the identifier
, location
,
* mountOptions
, mountPoint
, and type
of a file system created using Amazon
* Elastic File System.
*
*/
private java.util.List fileSystemLocations;
/**
*
* Contains information about the debug session for this build.
*
*/
private DebugSession debugSession;
/**
*
* The ARN of the batch build that this build is a member of, if applicable.
*
*/
private String buildBatchArn;
/**
*
* The unique ID for the build.
*
*
* @param id
* The unique ID for the build.
*/
public void setId(String id) {
this.id = id;
}
/**
*
* The unique ID for the build.
*
*
* @return The unique ID for the build.
*/
public String getId() {
return this.id;
}
/**
*
* The unique ID for the build.
*
*
* @param id
* The unique ID for the build.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withId(String id) {
setId(id);
return this;
}
/**
*
* The Amazon Resource Name (ARN) of the build.
*
*
* @param arn
* The Amazon Resource Name (ARN) of the build.
*/
public void setArn(String arn) {
this.arn = arn;
}
/**
*
* The Amazon Resource Name (ARN) of the build.
*
*
* @return The Amazon Resource Name (ARN) of the build.
*/
public String getArn() {
return this.arn;
}
/**
*
* The Amazon Resource Name (ARN) of the build.
*
*
* @param arn
* The Amazon Resource Name (ARN) of the build.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withArn(String arn) {
setArn(arn);
return this;
}
/**
*
* The number of the build. For each project, the buildNumber
of its first build is 1
. The
* buildNumber
of each subsequent build is incremented by 1
. If a build is deleted, the
* buildNumber
of other builds does not change.
*
*
* @param buildNumber
* The number of the build. For each project, the buildNumber
of its first build is
* 1
. The buildNumber
of each subsequent build is incremented by 1
. If
* a build is deleted, the buildNumber
of other builds does not change.
*/
public void setBuildNumber(Long buildNumber) {
this.buildNumber = buildNumber;
}
/**
*
* The number of the build. For each project, the buildNumber
of its first build is 1
. The
* buildNumber
of each subsequent build is incremented by 1
. If a build is deleted, the
* buildNumber
of other builds does not change.
*
*
* @return The number of the build. For each project, the buildNumber
of its first build is
* 1
. The buildNumber
of each subsequent build is incremented by 1
.
* If a build is deleted, the buildNumber
of other builds does not change.
*/
public Long getBuildNumber() {
return this.buildNumber;
}
/**
*
* The number of the build. For each project, the buildNumber
of its first build is 1
. The
* buildNumber
of each subsequent build is incremented by 1
. If a build is deleted, the
* buildNumber
of other builds does not change.
*
*
* @param buildNumber
* The number of the build. For each project, the buildNumber
of its first build is
* 1
. The buildNumber
of each subsequent build is incremented by 1
. If
* a build is deleted, the buildNumber
of other builds does not change.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withBuildNumber(Long buildNumber) {
setBuildNumber(buildNumber);
return this;
}
/**
*
* When the build process started, expressed in Unix time format.
*
*
* @param startTime
* When the build process started, expressed in Unix time format.
*/
public void setStartTime(java.util.Date startTime) {
this.startTime = startTime;
}
/**
*
* When the build process started, expressed in Unix time format.
*
*
* @return When the build process started, expressed in Unix time format.
*/
public java.util.Date getStartTime() {
return this.startTime;
}
/**
*
* When the build process started, expressed in Unix time format.
*
*
* @param startTime
* When the build process started, expressed in Unix time format.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withStartTime(java.util.Date startTime) {
setStartTime(startTime);
return this;
}
/**
*
* When the build process ended, expressed in Unix time format.
*
*
* @param endTime
* When the build process ended, expressed in Unix time format.
*/
public void setEndTime(java.util.Date endTime) {
this.endTime = endTime;
}
/**
*
* When the build process ended, expressed in Unix time format.
*
*
* @return When the build process ended, expressed in Unix time format.
*/
public java.util.Date getEndTime() {
return this.endTime;
}
/**
*
* When the build process ended, expressed in Unix time format.
*
*
* @param endTime
* When the build process ended, expressed in Unix time format.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withEndTime(java.util.Date endTime) {
setEndTime(endTime);
return this;
}
/**
*
* The current build phase.
*
*
* @param currentPhase
* The current build phase.
*/
public void setCurrentPhase(String currentPhase) {
this.currentPhase = currentPhase;
}
/**
*
* The current build phase.
*
*
* @return The current build phase.
*/
public String getCurrentPhase() {
return this.currentPhase;
}
/**
*
* The current build phase.
*
*
* @param currentPhase
* The current build phase.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withCurrentPhase(String currentPhase) {
setCurrentPhase(currentPhase);
return this;
}
/**
*
* The current status of the build. Valid values include:
*
*
* -
*
* FAILED
: The build failed.
*
*
* -
*
* FAULT
: The build faulted.
*
*
* -
*
* IN_PROGRESS
: The build is still in progress.
*
*
* -
*
* STOPPED
: The build stopped.
*
*
* -
*
* SUCCEEDED
: The build succeeded.
*
*
* -
*
* TIMED_OUT
: The build timed out.
*
*
*
*
* @param buildStatus
* The current status of the build. Valid values include:
*
* -
*
* FAILED
: The build failed.
*
*
* -
*
* FAULT
: The build faulted.
*
*
* -
*
* IN_PROGRESS
: The build is still in progress.
*
*
* -
*
* STOPPED
: The build stopped.
*
*
* -
*
* SUCCEEDED
: The build succeeded.
*
*
* -
*
* TIMED_OUT
: The build timed out.
*
*
* @see StatusType
*/
public void setBuildStatus(String buildStatus) {
this.buildStatus = buildStatus;
}
/**
*
* The current status of the build. Valid values include:
*
*
* -
*
* FAILED
: The build failed.
*
*
* -
*
* FAULT
: The build faulted.
*
*
* -
*
* IN_PROGRESS
: The build is still in progress.
*
*
* -
*
* STOPPED
: The build stopped.
*
*
* -
*
* SUCCEEDED
: The build succeeded.
*
*
* -
*
* TIMED_OUT
: The build timed out.
*
*
*
*
* @return The current status of the build. Valid values include:
*
* -
*
* FAILED
: The build failed.
*
*
* -
*
* FAULT
: The build faulted.
*
*
* -
*
* IN_PROGRESS
: The build is still in progress.
*
*
* -
*
* STOPPED
: The build stopped.
*
*
* -
*
* SUCCEEDED
: The build succeeded.
*
*
* -
*
* TIMED_OUT
: The build timed out.
*
*
* @see StatusType
*/
public String getBuildStatus() {
return this.buildStatus;
}
/**
*
* The current status of the build. Valid values include:
*
*
* -
*
* FAILED
: The build failed.
*
*
* -
*
* FAULT
: The build faulted.
*
*
* -
*
* IN_PROGRESS
: The build is still in progress.
*
*
* -
*
* STOPPED
: The build stopped.
*
*
* -
*
* SUCCEEDED
: The build succeeded.
*
*
* -
*
* TIMED_OUT
: The build timed out.
*
*
*
*
* @param buildStatus
* The current status of the build. Valid values include:
*
* -
*
* FAILED
: The build failed.
*
*
* -
*
* FAULT
: The build faulted.
*
*
* -
*
* IN_PROGRESS
: The build is still in progress.
*
*
* -
*
* STOPPED
: The build stopped.
*
*
* -
*
* SUCCEEDED
: The build succeeded.
*
*
* -
*
* TIMED_OUT
: The build timed out.
*
*
* @return Returns a reference to this object so that method calls can be chained together.
* @see StatusType
*/
public Build withBuildStatus(String buildStatus) {
setBuildStatus(buildStatus);
return this;
}
/**
*
* The current status of the build. Valid values include:
*
*
* -
*
* FAILED
: The build failed.
*
*
* -
*
* FAULT
: The build faulted.
*
*
* -
*
* IN_PROGRESS
: The build is still in progress.
*
*
* -
*
* STOPPED
: The build stopped.
*
*
* -
*
* SUCCEEDED
: The build succeeded.
*
*
* -
*
* TIMED_OUT
: The build timed out.
*
*
*
*
* @param buildStatus
* The current status of the build. Valid values include:
*
* -
*
* FAILED
: The build failed.
*
*
* -
*
* FAULT
: The build faulted.
*
*
* -
*
* IN_PROGRESS
: The build is still in progress.
*
*
* -
*
* STOPPED
: The build stopped.
*
*
* -
*
* SUCCEEDED
: The build succeeded.
*
*
* -
*
* TIMED_OUT
: The build timed out.
*
*
* @see StatusType
*/
public void setBuildStatus(StatusType buildStatus) {
withBuildStatus(buildStatus);
}
/**
*
* The current status of the build. Valid values include:
*
*
* -
*
* FAILED
: The build failed.
*
*
* -
*
* FAULT
: The build faulted.
*
*
* -
*
* IN_PROGRESS
: The build is still in progress.
*
*
* -
*
* STOPPED
: The build stopped.
*
*
* -
*
* SUCCEEDED
: The build succeeded.
*
*
* -
*
* TIMED_OUT
: The build timed out.
*
*
*
*
* @param buildStatus
* The current status of the build. Valid values include:
*
* -
*
* FAILED
: The build failed.
*
*
* -
*
* FAULT
: The build faulted.
*
*
* -
*
* IN_PROGRESS
: The build is still in progress.
*
*
* -
*
* STOPPED
: The build stopped.
*
*
* -
*
* SUCCEEDED
: The build succeeded.
*
*
* -
*
* TIMED_OUT
: The build timed out.
*
*
* @return Returns a reference to this object so that method calls can be chained together.
* @see StatusType
*/
public Build withBuildStatus(StatusType buildStatus) {
this.buildStatus = buildStatus.toString();
return this;
}
/**
*
* Any version identifier for the version of the source code to be built. If sourceVersion
is specified
* at the project level, then this sourceVersion
(at the build level) takes precedence.
*
*
* For more information, see Source Version Sample
* with CodeBuild in the CodeBuild User Guide.
*
*
* @param sourceVersion
* Any version identifier for the version of the source code to be built. If sourceVersion
is
* specified at the project level, then this sourceVersion
(at the build level) takes
* precedence.
*
* For more information, see Source Version
* Sample with CodeBuild in the CodeBuild User Guide.
*/
public void setSourceVersion(String sourceVersion) {
this.sourceVersion = sourceVersion;
}
/**
*
* Any version identifier for the version of the source code to be built. If sourceVersion
is specified
* at the project level, then this sourceVersion
(at the build level) takes precedence.
*
*
* For more information, see Source Version Sample
* with CodeBuild in the CodeBuild User Guide.
*
*
* @return Any version identifier for the version of the source code to be built. If sourceVersion
is
* specified at the project level, then this sourceVersion
(at the build level) takes
* precedence.
*
* For more information, see Source Version
* Sample with CodeBuild in the CodeBuild User Guide.
*/
public String getSourceVersion() {
return this.sourceVersion;
}
/**
*
* Any version identifier for the version of the source code to be built. If sourceVersion
is specified
* at the project level, then this sourceVersion
(at the build level) takes precedence.
*
*
* For more information, see Source Version Sample
* with CodeBuild in the CodeBuild User Guide.
*
*
* @param sourceVersion
* Any version identifier for the version of the source code to be built. If sourceVersion
is
* specified at the project level, then this sourceVersion
(at the build level) takes
* precedence.
*
* For more information, see Source Version
* Sample with CodeBuild in the CodeBuild User Guide.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withSourceVersion(String sourceVersion) {
setSourceVersion(sourceVersion);
return this;
}
/**
*
* An identifier for the version of this build's source code.
*
*
* -
*
* For CodeCommit, GitHub, GitHub Enterprise, and BitBucket, the commit ID.
*
*
* -
*
* For CodePipeline, the source revision provided by CodePipeline.
*
*
* -
*
* For Amazon S3, this does not apply.
*
*
*
*
* @param resolvedSourceVersion
* An identifier for the version of this build's source code.
*
* -
*
* For CodeCommit, GitHub, GitHub Enterprise, and BitBucket, the commit ID.
*
*
* -
*
* For CodePipeline, the source revision provided by CodePipeline.
*
*
* -
*
* For Amazon S3, this does not apply.
*
*
*/
public void setResolvedSourceVersion(String resolvedSourceVersion) {
this.resolvedSourceVersion = resolvedSourceVersion;
}
/**
*
* An identifier for the version of this build's source code.
*
*
* -
*
* For CodeCommit, GitHub, GitHub Enterprise, and BitBucket, the commit ID.
*
*
* -
*
* For CodePipeline, the source revision provided by CodePipeline.
*
*
* -
*
* For Amazon S3, this does not apply.
*
*
*
*
* @return An identifier for the version of this build's source code.
*
* -
*
* For CodeCommit, GitHub, GitHub Enterprise, and BitBucket, the commit ID.
*
*
* -
*
* For CodePipeline, the source revision provided by CodePipeline.
*
*
* -
*
* For Amazon S3, this does not apply.
*
*
*/
public String getResolvedSourceVersion() {
return this.resolvedSourceVersion;
}
/**
*
* An identifier for the version of this build's source code.
*
*
* -
*
* For CodeCommit, GitHub, GitHub Enterprise, and BitBucket, the commit ID.
*
*
* -
*
* For CodePipeline, the source revision provided by CodePipeline.
*
*
* -
*
* For Amazon S3, this does not apply.
*
*
*
*
* @param resolvedSourceVersion
* An identifier for the version of this build's source code.
*
* -
*
* For CodeCommit, GitHub, GitHub Enterprise, and BitBucket, the commit ID.
*
*
* -
*
* For CodePipeline, the source revision provided by CodePipeline.
*
*
* -
*
* For Amazon S3, this does not apply.
*
*
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withResolvedSourceVersion(String resolvedSourceVersion) {
setResolvedSourceVersion(resolvedSourceVersion);
return this;
}
/**
*
* The name of the CodeBuild project.
*
*
* @param projectName
* The name of the CodeBuild project.
*/
public void setProjectName(String projectName) {
this.projectName = projectName;
}
/**
*
* The name of the CodeBuild project.
*
*
* @return The name of the CodeBuild project.
*/
public String getProjectName() {
return this.projectName;
}
/**
*
* The name of the CodeBuild project.
*
*
* @param projectName
* The name of the CodeBuild project.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withProjectName(String projectName) {
setProjectName(projectName);
return this;
}
/**
*
* Information about all previous build phases that are complete and information about any current build phase that
* is not yet complete.
*
*
* @return Information about all previous build phases that are complete and information about any current build
* phase that is not yet complete.
*/
public java.util.List getPhases() {
return phases;
}
/**
*
* Information about all previous build phases that are complete and information about any current build phase that
* is not yet complete.
*
*
* @param phases
* Information about all previous build phases that are complete and information about any current build
* phase that is not yet complete.
*/
public void setPhases(java.util.Collection phases) {
if (phases == null) {
this.phases = null;
return;
}
this.phases = new java.util.ArrayList(phases);
}
/**
*
* Information about all previous build phases that are complete and information about any current build phase that
* is not yet complete.
*
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setPhases(java.util.Collection)} or {@link #withPhases(java.util.Collection)} if you want to override the
* existing values.
*
*
* @param phases
* Information about all previous build phases that are complete and information about any current build
* phase that is not yet complete.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withPhases(BuildPhase... phases) {
if (this.phases == null) {
setPhases(new java.util.ArrayList(phases.length));
}
for (BuildPhase ele : phases) {
this.phases.add(ele);
}
return this;
}
/**
*
* Information about all previous build phases that are complete and information about any current build phase that
* is not yet complete.
*
*
* @param phases
* Information about all previous build phases that are complete and information about any current build
* phase that is not yet complete.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withPhases(java.util.Collection phases) {
setPhases(phases);
return this;
}
/**
*
* Information about the source code to be built.
*
*
* @param source
* Information about the source code to be built.
*/
public void setSource(ProjectSource source) {
this.source = source;
}
/**
*
* Information about the source code to be built.
*
*
* @return Information about the source code to be built.
*/
public ProjectSource getSource() {
return this.source;
}
/**
*
* Information about the source code to be built.
*
*
* @param source
* Information about the source code to be built.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withSource(ProjectSource source) {
setSource(source);
return this;
}
/**
*
* An array of ProjectSource
objects.
*
*
* @return An array of ProjectSource
objects.
*/
public java.util.List getSecondarySources() {
return secondarySources;
}
/**
*
* An array of ProjectSource
objects.
*
*
* @param secondarySources
* An array of ProjectSource
objects.
*/
public void setSecondarySources(java.util.Collection secondarySources) {
if (secondarySources == null) {
this.secondarySources = null;
return;
}
this.secondarySources = new java.util.ArrayList(secondarySources);
}
/**
*
* An array of ProjectSource
objects.
*
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setSecondarySources(java.util.Collection)} or {@link #withSecondarySources(java.util.Collection)} if you
* want to override the existing values.
*
*
* @param secondarySources
* An array of ProjectSource
objects.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withSecondarySources(ProjectSource... secondarySources) {
if (this.secondarySources == null) {
setSecondarySources(new java.util.ArrayList(secondarySources.length));
}
for (ProjectSource ele : secondarySources) {
this.secondarySources.add(ele);
}
return this;
}
/**
*
* An array of ProjectSource
objects.
*
*
* @param secondarySources
* An array of ProjectSource
objects.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withSecondarySources(java.util.Collection secondarySources) {
setSecondarySources(secondarySources);
return this;
}
/**
*
* An array of ProjectSourceVersion
objects. Each ProjectSourceVersion
must be one of:
*
*
* -
*
* For CodeCommit: the commit ID, branch, or Git tag to use.
*
*
* -
*
* For GitHub: the commit ID, pull request ID, branch name, or tag name that corresponds to the version of the
* source code you want to build. If a pull request ID is specified, it must use the format
* pr/pull-request-ID
(for example, pr/25
). If a branch name is specified, the branch's
* HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used.
*
*
* -
*
* For Bitbucket: the commit ID, branch name, or tag name that corresponds to the version of the source code you
* want to build. If a branch name is specified, the branch's HEAD commit ID is used. If not specified, the default
* branch's HEAD commit ID is used.
*
*
* -
*
* For Amazon S3: the version ID of the object that represents the build input ZIP file to use.
*
*
*
*
* @return An array of ProjectSourceVersion
objects. Each ProjectSourceVersion
must be one
* of:
*
* -
*
* For CodeCommit: the commit ID, branch, or Git tag to use.
*
*
* -
*
* For GitHub: the commit ID, pull request ID, branch name, or tag name that corresponds to the version of
* the source code you want to build. If a pull request ID is specified, it must use the format
* pr/pull-request-ID
(for example, pr/25
). If a branch name is specified, the
* branch's HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used.
*
*
* -
*
* For Bitbucket: the commit ID, branch name, or tag name that corresponds to the version of the source code
* you want to build. If a branch name is specified, the branch's HEAD commit ID is used. If not specified,
* the default branch's HEAD commit ID is used.
*
*
* -
*
* For Amazon S3: the version ID of the object that represents the build input ZIP file to use.
*
*
*/
public java.util.List getSecondarySourceVersions() {
return secondarySourceVersions;
}
/**
*
* An array of ProjectSourceVersion
objects. Each ProjectSourceVersion
must be one of:
*
*
* -
*
* For CodeCommit: the commit ID, branch, or Git tag to use.
*
*
* -
*
* For GitHub: the commit ID, pull request ID, branch name, or tag name that corresponds to the version of the
* source code you want to build. If a pull request ID is specified, it must use the format
* pr/pull-request-ID
(for example, pr/25
). If a branch name is specified, the branch's
* HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used.
*
*
* -
*
* For Bitbucket: the commit ID, branch name, or tag name that corresponds to the version of the source code you
* want to build. If a branch name is specified, the branch's HEAD commit ID is used. If not specified, the default
* branch's HEAD commit ID is used.
*
*
* -
*
* For Amazon S3: the version ID of the object that represents the build input ZIP file to use.
*
*
*
*
* @param secondarySourceVersions
* An array of ProjectSourceVersion
objects. Each ProjectSourceVersion
must be one
* of:
*
* -
*
* For CodeCommit: the commit ID, branch, or Git tag to use.
*
*
* -
*
* For GitHub: the commit ID, pull request ID, branch name, or tag name that corresponds to the version of
* the source code you want to build. If a pull request ID is specified, it must use the format
* pr/pull-request-ID
(for example, pr/25
). If a branch name is specified, the
* branch's HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used.
*
*
* -
*
* For Bitbucket: the commit ID, branch name, or tag name that corresponds to the version of the source code
* you want to build. If a branch name is specified, the branch's HEAD commit ID is used. If not specified,
* the default branch's HEAD commit ID is used.
*
*
* -
*
* For Amazon S3: the version ID of the object that represents the build input ZIP file to use.
*
*
*/
public void setSecondarySourceVersions(java.util.Collection secondarySourceVersions) {
if (secondarySourceVersions == null) {
this.secondarySourceVersions = null;
return;
}
this.secondarySourceVersions = new java.util.ArrayList(secondarySourceVersions);
}
/**
*
* An array of ProjectSourceVersion
objects. Each ProjectSourceVersion
must be one of:
*
*
* -
*
* For CodeCommit: the commit ID, branch, or Git tag to use.
*
*
* -
*
* For GitHub: the commit ID, pull request ID, branch name, or tag name that corresponds to the version of the
* source code you want to build. If a pull request ID is specified, it must use the format
* pr/pull-request-ID
(for example, pr/25
). If a branch name is specified, the branch's
* HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used.
*
*
* -
*
* For Bitbucket: the commit ID, branch name, or tag name that corresponds to the version of the source code you
* want to build. If a branch name is specified, the branch's HEAD commit ID is used. If not specified, the default
* branch's HEAD commit ID is used.
*
*
* -
*
* For Amazon S3: the version ID of the object that represents the build input ZIP file to use.
*
*
*
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setSecondarySourceVersions(java.util.Collection)} or
* {@link #withSecondarySourceVersions(java.util.Collection)} if you want to override the existing values.
*
*
* @param secondarySourceVersions
* An array of ProjectSourceVersion
objects. Each ProjectSourceVersion
must be one
* of:
*
* -
*
* For CodeCommit: the commit ID, branch, or Git tag to use.
*
*
* -
*
* For GitHub: the commit ID, pull request ID, branch name, or tag name that corresponds to the version of
* the source code you want to build. If a pull request ID is specified, it must use the format
* pr/pull-request-ID
(for example, pr/25
). If a branch name is specified, the
* branch's HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used.
*
*
* -
*
* For Bitbucket: the commit ID, branch name, or tag name that corresponds to the version of the source code
* you want to build. If a branch name is specified, the branch's HEAD commit ID is used. If not specified,
* the default branch's HEAD commit ID is used.
*
*
* -
*
* For Amazon S3: the version ID of the object that represents the build input ZIP file to use.
*
*
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withSecondarySourceVersions(ProjectSourceVersion... secondarySourceVersions) {
if (this.secondarySourceVersions == null) {
setSecondarySourceVersions(new java.util.ArrayList(secondarySourceVersions.length));
}
for (ProjectSourceVersion ele : secondarySourceVersions) {
this.secondarySourceVersions.add(ele);
}
return this;
}
/**
*
* An array of ProjectSourceVersion
objects. Each ProjectSourceVersion
must be one of:
*
*
* -
*
* For CodeCommit: the commit ID, branch, or Git tag to use.
*
*
* -
*
* For GitHub: the commit ID, pull request ID, branch name, or tag name that corresponds to the version of the
* source code you want to build. If a pull request ID is specified, it must use the format
* pr/pull-request-ID
(for example, pr/25
). If a branch name is specified, the branch's
* HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used.
*
*
* -
*
* For Bitbucket: the commit ID, branch name, or tag name that corresponds to the version of the source code you
* want to build. If a branch name is specified, the branch's HEAD commit ID is used. If not specified, the default
* branch's HEAD commit ID is used.
*
*
* -
*
* For Amazon S3: the version ID of the object that represents the build input ZIP file to use.
*
*
*
*
* @param secondarySourceVersions
* An array of ProjectSourceVersion
objects. Each ProjectSourceVersion
must be one
* of:
*
* -
*
* For CodeCommit: the commit ID, branch, or Git tag to use.
*
*
* -
*
* For GitHub: the commit ID, pull request ID, branch name, or tag name that corresponds to the version of
* the source code you want to build. If a pull request ID is specified, it must use the format
* pr/pull-request-ID
(for example, pr/25
). If a branch name is specified, the
* branch's HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used.
*
*
* -
*
* For Bitbucket: the commit ID, branch name, or tag name that corresponds to the version of the source code
* you want to build. If a branch name is specified, the branch's HEAD commit ID is used. If not specified,
* the default branch's HEAD commit ID is used.
*
*
* -
*
* For Amazon S3: the version ID of the object that represents the build input ZIP file to use.
*
*
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withSecondarySourceVersions(java.util.Collection secondarySourceVersions) {
setSecondarySourceVersions(secondarySourceVersions);
return this;
}
/**
*
* Information about the output artifacts for the build.
*
*
* @param artifacts
* Information about the output artifacts for the build.
*/
public void setArtifacts(BuildArtifacts artifacts) {
this.artifacts = artifacts;
}
/**
*
* Information about the output artifacts for the build.
*
*
* @return Information about the output artifacts for the build.
*/
public BuildArtifacts getArtifacts() {
return this.artifacts;
}
/**
*
* Information about the output artifacts for the build.
*
*
* @param artifacts
* Information about the output artifacts for the build.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withArtifacts(BuildArtifacts artifacts) {
setArtifacts(artifacts);
return this;
}
/**
*
* An array of ProjectArtifacts
objects.
*
*
* @return An array of ProjectArtifacts
objects.
*/
public java.util.List getSecondaryArtifacts() {
return secondaryArtifacts;
}
/**
*
* An array of ProjectArtifacts
objects.
*
*
* @param secondaryArtifacts
* An array of ProjectArtifacts
objects.
*/
public void setSecondaryArtifacts(java.util.Collection secondaryArtifacts) {
if (secondaryArtifacts == null) {
this.secondaryArtifacts = null;
return;
}
this.secondaryArtifacts = new java.util.ArrayList(secondaryArtifacts);
}
/**
*
* An array of ProjectArtifacts
objects.
*
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setSecondaryArtifacts(java.util.Collection)} or {@link #withSecondaryArtifacts(java.util.Collection)} if
* you want to override the existing values.
*
*
* @param secondaryArtifacts
* An array of ProjectArtifacts
objects.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withSecondaryArtifacts(BuildArtifacts... secondaryArtifacts) {
if (this.secondaryArtifacts == null) {
setSecondaryArtifacts(new java.util.ArrayList(secondaryArtifacts.length));
}
for (BuildArtifacts ele : secondaryArtifacts) {
this.secondaryArtifacts.add(ele);
}
return this;
}
/**
*
* An array of ProjectArtifacts
objects.
*
*
* @param secondaryArtifacts
* An array of ProjectArtifacts
objects.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withSecondaryArtifacts(java.util.Collection secondaryArtifacts) {
setSecondaryArtifacts(secondaryArtifacts);
return this;
}
/**
*
* Information about the cache for the build.
*
*
* @param cache
* Information about the cache for the build.
*/
public void setCache(ProjectCache cache) {
this.cache = cache;
}
/**
*
* Information about the cache for the build.
*
*
* @return Information about the cache for the build.
*/
public ProjectCache getCache() {
return this.cache;
}
/**
*
* Information about the cache for the build.
*
*
* @param cache
* Information about the cache for the build.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withCache(ProjectCache cache) {
setCache(cache);
return this;
}
/**
*
* Information about the build environment for this build.
*
*
* @param environment
* Information about the build environment for this build.
*/
public void setEnvironment(ProjectEnvironment environment) {
this.environment = environment;
}
/**
*
* Information about the build environment for this build.
*
*
* @return Information about the build environment for this build.
*/
public ProjectEnvironment getEnvironment() {
return this.environment;
}
/**
*
* Information about the build environment for this build.
*
*
* @param environment
* Information about the build environment for this build.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withEnvironment(ProjectEnvironment environment) {
setEnvironment(environment);
return this;
}
/**
*
* The name of a service role used for this build.
*
*
* @param serviceRole
* The name of a service role used for this build.
*/
public void setServiceRole(String serviceRole) {
this.serviceRole = serviceRole;
}
/**
*
* The name of a service role used for this build.
*
*
* @return The name of a service role used for this build.
*/
public String getServiceRole() {
return this.serviceRole;
}
/**
*
* The name of a service role used for this build.
*
*
* @param serviceRole
* The name of a service role used for this build.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withServiceRole(String serviceRole) {
setServiceRole(serviceRole);
return this;
}
/**
*
* Information about the build's logs in CloudWatch Logs.
*
*
* @param logs
* Information about the build's logs in CloudWatch Logs.
*/
public void setLogs(LogsLocation logs) {
this.logs = logs;
}
/**
*
* Information about the build's logs in CloudWatch Logs.
*
*
* @return Information about the build's logs in CloudWatch Logs.
*/
public LogsLocation getLogs() {
return this.logs;
}
/**
*
* Information about the build's logs in CloudWatch Logs.
*
*
* @param logs
* Information about the build's logs in CloudWatch Logs.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withLogs(LogsLocation logs) {
setLogs(logs);
return this;
}
/**
*
* How long, in minutes, for CodeBuild to wait before timing out this build if it does not get marked as completed.
*
*
* @param timeoutInMinutes
* How long, in minutes, for CodeBuild to wait before timing out this build if it does not get marked as
* completed.
*/
public void setTimeoutInMinutes(Integer timeoutInMinutes) {
this.timeoutInMinutes = timeoutInMinutes;
}
/**
*
* How long, in minutes, for CodeBuild to wait before timing out this build if it does not get marked as completed.
*
*
* @return How long, in minutes, for CodeBuild to wait before timing out this build if it does not get marked as
* completed.
*/
public Integer getTimeoutInMinutes() {
return this.timeoutInMinutes;
}
/**
*
* How long, in minutes, for CodeBuild to wait before timing out this build if it does not get marked as completed.
*
*
* @param timeoutInMinutes
* How long, in minutes, for CodeBuild to wait before timing out this build if it does not get marked as
* completed.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withTimeoutInMinutes(Integer timeoutInMinutes) {
setTimeoutInMinutes(timeoutInMinutes);
return this;
}
/**
*
* The number of minutes a build is allowed to be queued before it times out.
*
*
* @param queuedTimeoutInMinutes
* The number of minutes a build is allowed to be queued before it times out.
*/
public void setQueuedTimeoutInMinutes(Integer queuedTimeoutInMinutes) {
this.queuedTimeoutInMinutes = queuedTimeoutInMinutes;
}
/**
*
* The number of minutes a build is allowed to be queued before it times out.
*
*
* @return The number of minutes a build is allowed to be queued before it times out.
*/
public Integer getQueuedTimeoutInMinutes() {
return this.queuedTimeoutInMinutes;
}
/**
*
* The number of minutes a build is allowed to be queued before it times out.
*
*
* @param queuedTimeoutInMinutes
* The number of minutes a build is allowed to be queued before it times out.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withQueuedTimeoutInMinutes(Integer queuedTimeoutInMinutes) {
setQueuedTimeoutInMinutes(queuedTimeoutInMinutes);
return this;
}
/**
*
* Whether the build is complete. True if complete; otherwise, false.
*
*
* @param buildComplete
* Whether the build is complete. True if complete; otherwise, false.
*/
public void setBuildComplete(Boolean buildComplete) {
this.buildComplete = buildComplete;
}
/**
*
* Whether the build is complete. True if complete; otherwise, false.
*
*
* @return Whether the build is complete. True if complete; otherwise, false.
*/
public Boolean getBuildComplete() {
return this.buildComplete;
}
/**
*
* Whether the build is complete. True if complete; otherwise, false.
*
*
* @param buildComplete
* Whether the build is complete. True if complete; otherwise, false.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withBuildComplete(Boolean buildComplete) {
setBuildComplete(buildComplete);
return this;
}
/**
*
* Whether the build is complete. True if complete; otherwise, false.
*
*
* @return Whether the build is complete. True if complete; otherwise, false.
*/
public Boolean isBuildComplete() {
return this.buildComplete;
}
/**
*
* The entity that started the build. Valid values include:
*
*
* -
*
* If CodePipeline started the build, the pipeline's name (for example, codepipeline/my-demo-pipeline
).
*
*
* -
*
* If an IAM user started the build, the user's name (for example, MyUserName
).
*
*
* -
*
* If the Jenkins plugin for CodeBuild started the build, the string CodeBuild-Jenkins-Plugin
.
*
*
*
*
* @param initiator
* The entity that started the build. Valid values include:
*
* -
*
* If CodePipeline started the build, the pipeline's name (for example,
* codepipeline/my-demo-pipeline
).
*
*
* -
*
* If an IAM user started the build, the user's name (for example, MyUserName
).
*
*
* -
*
* If the Jenkins plugin for CodeBuild started the build, the string CodeBuild-Jenkins-Plugin
.
*
*
*/
public void setInitiator(String initiator) {
this.initiator = initiator;
}
/**
*
* The entity that started the build. Valid values include:
*
*
* -
*
* If CodePipeline started the build, the pipeline's name (for example, codepipeline/my-demo-pipeline
).
*
*
* -
*
* If an IAM user started the build, the user's name (for example, MyUserName
).
*
*
* -
*
* If the Jenkins plugin for CodeBuild started the build, the string CodeBuild-Jenkins-Plugin
.
*
*
*
*
* @return The entity that started the build. Valid values include:
*
* -
*
* If CodePipeline started the build, the pipeline's name (for example,
* codepipeline/my-demo-pipeline
).
*
*
* -
*
* If an IAM user started the build, the user's name (for example, MyUserName
).
*
*
* -
*
* If the Jenkins plugin for CodeBuild started the build, the string CodeBuild-Jenkins-Plugin
.
*
*
*/
public String getInitiator() {
return this.initiator;
}
/**
*
* The entity that started the build. Valid values include:
*
*
* -
*
* If CodePipeline started the build, the pipeline's name (for example, codepipeline/my-demo-pipeline
).
*
*
* -
*
* If an IAM user started the build, the user's name (for example, MyUserName
).
*
*
* -
*
* If the Jenkins plugin for CodeBuild started the build, the string CodeBuild-Jenkins-Plugin
.
*
*
*
*
* @param initiator
* The entity that started the build. Valid values include:
*
* -
*
* If CodePipeline started the build, the pipeline's name (for example,
* codepipeline/my-demo-pipeline
).
*
*
* -
*
* If an IAM user started the build, the user's name (for example, MyUserName
).
*
*
* -
*
* If the Jenkins plugin for CodeBuild started the build, the string CodeBuild-Jenkins-Plugin
.
*
*
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withInitiator(String initiator) {
setInitiator(initiator);
return this;
}
/**
*
* If your CodeBuild project accesses resources in an Amazon VPC, you provide this parameter that identifies the VPC
* ID and the list of security group IDs and subnet IDs. The security groups and subnets must belong to the same
* VPC. You must provide at least one security group and one subnet ID.
*
*
* @param vpcConfig
* If your CodeBuild project accesses resources in an Amazon VPC, you provide this parameter that identifies
* the VPC ID and the list of security group IDs and subnet IDs. The security groups and subnets must belong
* to the same VPC. You must provide at least one security group and one subnet ID.
*/
public void setVpcConfig(VpcConfig vpcConfig) {
this.vpcConfig = vpcConfig;
}
/**
*
* If your CodeBuild project accesses resources in an Amazon VPC, you provide this parameter that identifies the VPC
* ID and the list of security group IDs and subnet IDs. The security groups and subnets must belong to the same
* VPC. You must provide at least one security group and one subnet ID.
*
*
* @return If your CodeBuild project accesses resources in an Amazon VPC, you provide this parameter that identifies
* the VPC ID and the list of security group IDs and subnet IDs. The security groups and subnets must belong
* to the same VPC. You must provide at least one security group and one subnet ID.
*/
public VpcConfig getVpcConfig() {
return this.vpcConfig;
}
/**
*
* If your CodeBuild project accesses resources in an Amazon VPC, you provide this parameter that identifies the VPC
* ID and the list of security group IDs and subnet IDs. The security groups and subnets must belong to the same
* VPC. You must provide at least one security group and one subnet ID.
*
*
* @param vpcConfig
* If your CodeBuild project accesses resources in an Amazon VPC, you provide this parameter that identifies
* the VPC ID and the list of security group IDs and subnet IDs. The security groups and subnets must belong
* to the same VPC. You must provide at least one security group and one subnet ID.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withVpcConfig(VpcConfig vpcConfig) {
setVpcConfig(vpcConfig);
return this;
}
/**
*
* Describes a network interface.
*
*
* @param networkInterface
* Describes a network interface.
*/
public void setNetworkInterface(NetworkInterface networkInterface) {
this.networkInterface = networkInterface;
}
/**
*
* Describes a network interface.
*
*
* @return Describes a network interface.
*/
public NetworkInterface getNetworkInterface() {
return this.networkInterface;
}
/**
*
* Describes a network interface.
*
*
* @param networkInterface
* Describes a network interface.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withNetworkInterface(NetworkInterface networkInterface) {
setNetworkInterface(networkInterface);
return this;
}
/**
*
* The Key Management Service customer master key (CMK) to be used for encrypting the build output artifacts.
*
*
*
* You can use a cross-account KMS key to encrypt the build output artifacts if your service role has permission to
* that key.
*
*
*
* You can specify either the Amazon Resource Name (ARN) of the CMK or, if available, the CMK's alias (using the
* format alias/<alias-name>
).
*
*
* @param encryptionKey
* The Key Management Service customer master key (CMK) to be used for encrypting the build output
* artifacts.
*
* You can use a cross-account KMS key to encrypt the build output artifacts if your service role has
* permission to that key.
*
*
*
* You can specify either the Amazon Resource Name (ARN) of the CMK or, if available, the CMK's alias (using
* the format alias/<alias-name>
).
*/
public void setEncryptionKey(String encryptionKey) {
this.encryptionKey = encryptionKey;
}
/**
*
* The Key Management Service customer master key (CMK) to be used for encrypting the build output artifacts.
*
*
*
* You can use a cross-account KMS key to encrypt the build output artifacts if your service role has permission to
* that key.
*
*
*
* You can specify either the Amazon Resource Name (ARN) of the CMK or, if available, the CMK's alias (using the
* format alias/<alias-name>
).
*
*
* @return The Key Management Service customer master key (CMK) to be used for encrypting the build output
* artifacts.
*
* You can use a cross-account KMS key to encrypt the build output artifacts if your service role has
* permission to that key.
*
*
*
* You can specify either the Amazon Resource Name (ARN) of the CMK or, if available, the CMK's alias (using
* the format alias/<alias-name>
).
*/
public String getEncryptionKey() {
return this.encryptionKey;
}
/**
*
* The Key Management Service customer master key (CMK) to be used for encrypting the build output artifacts.
*
*
*
* You can use a cross-account KMS key to encrypt the build output artifacts if your service role has permission to
* that key.
*
*
*
* You can specify either the Amazon Resource Name (ARN) of the CMK or, if available, the CMK's alias (using the
* format alias/<alias-name>
).
*
*
* @param encryptionKey
* The Key Management Service customer master key (CMK) to be used for encrypting the build output
* artifacts.
*
* You can use a cross-account KMS key to encrypt the build output artifacts if your service role has
* permission to that key.
*
*
*
* You can specify either the Amazon Resource Name (ARN) of the CMK or, if available, the CMK's alias (using
* the format alias/<alias-name>
).
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withEncryptionKey(String encryptionKey) {
setEncryptionKey(encryptionKey);
return this;
}
/**
*
* A list of exported environment variables for this build.
*
*
* Exported environment variables are used in conjunction with CodePipeline to export environment variables from the
* current build stage to subsequent stages in the pipeline. For more information, see Working with
* variables in the CodePipeline User Guide.
*
*
* @return A list of exported environment variables for this build.
*
* Exported environment variables are used in conjunction with CodePipeline to export environment variables
* from the current build stage to subsequent stages in the pipeline. For more information, see Working with
* variables in the CodePipeline User Guide.
*/
public java.util.List getExportedEnvironmentVariables() {
return exportedEnvironmentVariables;
}
/**
*
* A list of exported environment variables for this build.
*
*
* Exported environment variables are used in conjunction with CodePipeline to export environment variables from the
* current build stage to subsequent stages in the pipeline. For more information, see Working with
* variables in the CodePipeline User Guide.
*
*
* @param exportedEnvironmentVariables
* A list of exported environment variables for this build.
*
* Exported environment variables are used in conjunction with CodePipeline to export environment variables
* from the current build stage to subsequent stages in the pipeline. For more information, see Working with
* variables in the CodePipeline User Guide.
*/
public void setExportedEnvironmentVariables(java.util.Collection exportedEnvironmentVariables) {
if (exportedEnvironmentVariables == null) {
this.exportedEnvironmentVariables = null;
return;
}
this.exportedEnvironmentVariables = new java.util.ArrayList(exportedEnvironmentVariables);
}
/**
*
* A list of exported environment variables for this build.
*
*
* Exported environment variables are used in conjunction with CodePipeline to export environment variables from the
* current build stage to subsequent stages in the pipeline. For more information, see Working with
* variables in the CodePipeline User Guide.
*
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setExportedEnvironmentVariables(java.util.Collection)} or
* {@link #withExportedEnvironmentVariables(java.util.Collection)} if you want to override the existing values.
*
*
* @param exportedEnvironmentVariables
* A list of exported environment variables for this build.
*
* Exported environment variables are used in conjunction with CodePipeline to export environment variables
* from the current build stage to subsequent stages in the pipeline. For more information, see Working with
* variables in the CodePipeline User Guide.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withExportedEnvironmentVariables(ExportedEnvironmentVariable... exportedEnvironmentVariables) {
if (this.exportedEnvironmentVariables == null) {
setExportedEnvironmentVariables(new java.util.ArrayList(exportedEnvironmentVariables.length));
}
for (ExportedEnvironmentVariable ele : exportedEnvironmentVariables) {
this.exportedEnvironmentVariables.add(ele);
}
return this;
}
/**
*
* A list of exported environment variables for this build.
*
*
* Exported environment variables are used in conjunction with CodePipeline to export environment variables from the
* current build stage to subsequent stages in the pipeline. For more information, see Working with
* variables in the CodePipeline User Guide.
*
*
* @param exportedEnvironmentVariables
* A list of exported environment variables for this build.
*
* Exported environment variables are used in conjunction with CodePipeline to export environment variables
* from the current build stage to subsequent stages in the pipeline. For more information, see Working with
* variables in the CodePipeline User Guide.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withExportedEnvironmentVariables(java.util.Collection exportedEnvironmentVariables) {
setExportedEnvironmentVariables(exportedEnvironmentVariables);
return this;
}
/**
*
* An array of the ARNs associated with this build's reports.
*
*
* @return An array of the ARNs associated with this build's reports.
*/
public java.util.List getReportArns() {
return reportArns;
}
/**
*
* An array of the ARNs associated with this build's reports.
*
*
* @param reportArns
* An array of the ARNs associated with this build's reports.
*/
public void setReportArns(java.util.Collection reportArns) {
if (reportArns == null) {
this.reportArns = null;
return;
}
this.reportArns = new java.util.ArrayList(reportArns);
}
/**
*
* An array of the ARNs associated with this build's reports.
*
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setReportArns(java.util.Collection)} or {@link #withReportArns(java.util.Collection)} if you want to
* override the existing values.
*
*
* @param reportArns
* An array of the ARNs associated with this build's reports.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withReportArns(String... reportArns) {
if (this.reportArns == null) {
setReportArns(new java.util.ArrayList(reportArns.length));
}
for (String ele : reportArns) {
this.reportArns.add(ele);
}
return this;
}
/**
*
* An array of the ARNs associated with this build's reports.
*
*
* @param reportArns
* An array of the ARNs associated with this build's reports.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withReportArns(java.util.Collection reportArns) {
setReportArns(reportArns);
return this;
}
/**
*
* An array of ProjectFileSystemLocation
objects for a CodeBuild build project. A
* ProjectFileSystemLocation
object specifies the identifier
, location
,
* mountOptions
, mountPoint
, and type
of a file system created using Amazon
* Elastic File System.
*
*
* @return An array of ProjectFileSystemLocation
objects for a CodeBuild build project. A
* ProjectFileSystemLocation
object specifies the identifier
,
* location
, mountOptions
, mountPoint
, and type
of a
* file system created using Amazon Elastic File System.
*/
public java.util.List getFileSystemLocations() {
return fileSystemLocations;
}
/**
*
* An array of ProjectFileSystemLocation
objects for a CodeBuild build project. A
* ProjectFileSystemLocation
object specifies the identifier
, location
,
* mountOptions
, mountPoint
, and type
of a file system created using Amazon
* Elastic File System.
*
*
* @param fileSystemLocations
* An array of ProjectFileSystemLocation
objects for a CodeBuild build project. A
* ProjectFileSystemLocation
object specifies the identifier
, location
* , mountOptions
, mountPoint
, and type
of a file system created using
* Amazon Elastic File System.
*/
public void setFileSystemLocations(java.util.Collection fileSystemLocations) {
if (fileSystemLocations == null) {
this.fileSystemLocations = null;
return;
}
this.fileSystemLocations = new java.util.ArrayList(fileSystemLocations);
}
/**
*
* An array of ProjectFileSystemLocation
objects for a CodeBuild build project. A
* ProjectFileSystemLocation
object specifies the identifier
, location
,
* mountOptions
, mountPoint
, and type
of a file system created using Amazon
* Elastic File System.
*
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setFileSystemLocations(java.util.Collection)} or {@link #withFileSystemLocations(java.util.Collection)}
* if you want to override the existing values.
*
*
* @param fileSystemLocations
* An array of ProjectFileSystemLocation
objects for a CodeBuild build project. A
* ProjectFileSystemLocation
object specifies the identifier
, location
* , mountOptions
, mountPoint
, and type
of a file system created using
* Amazon Elastic File System.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withFileSystemLocations(ProjectFileSystemLocation... fileSystemLocations) {
if (this.fileSystemLocations == null) {
setFileSystemLocations(new java.util.ArrayList(fileSystemLocations.length));
}
for (ProjectFileSystemLocation ele : fileSystemLocations) {
this.fileSystemLocations.add(ele);
}
return this;
}
/**
*
* An array of ProjectFileSystemLocation
objects for a CodeBuild build project. A
* ProjectFileSystemLocation
object specifies the identifier
, location
,
* mountOptions
, mountPoint
, and type
of a file system created using Amazon
* Elastic File System.
*
*
* @param fileSystemLocations
* An array of ProjectFileSystemLocation
objects for a CodeBuild build project. A
* ProjectFileSystemLocation
object specifies the identifier
, location
* , mountOptions
, mountPoint
, and type
of a file system created using
* Amazon Elastic File System.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withFileSystemLocations(java.util.Collection fileSystemLocations) {
setFileSystemLocations(fileSystemLocations);
return this;
}
/**
*
* Contains information about the debug session for this build.
*
*
* @param debugSession
* Contains information about the debug session for this build.
*/
public void setDebugSession(DebugSession debugSession) {
this.debugSession = debugSession;
}
/**
*
* Contains information about the debug session for this build.
*
*
* @return Contains information about the debug session for this build.
*/
public DebugSession getDebugSession() {
return this.debugSession;
}
/**
*
* Contains information about the debug session for this build.
*
*
* @param debugSession
* Contains information about the debug session for this build.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withDebugSession(DebugSession debugSession) {
setDebugSession(debugSession);
return this;
}
/**
*
* The ARN of the batch build that this build is a member of, if applicable.
*
*
* @param buildBatchArn
* The ARN of the batch build that this build is a member of, if applicable.
*/
public void setBuildBatchArn(String buildBatchArn) {
this.buildBatchArn = buildBatchArn;
}
/**
*
* The ARN of the batch build that this build is a member of, if applicable.
*
*
* @return The ARN of the batch build that this build is a member of, if applicable.
*/
public String getBuildBatchArn() {
return this.buildBatchArn;
}
/**
*
* The ARN of the batch build that this build is a member of, if applicable.
*
*
* @param buildBatchArn
* The ARN of the batch build that this build is a member of, if applicable.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Build withBuildBatchArn(String buildBatchArn) {
setBuildBatchArn(buildBatchArn);
return this;
}
/**
* Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be
* redacted from this string using a placeholder value.
*
* @return A string representation of this object.
*
* @see java.lang.Object#toString()
*/
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("{");
if (getId() != null)
sb.append("Id: ").append(getId()).append(",");
if (getArn() != null)
sb.append("Arn: ").append(getArn()).append(",");
if (getBuildNumber() != null)
sb.append("BuildNumber: ").append(getBuildNumber()).append(",");
if (getStartTime() != null)
sb.append("StartTime: ").append(getStartTime()).append(",");
if (getEndTime() != null)
sb.append("EndTime: ").append(getEndTime()).append(",");
if (getCurrentPhase() != null)
sb.append("CurrentPhase: ").append(getCurrentPhase()).append(",");
if (getBuildStatus() != null)
sb.append("BuildStatus: ").append(getBuildStatus()).append(",");
if (getSourceVersion() != null)
sb.append("SourceVersion: ").append(getSourceVersion()).append(",");
if (getResolvedSourceVersion() != null)
sb.append("ResolvedSourceVersion: ").append(getResolvedSourceVersion()).append(",");
if (getProjectName() != null)
sb.append("ProjectName: ").append(getProjectName()).append(",");
if (getPhases() != null)
sb.append("Phases: ").append(getPhases()).append(",");
if (getSource() != null)
sb.append("Source: ").append(getSource()).append(",");
if (getSecondarySources() != null)
sb.append("SecondarySources: ").append(getSecondarySources()).append(",");
if (getSecondarySourceVersions() != null)
sb.append("SecondarySourceVersions: ").append(getSecondarySourceVersions()).append(",");
if (getArtifacts() != null)
sb.append("Artifacts: ").append(getArtifacts()).append(",");
if (getSecondaryArtifacts() != null)
sb.append("SecondaryArtifacts: ").append(getSecondaryArtifacts()).append(",");
if (getCache() != null)
sb.append("Cache: ").append(getCache()).append(",");
if (getEnvironment() != null)
sb.append("Environment: ").append(getEnvironment()).append(",");
if (getServiceRole() != null)
sb.append("ServiceRole: ").append(getServiceRole()).append(",");
if (getLogs() != null)
sb.append("Logs: ").append(getLogs()).append(",");
if (getTimeoutInMinutes() != null)
sb.append("TimeoutInMinutes: ").append(getTimeoutInMinutes()).append(",");
if (getQueuedTimeoutInMinutes() != null)
sb.append("QueuedTimeoutInMinutes: ").append(getQueuedTimeoutInMinutes()).append(",");
if (getBuildComplete() != null)
sb.append("BuildComplete: ").append(getBuildComplete()).append(",");
if (getInitiator() != null)
sb.append("Initiator: ").append(getInitiator()).append(",");
if (getVpcConfig() != null)
sb.append("VpcConfig: ").append(getVpcConfig()).append(",");
if (getNetworkInterface() != null)
sb.append("NetworkInterface: ").append(getNetworkInterface()).append(",");
if (getEncryptionKey() != null)
sb.append("EncryptionKey: ").append(getEncryptionKey()).append(",");
if (getExportedEnvironmentVariables() != null)
sb.append("ExportedEnvironmentVariables: ").append(getExportedEnvironmentVariables()).append(",");
if (getReportArns() != null)
sb.append("ReportArns: ").append(getReportArns()).append(",");
if (getFileSystemLocations() != null)
sb.append("FileSystemLocations: ").append(getFileSystemLocations()).append(",");
if (getDebugSession() != null)
sb.append("DebugSession: ").append(getDebugSession()).append(",");
if (getBuildBatchArn() != null)
sb.append("BuildBatchArn: ").append(getBuildBatchArn());
sb.append("}");
return sb.toString();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (obj instanceof Build == false)
return false;
Build other = (Build) obj;
if (other.getId() == null ^ this.getId() == null)
return false;
if (other.getId() != null && other.getId().equals(this.getId()) == false)
return false;
if (other.getArn() == null ^ this.getArn() == null)
return false;
if (other.getArn() != null && other.getArn().equals(this.getArn()) == false)
return false;
if (other.getBuildNumber() == null ^ this.getBuildNumber() == null)
return false;
if (other.getBuildNumber() != null && other.getBuildNumber().equals(this.getBuildNumber()) == false)
return false;
if (other.getStartTime() == null ^ this.getStartTime() == null)
return false;
if (other.getStartTime() != null && other.getStartTime().equals(this.getStartTime()) == false)
return false;
if (other.getEndTime() == null ^ this.getEndTime() == null)
return false;
if (other.getEndTime() != null && other.getEndTime().equals(this.getEndTime()) == false)
return false;
if (other.getCurrentPhase() == null ^ this.getCurrentPhase() == null)
return false;
if (other.getCurrentPhase() != null && other.getCurrentPhase().equals(this.getCurrentPhase()) == false)
return false;
if (other.getBuildStatus() == null ^ this.getBuildStatus() == null)
return false;
if (other.getBuildStatus() != null && other.getBuildStatus().equals(this.getBuildStatus()) == false)
return false;
if (other.getSourceVersion() == null ^ this.getSourceVersion() == null)
return false;
if (other.getSourceVersion() != null && other.getSourceVersion().equals(this.getSourceVersion()) == false)
return false;
if (other.getResolvedSourceVersion() == null ^ this.getResolvedSourceVersion() == null)
return false;
if (other.getResolvedSourceVersion() != null && other.getResolvedSourceVersion().equals(this.getResolvedSourceVersion()) == false)
return false;
if (other.getProjectName() == null ^ this.getProjectName() == null)
return false;
if (other.getProjectName() != null && other.getProjectName().equals(this.getProjectName()) == false)
return false;
if (other.getPhases() == null ^ this.getPhases() == null)
return false;
if (other.getPhases() != null && other.getPhases().equals(this.getPhases()) == false)
return false;
if (other.getSource() == null ^ this.getSource() == null)
return false;
if (other.getSource() != null && other.getSource().equals(this.getSource()) == false)
return false;
if (other.getSecondarySources() == null ^ this.getSecondarySources() == null)
return false;
if (other.getSecondarySources() != null && other.getSecondarySources().equals(this.getSecondarySources()) == false)
return false;
if (other.getSecondarySourceVersions() == null ^ this.getSecondarySourceVersions() == null)
return false;
if (other.getSecondarySourceVersions() != null && other.getSecondarySourceVersions().equals(this.getSecondarySourceVersions()) == false)
return false;
if (other.getArtifacts() == null ^ this.getArtifacts() == null)
return false;
if (other.getArtifacts() != null && other.getArtifacts().equals(this.getArtifacts()) == false)
return false;
if (other.getSecondaryArtifacts() == null ^ this.getSecondaryArtifacts() == null)
return false;
if (other.getSecondaryArtifacts() != null && other.getSecondaryArtifacts().equals(this.getSecondaryArtifacts()) == false)
return false;
if (other.getCache() == null ^ this.getCache() == null)
return false;
if (other.getCache() != null && other.getCache().equals(this.getCache()) == false)
return false;
if (other.getEnvironment() == null ^ this.getEnvironment() == null)
return false;
if (other.getEnvironment() != null && other.getEnvironment().equals(this.getEnvironment()) == false)
return false;
if (other.getServiceRole() == null ^ this.getServiceRole() == null)
return false;
if (other.getServiceRole() != null && other.getServiceRole().equals(this.getServiceRole()) == false)
return false;
if (other.getLogs() == null ^ this.getLogs() == null)
return false;
if (other.getLogs() != null && other.getLogs().equals(this.getLogs()) == false)
return false;
if (other.getTimeoutInMinutes() == null ^ this.getTimeoutInMinutes() == null)
return false;
if (other.getTimeoutInMinutes() != null && other.getTimeoutInMinutes().equals(this.getTimeoutInMinutes()) == false)
return false;
if (other.getQueuedTimeoutInMinutes() == null ^ this.getQueuedTimeoutInMinutes() == null)
return false;
if (other.getQueuedTimeoutInMinutes() != null && other.getQueuedTimeoutInMinutes().equals(this.getQueuedTimeoutInMinutes()) == false)
return false;
if (other.getBuildComplete() == null ^ this.getBuildComplete() == null)
return false;
if (other.getBuildComplete() != null && other.getBuildComplete().equals(this.getBuildComplete()) == false)
return false;
if (other.getInitiator() == null ^ this.getInitiator() == null)
return false;
if (other.getInitiator() != null && other.getInitiator().equals(this.getInitiator()) == false)
return false;
if (other.getVpcConfig() == null ^ this.getVpcConfig() == null)
return false;
if (other.getVpcConfig() != null && other.getVpcConfig().equals(this.getVpcConfig()) == false)
return false;
if (other.getNetworkInterface() == null ^ this.getNetworkInterface() == null)
return false;
if (other.getNetworkInterface() != null && other.getNetworkInterface().equals(this.getNetworkInterface()) == false)
return false;
if (other.getEncryptionKey() == null ^ this.getEncryptionKey() == null)
return false;
if (other.getEncryptionKey() != null && other.getEncryptionKey().equals(this.getEncryptionKey()) == false)
return false;
if (other.getExportedEnvironmentVariables() == null ^ this.getExportedEnvironmentVariables() == null)
return false;
if (other.getExportedEnvironmentVariables() != null && other.getExportedEnvironmentVariables().equals(this.getExportedEnvironmentVariables()) == false)
return false;
if (other.getReportArns() == null ^ this.getReportArns() == null)
return false;
if (other.getReportArns() != null && other.getReportArns().equals(this.getReportArns()) == false)
return false;
if (other.getFileSystemLocations() == null ^ this.getFileSystemLocations() == null)
return false;
if (other.getFileSystemLocations() != null && other.getFileSystemLocations().equals(this.getFileSystemLocations()) == false)
return false;
if (other.getDebugSession() == null ^ this.getDebugSession() == null)
return false;
if (other.getDebugSession() != null && other.getDebugSession().equals(this.getDebugSession()) == false)
return false;
if (other.getBuildBatchArn() == null ^ this.getBuildBatchArn() == null)
return false;
if (other.getBuildBatchArn() != null && other.getBuildBatchArn().equals(this.getBuildBatchArn()) == false)
return false;
return true;
}
@Override
public int hashCode() {
final int prime = 31;
int hashCode = 1;
hashCode = prime * hashCode + ((getId() == null) ? 0 : getId().hashCode());
hashCode = prime * hashCode + ((getArn() == null) ? 0 : getArn().hashCode());
hashCode = prime * hashCode + ((getBuildNumber() == null) ? 0 : getBuildNumber().hashCode());
hashCode = prime * hashCode + ((getStartTime() == null) ? 0 : getStartTime().hashCode());
hashCode = prime * hashCode + ((getEndTime() == null) ? 0 : getEndTime().hashCode());
hashCode = prime * hashCode + ((getCurrentPhase() == null) ? 0 : getCurrentPhase().hashCode());
hashCode = prime * hashCode + ((getBuildStatus() == null) ? 0 : getBuildStatus().hashCode());
hashCode = prime * hashCode + ((getSourceVersion() == null) ? 0 : getSourceVersion().hashCode());
hashCode = prime * hashCode + ((getResolvedSourceVersion() == null) ? 0 : getResolvedSourceVersion().hashCode());
hashCode = prime * hashCode + ((getProjectName() == null) ? 0 : getProjectName().hashCode());
hashCode = prime * hashCode + ((getPhases() == null) ? 0 : getPhases().hashCode());
hashCode = prime * hashCode + ((getSource() == null) ? 0 : getSource().hashCode());
hashCode = prime * hashCode + ((getSecondarySources() == null) ? 0 : getSecondarySources().hashCode());
hashCode = prime * hashCode + ((getSecondarySourceVersions() == null) ? 0 : getSecondarySourceVersions().hashCode());
hashCode = prime * hashCode + ((getArtifacts() == null) ? 0 : getArtifacts().hashCode());
hashCode = prime * hashCode + ((getSecondaryArtifacts() == null) ? 0 : getSecondaryArtifacts().hashCode());
hashCode = prime * hashCode + ((getCache() == null) ? 0 : getCache().hashCode());
hashCode = prime * hashCode + ((getEnvironment() == null) ? 0 : getEnvironment().hashCode());
hashCode = prime * hashCode + ((getServiceRole() == null) ? 0 : getServiceRole().hashCode());
hashCode = prime * hashCode + ((getLogs() == null) ? 0 : getLogs().hashCode());
hashCode = prime * hashCode + ((getTimeoutInMinutes() == null) ? 0 : getTimeoutInMinutes().hashCode());
hashCode = prime * hashCode + ((getQueuedTimeoutInMinutes() == null) ? 0 : getQueuedTimeoutInMinutes().hashCode());
hashCode = prime * hashCode + ((getBuildComplete() == null) ? 0 : getBuildComplete().hashCode());
hashCode = prime * hashCode + ((getInitiator() == null) ? 0 : getInitiator().hashCode());
hashCode = prime * hashCode + ((getVpcConfig() == null) ? 0 : getVpcConfig().hashCode());
hashCode = prime * hashCode + ((getNetworkInterface() == null) ? 0 : getNetworkInterface().hashCode());
hashCode = prime * hashCode + ((getEncryptionKey() == null) ? 0 : getEncryptionKey().hashCode());
hashCode = prime * hashCode + ((getExportedEnvironmentVariables() == null) ? 0 : getExportedEnvironmentVariables().hashCode());
hashCode = prime * hashCode + ((getReportArns() == null) ? 0 : getReportArns().hashCode());
hashCode = prime * hashCode + ((getFileSystemLocations() == null) ? 0 : getFileSystemLocations().hashCode());
hashCode = prime * hashCode + ((getDebugSession() == null) ? 0 : getDebugSession().hashCode());
hashCode = prime * hashCode + ((getBuildBatchArn() == null) ? 0 : getBuildBatchArn().hashCode());
return hashCode;
}
@Override
public Build clone() {
try {
return (Build) super.clone();
} catch (CloneNotSupportedException e) {
throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e);
}
}
@com.amazonaws.annotation.SdkInternalApi
@Override
public void marshall(ProtocolMarshaller protocolMarshaller) {
com.amazonaws.services.codebuild.model.transform.BuildMarshaller.getInstance().marshall(this, protocolMarshaller);
}
}