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

software.amazon.awssdk.services.codebuild.model.StartBuildBatchRequest Maven / Gradle / Ivy

Go to download

The AWS Java SDK for AWS Code Build module holds the client classes that are used for communicating with AWS Code Build.

The newest version!
/*
 * Copyright 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 software.amazon.awssdk.services.codebuild.model;

import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import java.util.function.BiConsumer;
import java.util.function.Consumer;
import java.util.function.Function;
import java.util.stream.Collectors;
import java.util.stream.Stream;
import software.amazon.awssdk.annotations.Generated;
import software.amazon.awssdk.awscore.AwsRequestOverrideConfiguration;
import software.amazon.awssdk.core.SdkField;
import software.amazon.awssdk.core.SdkPojo;
import software.amazon.awssdk.core.protocol.MarshallLocation;
import software.amazon.awssdk.core.protocol.MarshallingType;
import software.amazon.awssdk.core.traits.ListTrait;
import software.amazon.awssdk.core.traits.LocationTrait;
import software.amazon.awssdk.core.util.DefaultSdkAutoConstructList;
import software.amazon.awssdk.core.util.SdkAutoConstructList;
import software.amazon.awssdk.utils.ToString;
import software.amazon.awssdk.utils.builder.CopyableBuilder;
import software.amazon.awssdk.utils.builder.ToCopyableBuilder;

/**
 */
@Generated("software.amazon.awssdk:codegen")
public final class StartBuildBatchRequest extends CodeBuildRequest implements
        ToCopyableBuilder {
    private static final SdkField PROJECT_NAME_FIELD = SdkField. builder(MarshallingType.STRING)
            .memberName("projectName").getter(getter(StartBuildBatchRequest::projectName)).setter(setter(Builder::projectName))
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("projectName").build()).build();

    private static final SdkField> SECONDARY_SOURCES_OVERRIDE_FIELD = SdkField
            .> builder(MarshallingType.LIST)
            .memberName("secondarySourcesOverride")
            .getter(getter(StartBuildBatchRequest::secondarySourcesOverride))
            .setter(setter(Builder::secondarySourcesOverride))
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("secondarySourcesOverride").build(),
                    ListTrait
                            .builder()
                            .memberLocationName(null)
                            .memberFieldInfo(
                                    SdkField. builder(MarshallingType.SDK_POJO)
                                            .constructor(ProjectSource::builder)
                                            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD)
                                                    .locationName("member").build()).build()).build()).build();

    private static final SdkField> SECONDARY_SOURCES_VERSION_OVERRIDE_FIELD = SdkField
            .> builder(MarshallingType.LIST)
            .memberName("secondarySourcesVersionOverride")
            .getter(getter(StartBuildBatchRequest::secondarySourcesVersionOverride))
            .setter(setter(Builder::secondarySourcesVersionOverride))
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("secondarySourcesVersionOverride")
                    .build(),
                    ListTrait
                            .builder()
                            .memberLocationName(null)
                            .memberFieldInfo(
                                    SdkField. builder(MarshallingType.SDK_POJO)
                                            .constructor(ProjectSourceVersion::builder)
                                            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD)
                                                    .locationName("member").build()).build()).build()).build();

    private static final SdkField SOURCE_VERSION_FIELD = SdkField. builder(MarshallingType.STRING)
            .memberName("sourceVersion").getter(getter(StartBuildBatchRequest::sourceVersion))
            .setter(setter(Builder::sourceVersion))
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("sourceVersion").build()).build();

    private static final SdkField ARTIFACTS_OVERRIDE_FIELD = SdkField
            . builder(MarshallingType.SDK_POJO).memberName("artifactsOverride")
            .getter(getter(StartBuildBatchRequest::artifactsOverride)).setter(setter(Builder::artifactsOverride))
            .constructor(ProjectArtifacts::builder)
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("artifactsOverride").build()).build();

    private static final SdkField> SECONDARY_ARTIFACTS_OVERRIDE_FIELD = SdkField
            .> builder(MarshallingType.LIST)
            .memberName("secondaryArtifactsOverride")
            .getter(getter(StartBuildBatchRequest::secondaryArtifactsOverride))
            .setter(setter(Builder::secondaryArtifactsOverride))
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("secondaryArtifactsOverride").build(),
                    ListTrait
                            .builder()
                            .memberLocationName(null)
                            .memberFieldInfo(
                                    SdkField. builder(MarshallingType.SDK_POJO)
                                            .constructor(ProjectArtifacts::builder)
                                            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD)
                                                    .locationName("member").build()).build()).build()).build();

    private static final SdkField> ENVIRONMENT_VARIABLES_OVERRIDE_FIELD = SdkField
            .> builder(MarshallingType.LIST)
            .memberName("environmentVariablesOverride")
            .getter(getter(StartBuildBatchRequest::environmentVariablesOverride))
            .setter(setter(Builder::environmentVariablesOverride))
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("environmentVariablesOverride")
                    .build(),
                    ListTrait
                            .builder()
                            .memberLocationName(null)
                            .memberFieldInfo(
                                    SdkField. builder(MarshallingType.SDK_POJO)
                                            .constructor(EnvironmentVariable::builder)
                                            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD)
                                                    .locationName("member").build()).build()).build()).build();

    private static final SdkField SOURCE_TYPE_OVERRIDE_FIELD = SdkField. builder(MarshallingType.STRING)
            .memberName("sourceTypeOverride").getter(getter(StartBuildBatchRequest::sourceTypeOverrideAsString))
            .setter(setter(Builder::sourceTypeOverride))
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("sourceTypeOverride").build())
            .build();

    private static final SdkField SOURCE_LOCATION_OVERRIDE_FIELD = SdkField. builder(MarshallingType.STRING)
            .memberName("sourceLocationOverride").getter(getter(StartBuildBatchRequest::sourceLocationOverride))
            .setter(setter(Builder::sourceLocationOverride))
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("sourceLocationOverride").build())
            .build();

    private static final SdkField SOURCE_AUTH_OVERRIDE_FIELD = SdkField
            . builder(MarshallingType.SDK_POJO).memberName("sourceAuthOverride")
            .getter(getter(StartBuildBatchRequest::sourceAuthOverride)).setter(setter(Builder::sourceAuthOverride))
            .constructor(SourceAuth::builder)
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("sourceAuthOverride").build())
            .build();

    private static final SdkField GIT_CLONE_DEPTH_OVERRIDE_FIELD = SdkField. builder(MarshallingType.INTEGER)
            .memberName("gitCloneDepthOverride").getter(getter(StartBuildBatchRequest::gitCloneDepthOverride))
            .setter(setter(Builder::gitCloneDepthOverride))
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("gitCloneDepthOverride").build())
            .build();

    private static final SdkField GIT_SUBMODULES_CONFIG_OVERRIDE_FIELD = SdkField
            . builder(MarshallingType.SDK_POJO)
            .memberName("gitSubmodulesConfigOverride")
            .getter(getter(StartBuildBatchRequest::gitSubmodulesConfigOverride))
            .setter(setter(Builder::gitSubmodulesConfigOverride))
            .constructor(GitSubmodulesConfig::builder)
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("gitSubmodulesConfigOverride")
                    .build()).build();

    private static final SdkField BUILDSPEC_OVERRIDE_FIELD = SdkField. builder(MarshallingType.STRING)
            .memberName("buildspecOverride").getter(getter(StartBuildBatchRequest::buildspecOverride))
            .setter(setter(Builder::buildspecOverride))
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("buildspecOverride").build()).build();

    private static final SdkField INSECURE_SSL_OVERRIDE_FIELD = SdkField. builder(MarshallingType.BOOLEAN)
            .memberName("insecureSslOverride").getter(getter(StartBuildBatchRequest::insecureSslOverride))
            .setter(setter(Builder::insecureSslOverride))
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("insecureSslOverride").build())
            .build();

    private static final SdkField REPORT_BUILD_BATCH_STATUS_OVERRIDE_FIELD = SdkField
            . builder(MarshallingType.BOOLEAN)
            .memberName("reportBuildBatchStatusOverride")
            .getter(getter(StartBuildBatchRequest::reportBuildBatchStatusOverride))
            .setter(setter(Builder::reportBuildBatchStatusOverride))
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("reportBuildBatchStatusOverride")
                    .build()).build();

    private static final SdkField ENVIRONMENT_TYPE_OVERRIDE_FIELD = SdkField. builder(MarshallingType.STRING)
            .memberName("environmentTypeOverride").getter(getter(StartBuildBatchRequest::environmentTypeOverrideAsString))
            .setter(setter(Builder::environmentTypeOverride))
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("environmentTypeOverride").build())
            .build();

    private static final SdkField IMAGE_OVERRIDE_FIELD = SdkField. builder(MarshallingType.STRING)
            .memberName("imageOverride").getter(getter(StartBuildBatchRequest::imageOverride))
            .setter(setter(Builder::imageOverride))
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("imageOverride").build()).build();

    private static final SdkField COMPUTE_TYPE_OVERRIDE_FIELD = SdkField. builder(MarshallingType.STRING)
            .memberName("computeTypeOverride").getter(getter(StartBuildBatchRequest::computeTypeOverrideAsString))
            .setter(setter(Builder::computeTypeOverride))
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("computeTypeOverride").build())
            .build();

    private static final SdkField CERTIFICATE_OVERRIDE_FIELD = SdkField. builder(MarshallingType.STRING)
            .memberName("certificateOverride").getter(getter(StartBuildBatchRequest::certificateOverride))
            .setter(setter(Builder::certificateOverride))
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("certificateOverride").build())
            .build();

    private static final SdkField CACHE_OVERRIDE_FIELD = SdkField. builder(MarshallingType.SDK_POJO)
            .memberName("cacheOverride").getter(getter(StartBuildBatchRequest::cacheOverride))
            .setter(setter(Builder::cacheOverride)).constructor(ProjectCache::builder)
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("cacheOverride").build()).build();

    private static final SdkField SERVICE_ROLE_OVERRIDE_FIELD = SdkField. builder(MarshallingType.STRING)
            .memberName("serviceRoleOverride").getter(getter(StartBuildBatchRequest::serviceRoleOverride))
            .setter(setter(Builder::serviceRoleOverride))
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("serviceRoleOverride").build())
            .build();

    private static final SdkField PRIVILEGED_MODE_OVERRIDE_FIELD = SdkField. builder(MarshallingType.BOOLEAN)
            .memberName("privilegedModeOverride").getter(getter(StartBuildBatchRequest::privilegedModeOverride))
            .setter(setter(Builder::privilegedModeOverride))
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("privilegedModeOverride").build())
            .build();

    private static final SdkField BUILD_TIMEOUT_IN_MINUTES_OVERRIDE_FIELD = SdkField
            . builder(MarshallingType.INTEGER)
            .memberName("buildTimeoutInMinutesOverride")
            .getter(getter(StartBuildBatchRequest::buildTimeoutInMinutesOverride))
            .setter(setter(Builder::buildTimeoutInMinutesOverride))
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("buildTimeoutInMinutesOverride")
                    .build()).build();

    private static final SdkField QUEUED_TIMEOUT_IN_MINUTES_OVERRIDE_FIELD = SdkField
            . builder(MarshallingType.INTEGER)
            .memberName("queuedTimeoutInMinutesOverride")
            .getter(getter(StartBuildBatchRequest::queuedTimeoutInMinutesOverride))
            .setter(setter(Builder::queuedTimeoutInMinutesOverride))
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("queuedTimeoutInMinutesOverride")
                    .build()).build();

    private static final SdkField ENCRYPTION_KEY_OVERRIDE_FIELD = SdkField. builder(MarshallingType.STRING)
            .memberName("encryptionKeyOverride").getter(getter(StartBuildBatchRequest::encryptionKeyOverride))
            .setter(setter(Builder::encryptionKeyOverride))
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("encryptionKeyOverride").build())
            .build();

    private static final SdkField IDEMPOTENCY_TOKEN_FIELD = SdkField. builder(MarshallingType.STRING)
            .memberName("idempotencyToken").getter(getter(StartBuildBatchRequest::idempotencyToken))
            .setter(setter(Builder::idempotencyToken))
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("idempotencyToken").build()).build();

    private static final SdkField LOGS_CONFIG_OVERRIDE_FIELD = SdkField
            . builder(MarshallingType.SDK_POJO).memberName("logsConfigOverride")
            .getter(getter(StartBuildBatchRequest::logsConfigOverride)).setter(setter(Builder::logsConfigOverride))
            .constructor(LogsConfig::builder)
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("logsConfigOverride").build())
            .build();

    private static final SdkField REGISTRY_CREDENTIAL_OVERRIDE_FIELD = SdkField
            . builder(MarshallingType.SDK_POJO)
            .memberName("registryCredentialOverride")
            .getter(getter(StartBuildBatchRequest::registryCredentialOverride))
            .setter(setter(Builder::registryCredentialOverride))
            .constructor(RegistryCredential::builder)
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("registryCredentialOverride").build())
            .build();

    private static final SdkField IMAGE_PULL_CREDENTIALS_TYPE_OVERRIDE_FIELD = SdkField
            . builder(MarshallingType.STRING)
            .memberName("imagePullCredentialsTypeOverride")
            .getter(getter(StartBuildBatchRequest::imagePullCredentialsTypeOverrideAsString))
            .setter(setter(Builder::imagePullCredentialsTypeOverride))
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("imagePullCredentialsTypeOverride")
                    .build()).build();

    private static final SdkField BUILD_BATCH_CONFIG_OVERRIDE_FIELD = SdkField
            . builder(MarshallingType.SDK_POJO).memberName("buildBatchConfigOverride")
            .getter(getter(StartBuildBatchRequest::buildBatchConfigOverride)).setter(setter(Builder::buildBatchConfigOverride))
            .constructor(ProjectBuildBatchConfig::builder)
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("buildBatchConfigOverride").build())
            .build();

    private static final SdkField DEBUG_SESSION_ENABLED_FIELD = SdkField. builder(MarshallingType.BOOLEAN)
            .memberName("debugSessionEnabled").getter(getter(StartBuildBatchRequest::debugSessionEnabled))
            .setter(setter(Builder::debugSessionEnabled))
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("debugSessionEnabled").build())
            .build();

    private static final List> SDK_FIELDS = Collections.unmodifiableList(Arrays.asList(PROJECT_NAME_FIELD,
            SECONDARY_SOURCES_OVERRIDE_FIELD, SECONDARY_SOURCES_VERSION_OVERRIDE_FIELD, SOURCE_VERSION_FIELD,
            ARTIFACTS_OVERRIDE_FIELD, SECONDARY_ARTIFACTS_OVERRIDE_FIELD, ENVIRONMENT_VARIABLES_OVERRIDE_FIELD,
            SOURCE_TYPE_OVERRIDE_FIELD, SOURCE_LOCATION_OVERRIDE_FIELD, SOURCE_AUTH_OVERRIDE_FIELD,
            GIT_CLONE_DEPTH_OVERRIDE_FIELD, GIT_SUBMODULES_CONFIG_OVERRIDE_FIELD, BUILDSPEC_OVERRIDE_FIELD,
            INSECURE_SSL_OVERRIDE_FIELD, REPORT_BUILD_BATCH_STATUS_OVERRIDE_FIELD, ENVIRONMENT_TYPE_OVERRIDE_FIELD,
            IMAGE_OVERRIDE_FIELD, COMPUTE_TYPE_OVERRIDE_FIELD, CERTIFICATE_OVERRIDE_FIELD, CACHE_OVERRIDE_FIELD,
            SERVICE_ROLE_OVERRIDE_FIELD, PRIVILEGED_MODE_OVERRIDE_FIELD, BUILD_TIMEOUT_IN_MINUTES_OVERRIDE_FIELD,
            QUEUED_TIMEOUT_IN_MINUTES_OVERRIDE_FIELD, ENCRYPTION_KEY_OVERRIDE_FIELD, IDEMPOTENCY_TOKEN_FIELD,
            LOGS_CONFIG_OVERRIDE_FIELD, REGISTRY_CREDENTIAL_OVERRIDE_FIELD, IMAGE_PULL_CREDENTIALS_TYPE_OVERRIDE_FIELD,
            BUILD_BATCH_CONFIG_OVERRIDE_FIELD, DEBUG_SESSION_ENABLED_FIELD));

    private static final Map> SDK_NAME_TO_FIELD = memberNameToFieldInitializer();

    private final String projectName;

    private final List secondarySourcesOverride;

    private final List secondarySourcesVersionOverride;

    private final String sourceVersion;

    private final ProjectArtifacts artifactsOverride;

    private final List secondaryArtifactsOverride;

    private final List environmentVariablesOverride;

    private final String sourceTypeOverride;

    private final String sourceLocationOverride;

    private final SourceAuth sourceAuthOverride;

    private final Integer gitCloneDepthOverride;

    private final GitSubmodulesConfig gitSubmodulesConfigOverride;

    private final String buildspecOverride;

    private final Boolean insecureSslOverride;

    private final Boolean reportBuildBatchStatusOverride;

    private final String environmentTypeOverride;

    private final String imageOverride;

    private final String computeTypeOverride;

    private final String certificateOverride;

    private final ProjectCache cacheOverride;

    private final String serviceRoleOverride;

    private final Boolean privilegedModeOverride;

    private final Integer buildTimeoutInMinutesOverride;

    private final Integer queuedTimeoutInMinutesOverride;

    private final String encryptionKeyOverride;

    private final String idempotencyToken;

    private final LogsConfig logsConfigOverride;

    private final RegistryCredential registryCredentialOverride;

    private final String imagePullCredentialsTypeOverride;

    private final ProjectBuildBatchConfig buildBatchConfigOverride;

    private final Boolean debugSessionEnabled;

    private StartBuildBatchRequest(BuilderImpl builder) {
        super(builder);
        this.projectName = builder.projectName;
        this.secondarySourcesOverride = builder.secondarySourcesOverride;
        this.secondarySourcesVersionOverride = builder.secondarySourcesVersionOverride;
        this.sourceVersion = builder.sourceVersion;
        this.artifactsOverride = builder.artifactsOverride;
        this.secondaryArtifactsOverride = builder.secondaryArtifactsOverride;
        this.environmentVariablesOverride = builder.environmentVariablesOverride;
        this.sourceTypeOverride = builder.sourceTypeOverride;
        this.sourceLocationOverride = builder.sourceLocationOverride;
        this.sourceAuthOverride = builder.sourceAuthOverride;
        this.gitCloneDepthOverride = builder.gitCloneDepthOverride;
        this.gitSubmodulesConfigOverride = builder.gitSubmodulesConfigOverride;
        this.buildspecOverride = builder.buildspecOverride;
        this.insecureSslOverride = builder.insecureSslOverride;
        this.reportBuildBatchStatusOverride = builder.reportBuildBatchStatusOverride;
        this.environmentTypeOverride = builder.environmentTypeOverride;
        this.imageOverride = builder.imageOverride;
        this.computeTypeOverride = builder.computeTypeOverride;
        this.certificateOverride = builder.certificateOverride;
        this.cacheOverride = builder.cacheOverride;
        this.serviceRoleOverride = builder.serviceRoleOverride;
        this.privilegedModeOverride = builder.privilegedModeOverride;
        this.buildTimeoutInMinutesOverride = builder.buildTimeoutInMinutesOverride;
        this.queuedTimeoutInMinutesOverride = builder.queuedTimeoutInMinutesOverride;
        this.encryptionKeyOverride = builder.encryptionKeyOverride;
        this.idempotencyToken = builder.idempotencyToken;
        this.logsConfigOverride = builder.logsConfigOverride;
        this.registryCredentialOverride = builder.registryCredentialOverride;
        this.imagePullCredentialsTypeOverride = builder.imagePullCredentialsTypeOverride;
        this.buildBatchConfigOverride = builder.buildBatchConfigOverride;
        this.debugSessionEnabled = builder.debugSessionEnabled;
    }

    /**
     * 

* The name of the project. *

* * @return The name of the project. */ public final String projectName() { return projectName; } /** * For responses, this returns true if the service returned a value for the SecondarySourcesOverride property. This * DOES NOT check that the value is non-empty (for which, you should check the {@code isEmpty()} method on the * property). This is useful because the SDK will never return a null collection or map, but you may need to * differentiate between the service returning nothing (or null) and the service returning an empty collection or * map. For requests, this returns true if a value for the property was specified in the request builder, and false * if a value was not specified. */ public final boolean hasSecondarySourcesOverride() { return secondarySourcesOverride != null && !(secondarySourcesOverride instanceof SdkAutoConstructList); } /** *

* An array of ProjectSource objects that override the secondary sources defined in the batch build * project. *

*

* Attempts to modify the collection returned by this method will result in an UnsupportedOperationException. *

*

* This method will never return null. If you would like to know whether the service returned this field (so that * you can differentiate between null and empty), you can use the {@link #hasSecondarySourcesOverride} method. *

* * @return An array of ProjectSource objects that override the secondary sources defined in the batch * build project. */ public final List secondarySourcesOverride() { return secondarySourcesOverride; } /** * For responses, this returns true if the service returned a value for the SecondarySourcesVersionOverride * property. This DOES NOT check that the value is non-empty (for which, you should check the {@code isEmpty()} * method on the property). This is useful because the SDK will never return a null collection or map, but you may * need to differentiate between the service returning nothing (or null) and the service returning an empty * collection or map. For requests, this returns true if a value for the property was specified in the request * builder, and false if a value was not specified. */ public final boolean hasSecondarySourcesVersionOverride() { return secondarySourcesVersionOverride != null && !(secondarySourcesVersionOverride instanceof SdkAutoConstructList); } /** *

* An array of ProjectSourceVersion objects that override the secondary source versions in the batch * build project. *

*

* Attempts to modify the collection returned by this method will result in an UnsupportedOperationException. *

*

* This method will never return null. If you would like to know whether the service returned this field (so that * you can differentiate between null and empty), you can use the {@link #hasSecondarySourcesVersionOverride} * method. *

* * @return An array of ProjectSourceVersion objects that override the secondary source versions in the * batch build project. */ public final List secondarySourcesVersionOverride() { return secondarySourcesVersionOverride; } /** *

* The version of the batch build input to be built, for this build only. If not specified, the latest version is * used. If specified, the contents depends on the source provider: *

*
*
CodeCommit
*
*

* The commit ID, branch, or Git tag to use. *

*
*
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. *

*
*
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. *

*
*
Amazon S3
*
*

* The version ID of the object that represents the build input ZIP file to use. *

*
*
*

* 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 The version of the batch build input to be built, for this build only. If not specified, the latest * version is used. If specified, the contents depends on the source provider:

*
*
CodeCommit
*
*

* The commit ID, branch, or Git tag to use. *

*
*
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. *

*
*
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. *

*
*
Amazon S3
*
*

* The version ID of the object that represents the build input ZIP file to use. *

*
*
*

* 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 final String sourceVersion() { return sourceVersion; } /** *

* An array of ProjectArtifacts objects that contains information about the build output artifact * overrides for the build project. *

* * @return An array of ProjectArtifacts objects that contains information about the build output * artifact overrides for the build project. */ public final ProjectArtifacts artifactsOverride() { return artifactsOverride; } /** * For responses, this returns true if the service returned a value for the SecondaryArtifactsOverride property. * This DOES NOT check that the value is non-empty (for which, you should check the {@code isEmpty()} method on the * property). This is useful because the SDK will never return a null collection or map, but you may need to * differentiate between the service returning nothing (or null) and the service returning an empty collection or * map. For requests, this returns true if a value for the property was specified in the request builder, and false * if a value was not specified. */ public final boolean hasSecondaryArtifactsOverride() { return secondaryArtifactsOverride != null && !(secondaryArtifactsOverride instanceof SdkAutoConstructList); } /** *

* An array of ProjectArtifacts objects that override the secondary artifacts defined in the batch * build project. *

*

* Attempts to modify the collection returned by this method will result in an UnsupportedOperationException. *

*

* This method will never return null. If you would like to know whether the service returned this field (so that * you can differentiate between null and empty), you can use the {@link #hasSecondaryArtifactsOverride} method. *

* * @return An array of ProjectArtifacts objects that override the secondary artifacts defined in the * batch build project. */ public final List secondaryArtifactsOverride() { return secondaryArtifactsOverride; } /** * For responses, this returns true if the service returned a value for the EnvironmentVariablesOverride property. * This DOES NOT check that the value is non-empty (for which, you should check the {@code isEmpty()} method on the * property). This is useful because the SDK will never return a null collection or map, but you may need to * differentiate between the service returning nothing (or null) and the service returning an empty collection or * map. For requests, this returns true if a value for the property was specified in the request builder, and false * if a value was not specified. */ public final boolean hasEnvironmentVariablesOverride() { return environmentVariablesOverride != null && !(environmentVariablesOverride instanceof SdkAutoConstructList); } /** *

* An array of EnvironmentVariable objects that override, or add to, the environment variables defined * in the batch build project. *

*

* Attempts to modify the collection returned by this method will result in an UnsupportedOperationException. *

*

* This method will never return null. If you would like to know whether the service returned this field (so that * you can differentiate between null and empty), you can use the {@link #hasEnvironmentVariablesOverride} method. *

* * @return An array of EnvironmentVariable objects that override, or add to, the environment variables * defined in the batch build project. */ public final List environmentVariablesOverride() { return environmentVariablesOverride; } /** *

* The source input type that overrides the source input defined in the batch build project. *

*

* If the service returns an enum value that is not available in the current SDK version, * {@link #sourceTypeOverride} will return {@link SourceType#UNKNOWN_TO_SDK_VERSION}. The raw value returned by the * service is available from {@link #sourceTypeOverrideAsString}. *

* * @return The source input type that overrides the source input defined in the batch build project. * @see SourceType */ public final SourceType sourceTypeOverride() { return SourceType.fromValue(sourceTypeOverride); } /** *

* The source input type that overrides the source input defined in the batch build project. *

*

* If the service returns an enum value that is not available in the current SDK version, * {@link #sourceTypeOverride} will return {@link SourceType#UNKNOWN_TO_SDK_VERSION}. The raw value returned by the * service is available from {@link #sourceTypeOverrideAsString}. *

* * @return The source input type that overrides the source input defined in the batch build project. * @see SourceType */ public final String sourceTypeOverrideAsString() { return sourceTypeOverride; } /** *

* A location that overrides, for this batch build, the source location defined in the batch build project. *

* * @return A location that overrides, for this batch build, the source location defined in the batch build project. */ public final String sourceLocationOverride() { return sourceLocationOverride; } /** *

* A SourceAuth object that overrides the one defined in the batch build project. This override applies * only if the build project's source is BitBucket or GitHub. *

* * @return A SourceAuth object that overrides the one defined in the batch build project. This override * applies only if the build project's source is BitBucket or GitHub. */ public final SourceAuth sourceAuthOverride() { return sourceAuthOverride; } /** *

* The user-defined depth of history, with a minimum value of 0, that overrides, for this batch build only, any * previous depth of history defined in the batch build project. *

* * @return The user-defined depth of history, with a minimum value of 0, that overrides, for this batch build only, * any previous depth of history defined in the batch build project. */ public final Integer gitCloneDepthOverride() { return gitCloneDepthOverride; } /** *

* A GitSubmodulesConfig object that overrides the Git submodules configuration for this batch build. *

* * @return A GitSubmodulesConfig object that overrides the Git submodules configuration for this batch * build. */ public final GitSubmodulesConfig gitSubmodulesConfigOverride() { return gitSubmodulesConfigOverride; } /** *

* A buildspec file declaration that overrides, for this build only, the latest one already defined in the build * project. *

*

* If this value is set, it can be either an inline buildspec definition, the path to an alternate buildspec file * relative to the value of the built-in CODEBUILD_SRC_DIR environment variable, or the path to an S3 * bucket. The bucket must be in the same Amazon Web Services Region as the build project. Specify the buildspec * file using its ARN (for example, arn:aws:s3:::my-codebuild-sample2/buildspec.yml). If this value is * not provided or is set to an empty string, the source code must contain a buildspec file in its root directory. * For more information, see Buildspec File Name and Storage Location. *

* * @return A buildspec file declaration that overrides, for this build only, the latest one already defined in the * build project.

*

* If this value is set, it can be either an inline buildspec definition, the path to an alternate buildspec * file relative to the value of the built-in CODEBUILD_SRC_DIR environment variable, or the * path to an S3 bucket. The bucket must be in the same Amazon Web Services Region as the build project. * Specify the buildspec file using its ARN (for example, * arn:aws:s3:::my-codebuild-sample2/buildspec.yml). If this value is not provided or is set to * an empty string, the source code must contain a buildspec file in its root directory. For more * information, see Buildspec File Name and Storage Location. */ public final String buildspecOverride() { return buildspecOverride; } /** *

* Enable this flag to override the insecure SSL setting that is specified in the batch build project. The insecure * SSL setting determines whether to ignore SSL warnings while connecting to the project source code. This override * applies only if the build's source is GitHub Enterprise. *

* * @return Enable this flag to override the insecure SSL setting that is specified in the batch build project. The * insecure SSL setting determines whether to ignore SSL warnings while connecting to the project source * code. This override applies only if the build's source is GitHub Enterprise. */ public final Boolean insecureSslOverride() { return insecureSslOverride; } /** *

* Set to true to report to your source provider the status of a batch build's start and completion. If * you use this option with a source provider other than GitHub, GitHub Enterprise, or Bitbucket, an * invalidInputException is thrown. *

* *

* The status of a build triggered by a webhook is always reported to your source provider. *

*
* * @return Set to true to report to your source provider the status of a batch build's start and * completion. If you use this option with a source provider other than GitHub, GitHub Enterprise, or * Bitbucket, an invalidInputException is thrown.

*

* The status of a build triggered by a webhook is always reported to your source provider. *

*/ public final Boolean reportBuildBatchStatusOverride() { return reportBuildBatchStatusOverride; } /** *

* A container type for this batch build that overrides the one specified in the batch build project. *

*

* If the service returns an enum value that is not available in the current SDK version, * {@link #environmentTypeOverride} will return {@link EnvironmentType#UNKNOWN_TO_SDK_VERSION}. The raw value * returned by the service is available from {@link #environmentTypeOverrideAsString}. *

* * @return A container type for this batch build that overrides the one specified in the batch build project. * @see EnvironmentType */ public final EnvironmentType environmentTypeOverride() { return EnvironmentType.fromValue(environmentTypeOverride); } /** *

* A container type for this batch build that overrides the one specified in the batch build project. *

*

* If the service returns an enum value that is not available in the current SDK version, * {@link #environmentTypeOverride} will return {@link EnvironmentType#UNKNOWN_TO_SDK_VERSION}. The raw value * returned by the service is available from {@link #environmentTypeOverrideAsString}. *

* * @return A container type for this batch build that overrides the one specified in the batch build project. * @see EnvironmentType */ public final String environmentTypeOverrideAsString() { return environmentTypeOverride; } /** *

* The name of an image for this batch build that overrides the one specified in the batch build project. *

* * @return The name of an image for this batch build that overrides the one specified in the batch build project. */ public final String imageOverride() { return imageOverride; } /** *

* The name of a compute type for this batch build that overrides the one specified in the batch build project. *

*

* If the service returns an enum value that is not available in the current SDK version, * {@link #computeTypeOverride} will return {@link ComputeType#UNKNOWN_TO_SDK_VERSION}. The raw value returned by * the service is available from {@link #computeTypeOverrideAsString}. *

* * @return The name of a compute type for this batch build that overrides the one specified in the batch build * project. * @see ComputeType */ public final ComputeType computeTypeOverride() { return ComputeType.fromValue(computeTypeOverride); } /** *

* The name of a compute type for this batch build that overrides the one specified in the batch build project. *

*

* If the service returns an enum value that is not available in the current SDK version, * {@link #computeTypeOverride} will return {@link ComputeType#UNKNOWN_TO_SDK_VERSION}. The raw value returned by * the service is available from {@link #computeTypeOverrideAsString}. *

* * @return The name of a compute type for this batch build that overrides the one specified in the batch build * project. * @see ComputeType */ public final String computeTypeOverrideAsString() { return computeTypeOverride; } /** *

* The name of a certificate for this batch build that overrides the one specified in the batch build project. *

* * @return The name of a certificate for this batch build that overrides the one specified in the batch build * project. */ public final String certificateOverride() { return certificateOverride; } /** *

* A ProjectCache object that specifies cache overrides. *

* * @return A ProjectCache object that specifies cache overrides. */ public final ProjectCache cacheOverride() { return cacheOverride; } /** *

* The name of a service role for this batch build that overrides the one specified in the batch build project. *

* * @return The name of a service role for this batch build that overrides the one specified in the batch build * project. */ public final String serviceRoleOverride() { return serviceRoleOverride; } /** *

* Enable this flag to override privileged mode in the batch build project. *

* * @return Enable this flag to override privileged mode in the batch build project. */ public final Boolean privilegedModeOverride() { return privilegedModeOverride; } /** *

* Overrides the build timeout specified in the batch build project. *

* * @return Overrides the build timeout specified in the batch build project. */ public final Integer buildTimeoutInMinutesOverride() { return buildTimeoutInMinutesOverride; } /** *

* The number of minutes a batch build is allowed to be queued before it times out. *

* * @return The number of minutes a batch build is allowed to be queued before it times out. */ public final Integer queuedTimeoutInMinutesOverride() { return queuedTimeoutInMinutesOverride; } /** *

* The Key Management Service customer master key (CMK) that overrides the one specified in the batch build project. * The CMK key encrypts 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) that overrides the one specified in the batch build * project. The CMK key encrypts 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 final String encryptionKeyOverride() { return encryptionKeyOverride; } /** *

* A unique, case sensitive identifier you provide to ensure the idempotency of the StartBuildBatch * request. The token is included in the StartBuildBatch request and is valid for five minutes. If you * repeat the StartBuildBatch request with the same token, but change a parameter, CodeBuild returns a * parameter mismatch error. *

* * @return A unique, case sensitive identifier you provide to ensure the idempotency of the * StartBuildBatch request. The token is included in the StartBuildBatch request * and is valid for five minutes. If you repeat the StartBuildBatch request with the same * token, but change a parameter, CodeBuild returns a parameter mismatch error. */ public final String idempotencyToken() { return idempotencyToken; } /** *

* A LogsConfig object that override the log settings defined in the batch build project. *

* * @return A LogsConfig object that override the log settings defined in the batch build project. */ public final LogsConfig logsConfigOverride() { return logsConfigOverride; } /** *

* A RegistryCredential object that overrides credentials for access to a private registry. *

* * @return A RegistryCredential object that overrides credentials for access to a private registry. */ public final RegistryCredential registryCredentialOverride() { return registryCredentialOverride; } /** *

* The type of credentials CodeBuild uses to pull images in your batch build. There are two valid values: *

*
*
CODEBUILD
*
*

* Specifies that CodeBuild uses its own credentials. This requires that you modify your ECR repository policy to * trust CodeBuild's service principal. *

*
*
SERVICE_ROLE
*
*

* Specifies that CodeBuild uses your build project's service role. *

*
*
*

* When using a cross-account or private registry image, you must use SERVICE_ROLE credentials. When * using an CodeBuild curated image, you must use CODEBUILD credentials. *

*

* If the service returns an enum value that is not available in the current SDK version, * {@link #imagePullCredentialsTypeOverride} will return {@link ImagePullCredentialsType#UNKNOWN_TO_SDK_VERSION}. * The raw value returned by the service is available from {@link #imagePullCredentialsTypeOverrideAsString}. *

* * @return The type of credentials CodeBuild uses to pull images in your batch build. There are two valid values: *

*
*
CODEBUILD
*
*

* Specifies that CodeBuild uses its own credentials. This requires that you modify your ECR repository * policy to trust CodeBuild's service principal. *

*
*
SERVICE_ROLE
*
*

* Specifies that CodeBuild uses your build project's service role. *

*
*
*

* When using a cross-account or private registry image, you must use SERVICE_ROLE credentials. * When using an CodeBuild curated image, you must use CODEBUILD credentials. * @see ImagePullCredentialsType */ public final ImagePullCredentialsType imagePullCredentialsTypeOverride() { return ImagePullCredentialsType.fromValue(imagePullCredentialsTypeOverride); } /** *

* The type of credentials CodeBuild uses to pull images in your batch build. There are two valid values: *

*
*
CODEBUILD
*
*

* Specifies that CodeBuild uses its own credentials. This requires that you modify your ECR repository policy to * trust CodeBuild's service principal. *

*
*
SERVICE_ROLE
*
*

* Specifies that CodeBuild uses your build project's service role. *

*
*
*

* When using a cross-account or private registry image, you must use SERVICE_ROLE credentials. When * using an CodeBuild curated image, you must use CODEBUILD credentials. *

*

* If the service returns an enum value that is not available in the current SDK version, * {@link #imagePullCredentialsTypeOverride} will return {@link ImagePullCredentialsType#UNKNOWN_TO_SDK_VERSION}. * The raw value returned by the service is available from {@link #imagePullCredentialsTypeOverrideAsString}. *

* * @return The type of credentials CodeBuild uses to pull images in your batch build. There are two valid values: *

*
*
CODEBUILD
*
*

* Specifies that CodeBuild uses its own credentials. This requires that you modify your ECR repository * policy to trust CodeBuild's service principal. *

*
*
SERVICE_ROLE
*
*

* Specifies that CodeBuild uses your build project's service role. *

*
*
*

* When using a cross-account or private registry image, you must use SERVICE_ROLE credentials. * When using an CodeBuild curated image, you must use CODEBUILD credentials. * @see ImagePullCredentialsType */ public final String imagePullCredentialsTypeOverrideAsString() { return imagePullCredentialsTypeOverride; } /** *

* A BuildBatchConfigOverride object that contains batch build configuration overrides. *

* * @return A BuildBatchConfigOverride object that contains batch build configuration overrides. */ public final ProjectBuildBatchConfig buildBatchConfigOverride() { return buildBatchConfigOverride; } /** *

* Specifies if session debugging is enabled for this batch build. For more information, see Viewing a running build in * Session Manager. Batch session debugging is not supported for matrix batch builds. *

* * @return Specifies if session debugging is enabled for this batch build. For more information, see Viewing a running * build in Session Manager. Batch session debugging is not supported for matrix batch builds. */ public final Boolean debugSessionEnabled() { return debugSessionEnabled; } @Override public Builder toBuilder() { return new BuilderImpl(this); } public static Builder builder() { return new BuilderImpl(); } public static Class serializableBuilderClass() { return BuilderImpl.class; } @Override public final int hashCode() { int hashCode = 1; hashCode = 31 * hashCode + super.hashCode(); hashCode = 31 * hashCode + Objects.hashCode(projectName()); hashCode = 31 * hashCode + Objects.hashCode(hasSecondarySourcesOverride() ? secondarySourcesOverride() : null); hashCode = 31 * hashCode + Objects.hashCode(hasSecondarySourcesVersionOverride() ? secondarySourcesVersionOverride() : null); hashCode = 31 * hashCode + Objects.hashCode(sourceVersion()); hashCode = 31 * hashCode + Objects.hashCode(artifactsOverride()); hashCode = 31 * hashCode + Objects.hashCode(hasSecondaryArtifactsOverride() ? secondaryArtifactsOverride() : null); hashCode = 31 * hashCode + Objects.hashCode(hasEnvironmentVariablesOverride() ? environmentVariablesOverride() : null); hashCode = 31 * hashCode + Objects.hashCode(sourceTypeOverrideAsString()); hashCode = 31 * hashCode + Objects.hashCode(sourceLocationOverride()); hashCode = 31 * hashCode + Objects.hashCode(sourceAuthOverride()); hashCode = 31 * hashCode + Objects.hashCode(gitCloneDepthOverride()); hashCode = 31 * hashCode + Objects.hashCode(gitSubmodulesConfigOverride()); hashCode = 31 * hashCode + Objects.hashCode(buildspecOverride()); hashCode = 31 * hashCode + Objects.hashCode(insecureSslOverride()); hashCode = 31 * hashCode + Objects.hashCode(reportBuildBatchStatusOverride()); hashCode = 31 * hashCode + Objects.hashCode(environmentTypeOverrideAsString()); hashCode = 31 * hashCode + Objects.hashCode(imageOverride()); hashCode = 31 * hashCode + Objects.hashCode(computeTypeOverrideAsString()); hashCode = 31 * hashCode + Objects.hashCode(certificateOverride()); hashCode = 31 * hashCode + Objects.hashCode(cacheOverride()); hashCode = 31 * hashCode + Objects.hashCode(serviceRoleOverride()); hashCode = 31 * hashCode + Objects.hashCode(privilegedModeOverride()); hashCode = 31 * hashCode + Objects.hashCode(buildTimeoutInMinutesOverride()); hashCode = 31 * hashCode + Objects.hashCode(queuedTimeoutInMinutesOverride()); hashCode = 31 * hashCode + Objects.hashCode(encryptionKeyOverride()); hashCode = 31 * hashCode + Objects.hashCode(idempotencyToken()); hashCode = 31 * hashCode + Objects.hashCode(logsConfigOverride()); hashCode = 31 * hashCode + Objects.hashCode(registryCredentialOverride()); hashCode = 31 * hashCode + Objects.hashCode(imagePullCredentialsTypeOverrideAsString()); hashCode = 31 * hashCode + Objects.hashCode(buildBatchConfigOverride()); hashCode = 31 * hashCode + Objects.hashCode(debugSessionEnabled()); return hashCode; } @Override public final boolean equals(Object obj) { return super.equals(obj) && equalsBySdkFields(obj); } @Override public final boolean equalsBySdkFields(Object obj) { if (this == obj) { return true; } if (obj == null) { return false; } if (!(obj instanceof StartBuildBatchRequest)) { return false; } StartBuildBatchRequest other = (StartBuildBatchRequest) obj; return Objects.equals(projectName(), other.projectName()) && hasSecondarySourcesOverride() == other.hasSecondarySourcesOverride() && Objects.equals(secondarySourcesOverride(), other.secondarySourcesOverride()) && hasSecondarySourcesVersionOverride() == other.hasSecondarySourcesVersionOverride() && Objects.equals(secondarySourcesVersionOverride(), other.secondarySourcesVersionOverride()) && Objects.equals(sourceVersion(), other.sourceVersion()) && Objects.equals(artifactsOverride(), other.artifactsOverride()) && hasSecondaryArtifactsOverride() == other.hasSecondaryArtifactsOverride() && Objects.equals(secondaryArtifactsOverride(), other.secondaryArtifactsOverride()) && hasEnvironmentVariablesOverride() == other.hasEnvironmentVariablesOverride() && Objects.equals(environmentVariablesOverride(), other.environmentVariablesOverride()) && Objects.equals(sourceTypeOverrideAsString(), other.sourceTypeOverrideAsString()) && Objects.equals(sourceLocationOverride(), other.sourceLocationOverride()) && Objects.equals(sourceAuthOverride(), other.sourceAuthOverride()) && Objects.equals(gitCloneDepthOverride(), other.gitCloneDepthOverride()) && Objects.equals(gitSubmodulesConfigOverride(), other.gitSubmodulesConfigOverride()) && Objects.equals(buildspecOverride(), other.buildspecOverride()) && Objects.equals(insecureSslOverride(), other.insecureSslOverride()) && Objects.equals(reportBuildBatchStatusOverride(), other.reportBuildBatchStatusOverride()) && Objects.equals(environmentTypeOverrideAsString(), other.environmentTypeOverrideAsString()) && Objects.equals(imageOverride(), other.imageOverride()) && Objects.equals(computeTypeOverrideAsString(), other.computeTypeOverrideAsString()) && Objects.equals(certificateOverride(), other.certificateOverride()) && Objects.equals(cacheOverride(), other.cacheOverride()) && Objects.equals(serviceRoleOverride(), other.serviceRoleOverride()) && Objects.equals(privilegedModeOverride(), other.privilegedModeOverride()) && Objects.equals(buildTimeoutInMinutesOverride(), other.buildTimeoutInMinutesOverride()) && Objects.equals(queuedTimeoutInMinutesOverride(), other.queuedTimeoutInMinutesOverride()) && Objects.equals(encryptionKeyOverride(), other.encryptionKeyOverride()) && Objects.equals(idempotencyToken(), other.idempotencyToken()) && Objects.equals(logsConfigOverride(), other.logsConfigOverride()) && Objects.equals(registryCredentialOverride(), other.registryCredentialOverride()) && Objects.equals(imagePullCredentialsTypeOverrideAsString(), other.imagePullCredentialsTypeOverrideAsString()) && Objects.equals(buildBatchConfigOverride(), other.buildBatchConfigOverride()) && Objects.equals(debugSessionEnabled(), other.debugSessionEnabled()); } /** * 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. */ @Override public final String toString() { return ToString .builder("StartBuildBatchRequest") .add("ProjectName", projectName()) .add("SecondarySourcesOverride", hasSecondarySourcesOverride() ? secondarySourcesOverride() : null) .add("SecondarySourcesVersionOverride", hasSecondarySourcesVersionOverride() ? secondarySourcesVersionOverride() : null) .add("SourceVersion", sourceVersion()).add("ArtifactsOverride", artifactsOverride()) .add("SecondaryArtifactsOverride", hasSecondaryArtifactsOverride() ? secondaryArtifactsOverride() : null) .add("EnvironmentVariablesOverride", hasEnvironmentVariablesOverride() ? environmentVariablesOverride() : null) .add("SourceTypeOverride", sourceTypeOverrideAsString()).add("SourceLocationOverride", sourceLocationOverride()) .add("SourceAuthOverride", sourceAuthOverride()).add("GitCloneDepthOverride", gitCloneDepthOverride()) .add("GitSubmodulesConfigOverride", gitSubmodulesConfigOverride()).add("BuildspecOverride", buildspecOverride()) .add("InsecureSslOverride", insecureSslOverride()) .add("ReportBuildBatchStatusOverride", reportBuildBatchStatusOverride()) .add("EnvironmentTypeOverride", environmentTypeOverrideAsString()).add("ImageOverride", imageOverride()) .add("ComputeTypeOverride", computeTypeOverrideAsString()).add("CertificateOverride", certificateOverride()) .add("CacheOverride", cacheOverride()).add("ServiceRoleOverride", serviceRoleOverride()) .add("PrivilegedModeOverride", privilegedModeOverride()) .add("BuildTimeoutInMinutesOverride", buildTimeoutInMinutesOverride()) .add("QueuedTimeoutInMinutesOverride", queuedTimeoutInMinutesOverride()) .add("EncryptionKeyOverride", encryptionKeyOverride()).add("IdempotencyToken", idempotencyToken()) .add("LogsConfigOverride", logsConfigOverride()).add("RegistryCredentialOverride", registryCredentialOverride()) .add("ImagePullCredentialsTypeOverride", imagePullCredentialsTypeOverrideAsString()) .add("BuildBatchConfigOverride", buildBatchConfigOverride()).add("DebugSessionEnabled", debugSessionEnabled()) .build(); } public final Optional getValueForField(String fieldName, Class clazz) { switch (fieldName) { case "projectName": return Optional.ofNullable(clazz.cast(projectName())); case "secondarySourcesOverride": return Optional.ofNullable(clazz.cast(secondarySourcesOverride())); case "secondarySourcesVersionOverride": return Optional.ofNullable(clazz.cast(secondarySourcesVersionOverride())); case "sourceVersion": return Optional.ofNullable(clazz.cast(sourceVersion())); case "artifactsOverride": return Optional.ofNullable(clazz.cast(artifactsOverride())); case "secondaryArtifactsOverride": return Optional.ofNullable(clazz.cast(secondaryArtifactsOverride())); case "environmentVariablesOverride": return Optional.ofNullable(clazz.cast(environmentVariablesOverride())); case "sourceTypeOverride": return Optional.ofNullable(clazz.cast(sourceTypeOverrideAsString())); case "sourceLocationOverride": return Optional.ofNullable(clazz.cast(sourceLocationOverride())); case "sourceAuthOverride": return Optional.ofNullable(clazz.cast(sourceAuthOverride())); case "gitCloneDepthOverride": return Optional.ofNullable(clazz.cast(gitCloneDepthOverride())); case "gitSubmodulesConfigOverride": return Optional.ofNullable(clazz.cast(gitSubmodulesConfigOverride())); case "buildspecOverride": return Optional.ofNullable(clazz.cast(buildspecOverride())); case "insecureSslOverride": return Optional.ofNullable(clazz.cast(insecureSslOverride())); case "reportBuildBatchStatusOverride": return Optional.ofNullable(clazz.cast(reportBuildBatchStatusOverride())); case "environmentTypeOverride": return Optional.ofNullable(clazz.cast(environmentTypeOverrideAsString())); case "imageOverride": return Optional.ofNullable(clazz.cast(imageOverride())); case "computeTypeOverride": return Optional.ofNullable(clazz.cast(computeTypeOverrideAsString())); case "certificateOverride": return Optional.ofNullable(clazz.cast(certificateOverride())); case "cacheOverride": return Optional.ofNullable(clazz.cast(cacheOverride())); case "serviceRoleOverride": return Optional.ofNullable(clazz.cast(serviceRoleOverride())); case "privilegedModeOverride": return Optional.ofNullable(clazz.cast(privilegedModeOverride())); case "buildTimeoutInMinutesOverride": return Optional.ofNullable(clazz.cast(buildTimeoutInMinutesOverride())); case "queuedTimeoutInMinutesOverride": return Optional.ofNullable(clazz.cast(queuedTimeoutInMinutesOverride())); case "encryptionKeyOverride": return Optional.ofNullable(clazz.cast(encryptionKeyOverride())); case "idempotencyToken": return Optional.ofNullable(clazz.cast(idempotencyToken())); case "logsConfigOverride": return Optional.ofNullable(clazz.cast(logsConfigOverride())); case "registryCredentialOverride": return Optional.ofNullable(clazz.cast(registryCredentialOverride())); case "imagePullCredentialsTypeOverride": return Optional.ofNullable(clazz.cast(imagePullCredentialsTypeOverrideAsString())); case "buildBatchConfigOverride": return Optional.ofNullable(clazz.cast(buildBatchConfigOverride())); case "debugSessionEnabled": return Optional.ofNullable(clazz.cast(debugSessionEnabled())); default: return Optional.empty(); } } @Override public final List> sdkFields() { return SDK_FIELDS; } @Override public final Map> sdkFieldNameToField() { return SDK_NAME_TO_FIELD; } private static Map> memberNameToFieldInitializer() { Map> map = new HashMap<>(); map.put("projectName", PROJECT_NAME_FIELD); map.put("secondarySourcesOverride", SECONDARY_SOURCES_OVERRIDE_FIELD); map.put("secondarySourcesVersionOverride", SECONDARY_SOURCES_VERSION_OVERRIDE_FIELD); map.put("sourceVersion", SOURCE_VERSION_FIELD); map.put("artifactsOverride", ARTIFACTS_OVERRIDE_FIELD); map.put("secondaryArtifactsOverride", SECONDARY_ARTIFACTS_OVERRIDE_FIELD); map.put("environmentVariablesOverride", ENVIRONMENT_VARIABLES_OVERRIDE_FIELD); map.put("sourceTypeOverride", SOURCE_TYPE_OVERRIDE_FIELD); map.put("sourceLocationOverride", SOURCE_LOCATION_OVERRIDE_FIELD); map.put("sourceAuthOverride", SOURCE_AUTH_OVERRIDE_FIELD); map.put("gitCloneDepthOverride", GIT_CLONE_DEPTH_OVERRIDE_FIELD); map.put("gitSubmodulesConfigOverride", GIT_SUBMODULES_CONFIG_OVERRIDE_FIELD); map.put("buildspecOverride", BUILDSPEC_OVERRIDE_FIELD); map.put("insecureSslOverride", INSECURE_SSL_OVERRIDE_FIELD); map.put("reportBuildBatchStatusOverride", REPORT_BUILD_BATCH_STATUS_OVERRIDE_FIELD); map.put("environmentTypeOverride", ENVIRONMENT_TYPE_OVERRIDE_FIELD); map.put("imageOverride", IMAGE_OVERRIDE_FIELD); map.put("computeTypeOverride", COMPUTE_TYPE_OVERRIDE_FIELD); map.put("certificateOverride", CERTIFICATE_OVERRIDE_FIELD); map.put("cacheOverride", CACHE_OVERRIDE_FIELD); map.put("serviceRoleOverride", SERVICE_ROLE_OVERRIDE_FIELD); map.put("privilegedModeOverride", PRIVILEGED_MODE_OVERRIDE_FIELD); map.put("buildTimeoutInMinutesOverride", BUILD_TIMEOUT_IN_MINUTES_OVERRIDE_FIELD); map.put("queuedTimeoutInMinutesOverride", QUEUED_TIMEOUT_IN_MINUTES_OVERRIDE_FIELD); map.put("encryptionKeyOverride", ENCRYPTION_KEY_OVERRIDE_FIELD); map.put("idempotencyToken", IDEMPOTENCY_TOKEN_FIELD); map.put("logsConfigOverride", LOGS_CONFIG_OVERRIDE_FIELD); map.put("registryCredentialOverride", REGISTRY_CREDENTIAL_OVERRIDE_FIELD); map.put("imagePullCredentialsTypeOverride", IMAGE_PULL_CREDENTIALS_TYPE_OVERRIDE_FIELD); map.put("buildBatchConfigOverride", BUILD_BATCH_CONFIG_OVERRIDE_FIELD); map.put("debugSessionEnabled", DEBUG_SESSION_ENABLED_FIELD); return Collections.unmodifiableMap(map); } private static Function getter(Function g) { return obj -> g.apply((StartBuildBatchRequest) obj); } private static BiConsumer setter(BiConsumer s) { return (obj, val) -> s.accept((Builder) obj, val); } public interface Builder extends CodeBuildRequest.Builder, SdkPojo, CopyableBuilder { /** *

* The name of the project. *

* * @param projectName * The name of the project. * @return Returns a reference to this object so that method calls can be chained together. */ Builder projectName(String projectName); /** *

* An array of ProjectSource objects that override the secondary sources defined in the batch build * project. *

* * @param secondarySourcesOverride * An array of ProjectSource objects that override the secondary sources defined in the * batch build project. * @return Returns a reference to this object so that method calls can be chained together. */ Builder secondarySourcesOverride(Collection secondarySourcesOverride); /** *

* An array of ProjectSource objects that override the secondary sources defined in the batch build * project. *

* * @param secondarySourcesOverride * An array of ProjectSource objects that override the secondary sources defined in the * batch build project. * @return Returns a reference to this object so that method calls can be chained together. */ Builder secondarySourcesOverride(ProjectSource... secondarySourcesOverride); /** *

* An array of ProjectSource objects that override the secondary sources defined in the batch build * project. *

* This is a convenience method that creates an instance of the * {@link software.amazon.awssdk.services.codebuild.model.ProjectSource.Builder} avoiding the need to create one * manually via {@link software.amazon.awssdk.services.codebuild.model.ProjectSource#builder()}. * *

* When the {@link Consumer} completes, * {@link software.amazon.awssdk.services.codebuild.model.ProjectSource.Builder#build()} is called immediately * and its result is passed to {@link #secondarySourcesOverride(List)}. * * @param secondarySourcesOverride * a consumer that will call methods on * {@link software.amazon.awssdk.services.codebuild.model.ProjectSource.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #secondarySourcesOverride(java.util.Collection) */ Builder secondarySourcesOverride(Consumer... secondarySourcesOverride); /** *

* An array of ProjectSourceVersion objects that override the secondary source versions in the * batch build project. *

* * @param secondarySourcesVersionOverride * An array of ProjectSourceVersion objects that override the secondary source versions in * the batch build project. * @return Returns a reference to this object so that method calls can be chained together. */ Builder secondarySourcesVersionOverride(Collection secondarySourcesVersionOverride); /** *

* An array of ProjectSourceVersion objects that override the secondary source versions in the * batch build project. *

* * @param secondarySourcesVersionOverride * An array of ProjectSourceVersion objects that override the secondary source versions in * the batch build project. * @return Returns a reference to this object so that method calls can be chained together. */ Builder secondarySourcesVersionOverride(ProjectSourceVersion... secondarySourcesVersionOverride); /** *

* An array of ProjectSourceVersion objects that override the secondary source versions in the * batch build project. *

* This is a convenience method that creates an instance of the * {@link software.amazon.awssdk.services.codebuild.model.ProjectSourceVersion.Builder} avoiding the need to * create one manually via * {@link software.amazon.awssdk.services.codebuild.model.ProjectSourceVersion#builder()}. * *

* When the {@link Consumer} completes, * {@link software.amazon.awssdk.services.codebuild.model.ProjectSourceVersion.Builder#build()} is called * immediately and its result is passed to {@link #secondarySourcesVersionOverride(List)}. * * @param secondarySourcesVersionOverride * a consumer that will call methods on * {@link software.amazon.awssdk.services.codebuild.model.ProjectSourceVersion.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #secondarySourcesVersionOverride(java.util.Collection) */ Builder secondarySourcesVersionOverride(Consumer... secondarySourcesVersionOverride); /** *

* The version of the batch build input to be built, for this build only. If not specified, the latest version * is used. If specified, the contents depends on the source provider: *

*
*
CodeCommit
*
*

* The commit ID, branch, or Git tag to use. *

*
*
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. *

*
*
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. *

*
*
Amazon S3
*
*

* The version ID of the object that represents the build input ZIP file to use. *

*
*
*

* 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 * The version of the batch build input to be built, for this build only. If not specified, the latest * version is used. If specified, the contents depends on the source provider:

*
*
CodeCommit
*
*

* The commit ID, branch, or Git tag to use. *

*
*
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. *

*
*
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. *

*
*
Amazon S3
*
*

* The version ID of the object that represents the build input ZIP file to use. *

*
*
*

* 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. */ Builder sourceVersion(String sourceVersion); /** *

* An array of ProjectArtifacts objects that contains information about the build output artifact * overrides for the build project. *

* * @param artifactsOverride * An array of ProjectArtifacts objects that contains information about the build output * artifact overrides for the build project. * @return Returns a reference to this object so that method calls can be chained together. */ Builder artifactsOverride(ProjectArtifacts artifactsOverride); /** *

* An array of ProjectArtifacts objects that contains information about the build output artifact * overrides for the build project. *

* This is a convenience method that creates an instance of the {@link ProjectArtifacts.Builder} avoiding the * need to create one manually via {@link ProjectArtifacts#builder()}. * *

* When the {@link Consumer} completes, {@link ProjectArtifacts.Builder#build()} is called immediately and its * result is passed to {@link #artifactsOverride(ProjectArtifacts)}. * * @param artifactsOverride * a consumer that will call methods on {@link ProjectArtifacts.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #artifactsOverride(ProjectArtifacts) */ default Builder artifactsOverride(Consumer artifactsOverride) { return artifactsOverride(ProjectArtifacts.builder().applyMutation(artifactsOverride).build()); } /** *

* An array of ProjectArtifacts objects that override the secondary artifacts defined in the batch * build project. *

* * @param secondaryArtifactsOverride * An array of ProjectArtifacts objects that override the secondary artifacts defined in the * batch build project. * @return Returns a reference to this object so that method calls can be chained together. */ Builder secondaryArtifactsOverride(Collection secondaryArtifactsOverride); /** *

* An array of ProjectArtifacts objects that override the secondary artifacts defined in the batch * build project. *

* * @param secondaryArtifactsOverride * An array of ProjectArtifacts objects that override the secondary artifacts defined in the * batch build project. * @return Returns a reference to this object so that method calls can be chained together. */ Builder secondaryArtifactsOverride(ProjectArtifacts... secondaryArtifactsOverride); /** *

* An array of ProjectArtifacts objects that override the secondary artifacts defined in the batch * build project. *

* This is a convenience method that creates an instance of the * {@link software.amazon.awssdk.services.codebuild.model.ProjectArtifacts.Builder} avoiding the need to create * one manually via {@link software.amazon.awssdk.services.codebuild.model.ProjectArtifacts#builder()}. * *

* When the {@link Consumer} completes, * {@link software.amazon.awssdk.services.codebuild.model.ProjectArtifacts.Builder#build()} is called * immediately and its result is passed to {@link #secondaryArtifactsOverride(List)}. * * @param secondaryArtifactsOverride * a consumer that will call methods on * {@link software.amazon.awssdk.services.codebuild.model.ProjectArtifacts.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #secondaryArtifactsOverride(java.util.Collection) */ Builder secondaryArtifactsOverride(Consumer... secondaryArtifactsOverride); /** *

* An array of EnvironmentVariable objects that override, or add to, the environment variables * defined in the batch build project. *

* * @param environmentVariablesOverride * An array of EnvironmentVariable objects that override, or add to, the environment * variables defined in the batch build project. * @return Returns a reference to this object so that method calls can be chained together. */ Builder environmentVariablesOverride(Collection environmentVariablesOverride); /** *

* An array of EnvironmentVariable objects that override, or add to, the environment variables * defined in the batch build project. *

* * @param environmentVariablesOverride * An array of EnvironmentVariable objects that override, or add to, the environment * variables defined in the batch build project. * @return Returns a reference to this object so that method calls can be chained together. */ Builder environmentVariablesOverride(EnvironmentVariable... environmentVariablesOverride); /** *

* An array of EnvironmentVariable objects that override, or add to, the environment variables * defined in the batch build project. *

* This is a convenience method that creates an instance of the * {@link software.amazon.awssdk.services.codebuild.model.EnvironmentVariable.Builder} avoiding the need to * create one manually via {@link software.amazon.awssdk.services.codebuild.model.EnvironmentVariable#builder()} * . * *

* When the {@link Consumer} completes, * {@link software.amazon.awssdk.services.codebuild.model.EnvironmentVariable.Builder#build()} is called * immediately and its result is passed to {@link #environmentVariablesOverride(List)}. * * @param environmentVariablesOverride * a consumer that will call methods on * {@link software.amazon.awssdk.services.codebuild.model.EnvironmentVariable.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #environmentVariablesOverride(java.util.Collection) */ Builder environmentVariablesOverride(Consumer... environmentVariablesOverride); /** *

* The source input type that overrides the source input defined in the batch build project. *

* * @param sourceTypeOverride * The source input type that overrides the source input defined in the batch build project. * @see SourceType * @return Returns a reference to this object so that method calls can be chained together. * @see SourceType */ Builder sourceTypeOverride(String sourceTypeOverride); /** *

* The source input type that overrides the source input defined in the batch build project. *

* * @param sourceTypeOverride * The source input type that overrides the source input defined in the batch build project. * @see SourceType * @return Returns a reference to this object so that method calls can be chained together. * @see SourceType */ Builder sourceTypeOverride(SourceType sourceTypeOverride); /** *

* A location that overrides, for this batch build, the source location defined in the batch build project. *

* * @param sourceLocationOverride * A location that overrides, for this batch build, the source location defined in the batch build * project. * @return Returns a reference to this object so that method calls can be chained together. */ Builder sourceLocationOverride(String sourceLocationOverride); /** *

* A SourceAuth object that overrides the one defined in the batch build project. This override * applies only if the build project's source is BitBucket or GitHub. *

* * @param sourceAuthOverride * A SourceAuth object that overrides the one defined in the batch build project. This * override applies only if the build project's source is BitBucket or GitHub. * @return Returns a reference to this object so that method calls can be chained together. */ Builder sourceAuthOverride(SourceAuth sourceAuthOverride); /** *

* A SourceAuth object that overrides the one defined in the batch build project. This override * applies only if the build project's source is BitBucket or GitHub. *

* This is a convenience method that creates an instance of the {@link SourceAuth.Builder} avoiding the need to * create one manually via {@link SourceAuth#builder()}. * *

* When the {@link Consumer} completes, {@link SourceAuth.Builder#build()} is called immediately and its result * is passed to {@link #sourceAuthOverride(SourceAuth)}. * * @param sourceAuthOverride * a consumer that will call methods on {@link SourceAuth.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #sourceAuthOverride(SourceAuth) */ default Builder sourceAuthOverride(Consumer sourceAuthOverride) { return sourceAuthOverride(SourceAuth.builder().applyMutation(sourceAuthOverride).build()); } /** *

* The user-defined depth of history, with a minimum value of 0, that overrides, for this batch build only, any * previous depth of history defined in the batch build project. *

* * @param gitCloneDepthOverride * The user-defined depth of history, with a minimum value of 0, that overrides, for this batch build * only, any previous depth of history defined in the batch build project. * @return Returns a reference to this object so that method calls can be chained together. */ Builder gitCloneDepthOverride(Integer gitCloneDepthOverride); /** *

* A GitSubmodulesConfig object that overrides the Git submodules configuration for this batch * build. *

* * @param gitSubmodulesConfigOverride * A GitSubmodulesConfig object that overrides the Git submodules configuration for this * batch build. * @return Returns a reference to this object so that method calls can be chained together. */ Builder gitSubmodulesConfigOverride(GitSubmodulesConfig gitSubmodulesConfigOverride); /** *

* A GitSubmodulesConfig object that overrides the Git submodules configuration for this batch * build. *

* This is a convenience method that creates an instance of the {@link GitSubmodulesConfig.Builder} avoiding the * need to create one manually via {@link GitSubmodulesConfig#builder()}. * *

* When the {@link Consumer} completes, {@link GitSubmodulesConfig.Builder#build()} is called immediately and * its result is passed to {@link #gitSubmodulesConfigOverride(GitSubmodulesConfig)}. * * @param gitSubmodulesConfigOverride * a consumer that will call methods on {@link GitSubmodulesConfig.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #gitSubmodulesConfigOverride(GitSubmodulesConfig) */ default Builder gitSubmodulesConfigOverride(Consumer gitSubmodulesConfigOverride) { return gitSubmodulesConfigOverride(GitSubmodulesConfig.builder().applyMutation(gitSubmodulesConfigOverride).build()); } /** *

* A buildspec file declaration that overrides, for this build only, the latest one already defined in the build * project. *

*

* If this value is set, it can be either an inline buildspec definition, the path to an alternate buildspec * file relative to the value of the built-in CODEBUILD_SRC_DIR environment variable, or the path * to an S3 bucket. The bucket must be in the same Amazon Web Services Region as the build project. Specify the * buildspec file using its ARN (for example, arn:aws:s3:::my-codebuild-sample2/buildspec.yml). If * this value is not provided or is set to an empty string, the source code must contain a buildspec file in its * root directory. For more information, see Buildspec File Name and Storage Location. *

* * @param buildspecOverride * A buildspec file declaration that overrides, for this build only, the latest one already defined in * the build project.

*

* If this value is set, it can be either an inline buildspec definition, the path to an alternate * buildspec file relative to the value of the built-in CODEBUILD_SRC_DIR environment * variable, or the path to an S3 bucket. The bucket must be in the same Amazon Web Services Region as * the build project. Specify the buildspec file using its ARN (for example, * arn:aws:s3:::my-codebuild-sample2/buildspec.yml). If this value is not provided or is set * to an empty string, the source code must contain a buildspec file in its root directory. For more * information, see Buildspec File Name and Storage Location. * @return Returns a reference to this object so that method calls can be chained together. */ Builder buildspecOverride(String buildspecOverride); /** *

* Enable this flag to override the insecure SSL setting that is specified in the batch build project. The * insecure SSL setting determines whether to ignore SSL warnings while connecting to the project source code. * This override applies only if the build's source is GitHub Enterprise. *

* * @param insecureSslOverride * Enable this flag to override the insecure SSL setting that is specified in the batch build project. * The insecure SSL setting determines whether to ignore SSL warnings while connecting to the project * source code. This override applies only if the build's source is GitHub Enterprise. * @return Returns a reference to this object so that method calls can be chained together. */ Builder insecureSslOverride(Boolean insecureSslOverride); /** *

* Set to true to report to your source provider the status of a batch build's start and * completion. If you use this option with a source provider other than GitHub, GitHub Enterprise, or Bitbucket, * an invalidInputException is thrown. *

* *

* The status of a build triggered by a webhook is always reported to your source provider. *

*
* * @param reportBuildBatchStatusOverride * Set to true to report to your source provider the status of a batch build's start and * completion. If you use this option with a source provider other than GitHub, GitHub Enterprise, or * Bitbucket, an invalidInputException is thrown.

*

* The status of a build triggered by a webhook is always reported to your source provider. *

* @return Returns a reference to this object so that method calls can be chained together. */ Builder reportBuildBatchStatusOverride(Boolean reportBuildBatchStatusOverride); /** *

* A container type for this batch build that overrides the one specified in the batch build project. *

* * @param environmentTypeOverride * A container type for this batch build that overrides the one specified in the batch build project. * @see EnvironmentType * @return Returns a reference to this object so that method calls can be chained together. * @see EnvironmentType */ Builder environmentTypeOverride(String environmentTypeOverride); /** *

* A container type for this batch build that overrides the one specified in the batch build project. *

* * @param environmentTypeOverride * A container type for this batch build that overrides the one specified in the batch build project. * @see EnvironmentType * @return Returns a reference to this object so that method calls can be chained together. * @see EnvironmentType */ Builder environmentTypeOverride(EnvironmentType environmentTypeOverride); /** *

* The name of an image for this batch build that overrides the one specified in the batch build project. *

* * @param imageOverride * The name of an image for this batch build that overrides the one specified in the batch build project. * @return Returns a reference to this object so that method calls can be chained together. */ Builder imageOverride(String imageOverride); /** *

* The name of a compute type for this batch build that overrides the one specified in the batch build project. *

* * @param computeTypeOverride * The name of a compute type for this batch build that overrides the one specified in the batch build * project. * @see ComputeType * @return Returns a reference to this object so that method calls can be chained together. * @see ComputeType */ Builder computeTypeOverride(String computeTypeOverride); /** *

* The name of a compute type for this batch build that overrides the one specified in the batch build project. *

* * @param computeTypeOverride * The name of a compute type for this batch build that overrides the one specified in the batch build * project. * @see ComputeType * @return Returns a reference to this object so that method calls can be chained together. * @see ComputeType */ Builder computeTypeOverride(ComputeType computeTypeOverride); /** *

* The name of a certificate for this batch build that overrides the one specified in the batch build project. *

* * @param certificateOverride * The name of a certificate for this batch build that overrides the one specified in the batch build * project. * @return Returns a reference to this object so that method calls can be chained together. */ Builder certificateOverride(String certificateOverride); /** *

* A ProjectCache object that specifies cache overrides. *

* * @param cacheOverride * A ProjectCache object that specifies cache overrides. * @return Returns a reference to this object so that method calls can be chained together. */ Builder cacheOverride(ProjectCache cacheOverride); /** *

* A ProjectCache object that specifies cache overrides. *

* This is a convenience method that creates an instance of the {@link ProjectCache.Builder} avoiding the need * to create one manually via {@link ProjectCache#builder()}. * *

* When the {@link Consumer} completes, {@link ProjectCache.Builder#build()} is called immediately and its * result is passed to {@link #cacheOverride(ProjectCache)}. * * @param cacheOverride * a consumer that will call methods on {@link ProjectCache.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #cacheOverride(ProjectCache) */ default Builder cacheOverride(Consumer cacheOverride) { return cacheOverride(ProjectCache.builder().applyMutation(cacheOverride).build()); } /** *

* The name of a service role for this batch build that overrides the one specified in the batch build project. *

* * @param serviceRoleOverride * The name of a service role for this batch build that overrides the one specified in the batch build * project. * @return Returns a reference to this object so that method calls can be chained together. */ Builder serviceRoleOverride(String serviceRoleOverride); /** *

* Enable this flag to override privileged mode in the batch build project. *

* * @param privilegedModeOverride * Enable this flag to override privileged mode in the batch build project. * @return Returns a reference to this object so that method calls can be chained together. */ Builder privilegedModeOverride(Boolean privilegedModeOverride); /** *

* Overrides the build timeout specified in the batch build project. *

* * @param buildTimeoutInMinutesOverride * Overrides the build timeout specified in the batch build project. * @return Returns a reference to this object so that method calls can be chained together. */ Builder buildTimeoutInMinutesOverride(Integer buildTimeoutInMinutesOverride); /** *

* The number of minutes a batch build is allowed to be queued before it times out. *

* * @param queuedTimeoutInMinutesOverride * The number of minutes a batch 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. */ Builder queuedTimeoutInMinutesOverride(Integer queuedTimeoutInMinutesOverride); /** *

* The Key Management Service customer master key (CMK) that overrides the one specified in the batch build * project. The CMK key encrypts 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 encryptionKeyOverride * The Key Management Service customer master key (CMK) that overrides the one specified in the batch * build project. The CMK key encrypts 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. */ Builder encryptionKeyOverride(String encryptionKeyOverride); /** *

* A unique, case sensitive identifier you provide to ensure the idempotency of the StartBuildBatch * request. The token is included in the StartBuildBatch request and is valid for five minutes. If * you repeat the StartBuildBatch request with the same token, but change a parameter, CodeBuild * returns a parameter mismatch error. *

* * @param idempotencyToken * A unique, case sensitive identifier you provide to ensure the idempotency of the * StartBuildBatch request. The token is included in the StartBuildBatch * request and is valid for five minutes. If you repeat the StartBuildBatch request with the * same token, but change a parameter, CodeBuild returns a parameter mismatch error. * @return Returns a reference to this object so that method calls can be chained together. */ Builder idempotencyToken(String idempotencyToken); /** *

* A LogsConfig object that override the log settings defined in the batch build project. *

* * @param logsConfigOverride * A LogsConfig object that override the log settings defined in the batch build project. * @return Returns a reference to this object so that method calls can be chained together. */ Builder logsConfigOverride(LogsConfig logsConfigOverride); /** *

* A LogsConfig object that override the log settings defined in the batch build project. *

* This is a convenience method that creates an instance of the {@link LogsConfig.Builder} avoiding the need to * create one manually via {@link LogsConfig#builder()}. * *

* When the {@link Consumer} completes, {@link LogsConfig.Builder#build()} is called immediately and its result * is passed to {@link #logsConfigOverride(LogsConfig)}. * * @param logsConfigOverride * a consumer that will call methods on {@link LogsConfig.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #logsConfigOverride(LogsConfig) */ default Builder logsConfigOverride(Consumer logsConfigOverride) { return logsConfigOverride(LogsConfig.builder().applyMutation(logsConfigOverride).build()); } /** *

* A RegistryCredential object that overrides credentials for access to a private registry. *

* * @param registryCredentialOverride * A RegistryCredential object that overrides credentials for access to a private registry. * @return Returns a reference to this object so that method calls can be chained together. */ Builder registryCredentialOverride(RegistryCredential registryCredentialOverride); /** *

* A RegistryCredential object that overrides credentials for access to a private registry. *

* This is a convenience method that creates an instance of the {@link RegistryCredential.Builder} avoiding the * need to create one manually via {@link RegistryCredential#builder()}. * *

* When the {@link Consumer} completes, {@link RegistryCredential.Builder#build()} is called immediately and its * result is passed to {@link #registryCredentialOverride(RegistryCredential)}. * * @param registryCredentialOverride * a consumer that will call methods on {@link RegistryCredential.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #registryCredentialOverride(RegistryCredential) */ default Builder registryCredentialOverride(Consumer registryCredentialOverride) { return registryCredentialOverride(RegistryCredential.builder().applyMutation(registryCredentialOverride).build()); } /** *

* The type of credentials CodeBuild uses to pull images in your batch build. There are two valid values: *

*
*
CODEBUILD
*
*

* Specifies that CodeBuild uses its own credentials. This requires that you modify your ECR repository policy * to trust CodeBuild's service principal. *

*
*
SERVICE_ROLE
*
*

* Specifies that CodeBuild uses your build project's service role. *

*
*
*

* When using a cross-account or private registry image, you must use SERVICE_ROLE credentials. * When using an CodeBuild curated image, you must use CODEBUILD credentials. *

* * @param imagePullCredentialsTypeOverride * The type of credentials CodeBuild uses to pull images in your batch build. There are two valid values: *

*
*
CODEBUILD
*
*

* Specifies that CodeBuild uses its own credentials. This requires that you modify your ECR repository * policy to trust CodeBuild's service principal. *

*
*
SERVICE_ROLE
*
*

* Specifies that CodeBuild uses your build project's service role. *

*
*
*

* When using a cross-account or private registry image, you must use SERVICE_ROLE * credentials. When using an CodeBuild curated image, you must use CODEBUILD credentials. * @see ImagePullCredentialsType * @return Returns a reference to this object so that method calls can be chained together. * @see ImagePullCredentialsType */ Builder imagePullCredentialsTypeOverride(String imagePullCredentialsTypeOverride); /** *

* The type of credentials CodeBuild uses to pull images in your batch build. There are two valid values: *

*
*
CODEBUILD
*
*

* Specifies that CodeBuild uses its own credentials. This requires that you modify your ECR repository policy * to trust CodeBuild's service principal. *

*
*
SERVICE_ROLE
*
*

* Specifies that CodeBuild uses your build project's service role. *

*
*
*

* When using a cross-account or private registry image, you must use SERVICE_ROLE credentials. * When using an CodeBuild curated image, you must use CODEBUILD credentials. *

* * @param imagePullCredentialsTypeOverride * The type of credentials CodeBuild uses to pull images in your batch build. There are two valid values: *

*
*
CODEBUILD
*
*

* Specifies that CodeBuild uses its own credentials. This requires that you modify your ECR repository * policy to trust CodeBuild's service principal. *

*
*
SERVICE_ROLE
*
*

* Specifies that CodeBuild uses your build project's service role. *

*
*
*

* When using a cross-account or private registry image, you must use SERVICE_ROLE * credentials. When using an CodeBuild curated image, you must use CODEBUILD credentials. * @see ImagePullCredentialsType * @return Returns a reference to this object so that method calls can be chained together. * @see ImagePullCredentialsType */ Builder imagePullCredentialsTypeOverride(ImagePullCredentialsType imagePullCredentialsTypeOverride); /** *

* A BuildBatchConfigOverride object that contains batch build configuration overrides. *

* * @param buildBatchConfigOverride * A BuildBatchConfigOverride object that contains batch build configuration overrides. * @return Returns a reference to this object so that method calls can be chained together. */ Builder buildBatchConfigOverride(ProjectBuildBatchConfig buildBatchConfigOverride); /** *

* A BuildBatchConfigOverride object that contains batch build configuration overrides. *

* This is a convenience method that creates an instance of the {@link ProjectBuildBatchConfig.Builder} avoiding * the need to create one manually via {@link ProjectBuildBatchConfig#builder()}. * *

* When the {@link Consumer} completes, {@link ProjectBuildBatchConfig.Builder#build()} is called immediately * and its result is passed to {@link #buildBatchConfigOverride(ProjectBuildBatchConfig)}. * * @param buildBatchConfigOverride * a consumer that will call methods on {@link ProjectBuildBatchConfig.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #buildBatchConfigOverride(ProjectBuildBatchConfig) */ default Builder buildBatchConfigOverride(Consumer buildBatchConfigOverride) { return buildBatchConfigOverride(ProjectBuildBatchConfig.builder().applyMutation(buildBatchConfigOverride).build()); } /** *

* Specifies if session debugging is enabled for this batch build. For more information, see Viewing a running build in * Session Manager. Batch session debugging is not supported for matrix batch builds. *

* * @param debugSessionEnabled * Specifies if session debugging is enabled for this batch build. For more information, see Viewing a running * build in Session Manager. Batch session debugging is not supported for matrix batch builds. * @return Returns a reference to this object so that method calls can be chained together. */ Builder debugSessionEnabled(Boolean debugSessionEnabled); @Override Builder overrideConfiguration(AwsRequestOverrideConfiguration overrideConfiguration); @Override Builder overrideConfiguration(Consumer builderConsumer); } static final class BuilderImpl extends CodeBuildRequest.BuilderImpl implements Builder { private String projectName; private List secondarySourcesOverride = DefaultSdkAutoConstructList.getInstance(); private List secondarySourcesVersionOverride = DefaultSdkAutoConstructList.getInstance(); private String sourceVersion; private ProjectArtifacts artifactsOverride; private List secondaryArtifactsOverride = DefaultSdkAutoConstructList.getInstance(); private List environmentVariablesOverride = DefaultSdkAutoConstructList.getInstance(); private String sourceTypeOverride; private String sourceLocationOverride; private SourceAuth sourceAuthOverride; private Integer gitCloneDepthOverride; private GitSubmodulesConfig gitSubmodulesConfigOverride; private String buildspecOverride; private Boolean insecureSslOverride; private Boolean reportBuildBatchStatusOverride; private String environmentTypeOverride; private String imageOverride; private String computeTypeOverride; private String certificateOverride; private ProjectCache cacheOverride; private String serviceRoleOverride; private Boolean privilegedModeOverride; private Integer buildTimeoutInMinutesOverride; private Integer queuedTimeoutInMinutesOverride; private String encryptionKeyOverride; private String idempotencyToken; private LogsConfig logsConfigOverride; private RegistryCredential registryCredentialOverride; private String imagePullCredentialsTypeOverride; private ProjectBuildBatchConfig buildBatchConfigOverride; private Boolean debugSessionEnabled; private BuilderImpl() { } private BuilderImpl(StartBuildBatchRequest model) { super(model); projectName(model.projectName); secondarySourcesOverride(model.secondarySourcesOverride); secondarySourcesVersionOverride(model.secondarySourcesVersionOverride); sourceVersion(model.sourceVersion); artifactsOverride(model.artifactsOverride); secondaryArtifactsOverride(model.secondaryArtifactsOverride); environmentVariablesOverride(model.environmentVariablesOverride); sourceTypeOverride(model.sourceTypeOverride); sourceLocationOverride(model.sourceLocationOverride); sourceAuthOverride(model.sourceAuthOverride); gitCloneDepthOverride(model.gitCloneDepthOverride); gitSubmodulesConfigOverride(model.gitSubmodulesConfigOverride); buildspecOverride(model.buildspecOverride); insecureSslOverride(model.insecureSslOverride); reportBuildBatchStatusOverride(model.reportBuildBatchStatusOverride); environmentTypeOverride(model.environmentTypeOverride); imageOverride(model.imageOverride); computeTypeOverride(model.computeTypeOverride); certificateOverride(model.certificateOverride); cacheOverride(model.cacheOverride); serviceRoleOverride(model.serviceRoleOverride); privilegedModeOverride(model.privilegedModeOverride); buildTimeoutInMinutesOverride(model.buildTimeoutInMinutesOverride); queuedTimeoutInMinutesOverride(model.queuedTimeoutInMinutesOverride); encryptionKeyOverride(model.encryptionKeyOverride); idempotencyToken(model.idempotencyToken); logsConfigOverride(model.logsConfigOverride); registryCredentialOverride(model.registryCredentialOverride); imagePullCredentialsTypeOverride(model.imagePullCredentialsTypeOverride); buildBatchConfigOverride(model.buildBatchConfigOverride); debugSessionEnabled(model.debugSessionEnabled); } public final String getProjectName() { return projectName; } public final void setProjectName(String projectName) { this.projectName = projectName; } @Override public final Builder projectName(String projectName) { this.projectName = projectName; return this; } public final List getSecondarySourcesOverride() { List result = ProjectSourcesCopier.copyToBuilder(this.secondarySourcesOverride); if (result instanceof SdkAutoConstructList) { return null; } return result; } public final void setSecondarySourcesOverride(Collection secondarySourcesOverride) { this.secondarySourcesOverride = ProjectSourcesCopier.copyFromBuilder(secondarySourcesOverride); } @Override public final Builder secondarySourcesOverride(Collection secondarySourcesOverride) { this.secondarySourcesOverride = ProjectSourcesCopier.copy(secondarySourcesOverride); return this; } @Override @SafeVarargs public final Builder secondarySourcesOverride(ProjectSource... secondarySourcesOverride) { secondarySourcesOverride(Arrays.asList(secondarySourcesOverride)); return this; } @Override @SafeVarargs public final Builder secondarySourcesOverride(Consumer... secondarySourcesOverride) { secondarySourcesOverride(Stream.of(secondarySourcesOverride) .map(c -> ProjectSource.builder().applyMutation(c).build()).collect(Collectors.toList())); return this; } public final List getSecondarySourcesVersionOverride() { List result = ProjectSecondarySourceVersionsCopier .copyToBuilder(this.secondarySourcesVersionOverride); if (result instanceof SdkAutoConstructList) { return null; } return result; } public final void setSecondarySourcesVersionOverride( Collection secondarySourcesVersionOverride) { this.secondarySourcesVersionOverride = ProjectSecondarySourceVersionsCopier .copyFromBuilder(secondarySourcesVersionOverride); } @Override public final Builder secondarySourcesVersionOverride(Collection secondarySourcesVersionOverride) { this.secondarySourcesVersionOverride = ProjectSecondarySourceVersionsCopier.copy(secondarySourcesVersionOverride); return this; } @Override @SafeVarargs public final Builder secondarySourcesVersionOverride(ProjectSourceVersion... secondarySourcesVersionOverride) { secondarySourcesVersionOverride(Arrays.asList(secondarySourcesVersionOverride)); return this; } @Override @SafeVarargs public final Builder secondarySourcesVersionOverride( Consumer... secondarySourcesVersionOverride) { secondarySourcesVersionOverride(Stream.of(secondarySourcesVersionOverride) .map(c -> ProjectSourceVersion.builder().applyMutation(c).build()).collect(Collectors.toList())); return this; } public final String getSourceVersion() { return sourceVersion; } public final void setSourceVersion(String sourceVersion) { this.sourceVersion = sourceVersion; } @Override public final Builder sourceVersion(String sourceVersion) { this.sourceVersion = sourceVersion; return this; } public final ProjectArtifacts.Builder getArtifactsOverride() { return artifactsOverride != null ? artifactsOverride.toBuilder() : null; } public final void setArtifactsOverride(ProjectArtifacts.BuilderImpl artifactsOverride) { this.artifactsOverride = artifactsOverride != null ? artifactsOverride.build() : null; } @Override public final Builder artifactsOverride(ProjectArtifacts artifactsOverride) { this.artifactsOverride = artifactsOverride; return this; } public final List getSecondaryArtifactsOverride() { List result = ProjectArtifactsListCopier.copyToBuilder(this.secondaryArtifactsOverride); if (result instanceof SdkAutoConstructList) { return null; } return result; } public final void setSecondaryArtifactsOverride(Collection secondaryArtifactsOverride) { this.secondaryArtifactsOverride = ProjectArtifactsListCopier.copyFromBuilder(secondaryArtifactsOverride); } @Override public final Builder secondaryArtifactsOverride(Collection secondaryArtifactsOverride) { this.secondaryArtifactsOverride = ProjectArtifactsListCopier.copy(secondaryArtifactsOverride); return this; } @Override @SafeVarargs public final Builder secondaryArtifactsOverride(ProjectArtifacts... secondaryArtifactsOverride) { secondaryArtifactsOverride(Arrays.asList(secondaryArtifactsOverride)); return this; } @Override @SafeVarargs public final Builder secondaryArtifactsOverride(Consumer... secondaryArtifactsOverride) { secondaryArtifactsOverride(Stream.of(secondaryArtifactsOverride) .map(c -> ProjectArtifacts.builder().applyMutation(c).build()).collect(Collectors.toList())); return this; } public final List getEnvironmentVariablesOverride() { List result = EnvironmentVariablesCopier .copyToBuilder(this.environmentVariablesOverride); if (result instanceof SdkAutoConstructList) { return null; } return result; } public final void setEnvironmentVariablesOverride(Collection environmentVariablesOverride) { this.environmentVariablesOverride = EnvironmentVariablesCopier.copyFromBuilder(environmentVariablesOverride); } @Override public final Builder environmentVariablesOverride(Collection environmentVariablesOverride) { this.environmentVariablesOverride = EnvironmentVariablesCopier.copy(environmentVariablesOverride); return this; } @Override @SafeVarargs public final Builder environmentVariablesOverride(EnvironmentVariable... environmentVariablesOverride) { environmentVariablesOverride(Arrays.asList(environmentVariablesOverride)); return this; } @Override @SafeVarargs public final Builder environmentVariablesOverride(Consumer... environmentVariablesOverride) { environmentVariablesOverride(Stream.of(environmentVariablesOverride) .map(c -> EnvironmentVariable.builder().applyMutation(c).build()).collect(Collectors.toList())); return this; } public final String getSourceTypeOverride() { return sourceTypeOverride; } public final void setSourceTypeOverride(String sourceTypeOverride) { this.sourceTypeOverride = sourceTypeOverride; } @Override public final Builder sourceTypeOverride(String sourceTypeOverride) { this.sourceTypeOverride = sourceTypeOverride; return this; } @Override public final Builder sourceTypeOverride(SourceType sourceTypeOverride) { this.sourceTypeOverride(sourceTypeOverride == null ? null : sourceTypeOverride.toString()); return this; } public final String getSourceLocationOverride() { return sourceLocationOverride; } public final void setSourceLocationOverride(String sourceLocationOverride) { this.sourceLocationOverride = sourceLocationOverride; } @Override public final Builder sourceLocationOverride(String sourceLocationOverride) { this.sourceLocationOverride = sourceLocationOverride; return this; } public final SourceAuth.Builder getSourceAuthOverride() { return sourceAuthOverride != null ? sourceAuthOverride.toBuilder() : null; } public final void setSourceAuthOverride(SourceAuth.BuilderImpl sourceAuthOverride) { this.sourceAuthOverride = sourceAuthOverride != null ? sourceAuthOverride.build() : null; } @Override public final Builder sourceAuthOverride(SourceAuth sourceAuthOverride) { this.sourceAuthOverride = sourceAuthOverride; return this; } public final Integer getGitCloneDepthOverride() { return gitCloneDepthOverride; } public final void setGitCloneDepthOverride(Integer gitCloneDepthOverride) { this.gitCloneDepthOverride = gitCloneDepthOverride; } @Override public final Builder gitCloneDepthOverride(Integer gitCloneDepthOverride) { this.gitCloneDepthOverride = gitCloneDepthOverride; return this; } public final GitSubmodulesConfig.Builder getGitSubmodulesConfigOverride() { return gitSubmodulesConfigOverride != null ? gitSubmodulesConfigOverride.toBuilder() : null; } public final void setGitSubmodulesConfigOverride(GitSubmodulesConfig.BuilderImpl gitSubmodulesConfigOverride) { this.gitSubmodulesConfigOverride = gitSubmodulesConfigOverride != null ? gitSubmodulesConfigOverride.build() : null; } @Override public final Builder gitSubmodulesConfigOverride(GitSubmodulesConfig gitSubmodulesConfigOverride) { this.gitSubmodulesConfigOverride = gitSubmodulesConfigOverride; return this; } public final String getBuildspecOverride() { return buildspecOverride; } public final void setBuildspecOverride(String buildspecOverride) { this.buildspecOverride = buildspecOverride; } @Override public final Builder buildspecOverride(String buildspecOverride) { this.buildspecOverride = buildspecOverride; return this; } public final Boolean getInsecureSslOverride() { return insecureSslOverride; } public final void setInsecureSslOverride(Boolean insecureSslOverride) { this.insecureSslOverride = insecureSslOverride; } @Override public final Builder insecureSslOverride(Boolean insecureSslOverride) { this.insecureSslOverride = insecureSslOverride; return this; } public final Boolean getReportBuildBatchStatusOverride() { return reportBuildBatchStatusOverride; } public final void setReportBuildBatchStatusOverride(Boolean reportBuildBatchStatusOverride) { this.reportBuildBatchStatusOverride = reportBuildBatchStatusOverride; } @Override public final Builder reportBuildBatchStatusOverride(Boolean reportBuildBatchStatusOverride) { this.reportBuildBatchStatusOverride = reportBuildBatchStatusOverride; return this; } public final String getEnvironmentTypeOverride() { return environmentTypeOverride; } public final void setEnvironmentTypeOverride(String environmentTypeOverride) { this.environmentTypeOverride = environmentTypeOverride; } @Override public final Builder environmentTypeOverride(String environmentTypeOverride) { this.environmentTypeOverride = environmentTypeOverride; return this; } @Override public final Builder environmentTypeOverride(EnvironmentType environmentTypeOverride) { this.environmentTypeOverride(environmentTypeOverride == null ? null : environmentTypeOverride.toString()); return this; } public final String getImageOverride() { return imageOverride; } public final void setImageOverride(String imageOverride) { this.imageOverride = imageOverride; } @Override public final Builder imageOverride(String imageOverride) { this.imageOverride = imageOverride; return this; } public final String getComputeTypeOverride() { return computeTypeOverride; } public final void setComputeTypeOverride(String computeTypeOverride) { this.computeTypeOverride = computeTypeOverride; } @Override public final Builder computeTypeOverride(String computeTypeOverride) { this.computeTypeOverride = computeTypeOverride; return this; } @Override public final Builder computeTypeOverride(ComputeType computeTypeOverride) { this.computeTypeOverride(computeTypeOverride == null ? null : computeTypeOverride.toString()); return this; } public final String getCertificateOverride() { return certificateOverride; } public final void setCertificateOverride(String certificateOverride) { this.certificateOverride = certificateOverride; } @Override public final Builder certificateOverride(String certificateOverride) { this.certificateOverride = certificateOverride; return this; } public final ProjectCache.Builder getCacheOverride() { return cacheOverride != null ? cacheOverride.toBuilder() : null; } public final void setCacheOverride(ProjectCache.BuilderImpl cacheOverride) { this.cacheOverride = cacheOverride != null ? cacheOverride.build() : null; } @Override public final Builder cacheOverride(ProjectCache cacheOverride) { this.cacheOverride = cacheOverride; return this; } public final String getServiceRoleOverride() { return serviceRoleOverride; } public final void setServiceRoleOverride(String serviceRoleOverride) { this.serviceRoleOverride = serviceRoleOverride; } @Override public final Builder serviceRoleOverride(String serviceRoleOverride) { this.serviceRoleOverride = serviceRoleOverride; return this; } public final Boolean getPrivilegedModeOverride() { return privilegedModeOverride; } public final void setPrivilegedModeOverride(Boolean privilegedModeOverride) { this.privilegedModeOverride = privilegedModeOverride; } @Override public final Builder privilegedModeOverride(Boolean privilegedModeOverride) { this.privilegedModeOverride = privilegedModeOverride; return this; } public final Integer getBuildTimeoutInMinutesOverride() { return buildTimeoutInMinutesOverride; } public final void setBuildTimeoutInMinutesOverride(Integer buildTimeoutInMinutesOverride) { this.buildTimeoutInMinutesOverride = buildTimeoutInMinutesOverride; } @Override public final Builder buildTimeoutInMinutesOverride(Integer buildTimeoutInMinutesOverride) { this.buildTimeoutInMinutesOverride = buildTimeoutInMinutesOverride; return this; } public final Integer getQueuedTimeoutInMinutesOverride() { return queuedTimeoutInMinutesOverride; } public final void setQueuedTimeoutInMinutesOverride(Integer queuedTimeoutInMinutesOverride) { this.queuedTimeoutInMinutesOverride = queuedTimeoutInMinutesOverride; } @Override public final Builder queuedTimeoutInMinutesOverride(Integer queuedTimeoutInMinutesOverride) { this.queuedTimeoutInMinutesOverride = queuedTimeoutInMinutesOverride; return this; } public final String getEncryptionKeyOverride() { return encryptionKeyOverride; } public final void setEncryptionKeyOverride(String encryptionKeyOverride) { this.encryptionKeyOverride = encryptionKeyOverride; } @Override public final Builder encryptionKeyOverride(String encryptionKeyOverride) { this.encryptionKeyOverride = encryptionKeyOverride; return this; } public final String getIdempotencyToken() { return idempotencyToken; } public final void setIdempotencyToken(String idempotencyToken) { this.idempotencyToken = idempotencyToken; } @Override public final Builder idempotencyToken(String idempotencyToken) { this.idempotencyToken = idempotencyToken; return this; } public final LogsConfig.Builder getLogsConfigOverride() { return logsConfigOverride != null ? logsConfigOverride.toBuilder() : null; } public final void setLogsConfigOverride(LogsConfig.BuilderImpl logsConfigOverride) { this.logsConfigOverride = logsConfigOverride != null ? logsConfigOverride.build() : null; } @Override public final Builder logsConfigOverride(LogsConfig logsConfigOverride) { this.logsConfigOverride = logsConfigOverride; return this; } public final RegistryCredential.Builder getRegistryCredentialOverride() { return registryCredentialOverride != null ? registryCredentialOverride.toBuilder() : null; } public final void setRegistryCredentialOverride(RegistryCredential.BuilderImpl registryCredentialOverride) { this.registryCredentialOverride = registryCredentialOverride != null ? registryCredentialOverride.build() : null; } @Override public final Builder registryCredentialOverride(RegistryCredential registryCredentialOverride) { this.registryCredentialOverride = registryCredentialOverride; return this; } public final String getImagePullCredentialsTypeOverride() { return imagePullCredentialsTypeOverride; } public final void setImagePullCredentialsTypeOverride(String imagePullCredentialsTypeOverride) { this.imagePullCredentialsTypeOverride = imagePullCredentialsTypeOverride; } @Override public final Builder imagePullCredentialsTypeOverride(String imagePullCredentialsTypeOverride) { this.imagePullCredentialsTypeOverride = imagePullCredentialsTypeOverride; return this; } @Override public final Builder imagePullCredentialsTypeOverride(ImagePullCredentialsType imagePullCredentialsTypeOverride) { this.imagePullCredentialsTypeOverride(imagePullCredentialsTypeOverride == null ? null : imagePullCredentialsTypeOverride.toString()); return this; } public final ProjectBuildBatchConfig.Builder getBuildBatchConfigOverride() { return buildBatchConfigOverride != null ? buildBatchConfigOverride.toBuilder() : null; } public final void setBuildBatchConfigOverride(ProjectBuildBatchConfig.BuilderImpl buildBatchConfigOverride) { this.buildBatchConfigOverride = buildBatchConfigOverride != null ? buildBatchConfigOverride.build() : null; } @Override public final Builder buildBatchConfigOverride(ProjectBuildBatchConfig buildBatchConfigOverride) { this.buildBatchConfigOverride = buildBatchConfigOverride; return this; } public final Boolean getDebugSessionEnabled() { return debugSessionEnabled; } public final void setDebugSessionEnabled(Boolean debugSessionEnabled) { this.debugSessionEnabled = debugSessionEnabled; } @Override public final Builder debugSessionEnabled(Boolean debugSessionEnabled) { this.debugSessionEnabled = debugSessionEnabled; return this; } @Override public Builder overrideConfiguration(AwsRequestOverrideConfiguration overrideConfiguration) { super.overrideConfiguration(overrideConfiguration); return this; } @Override public Builder overrideConfiguration(Consumer builderConsumer) { super.overrideConfiguration(builderConsumer); return this; } @Override public StartBuildBatchRequest build() { return new StartBuildBatchRequest(this); } @Override public List> sdkFields() { return SDK_FIELDS; } @Override public Map> sdkFieldNameToField() { return SDK_NAME_TO_FIELD; } } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy