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

software.amazon.awssdk.services.sagemaker.model.UpdateWorkforceRequest Maven / Gradle / Ivy

Go to download

The AWS Java SDK for Amazon SageMaker module holds the client classes that are used for communicating with Amazon SageMaker Service

There is a newer version: 2.29.39
Show 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.sagemaker.model;

import java.util.Arrays;
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 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.LocationTrait;
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 UpdateWorkforceRequest extends SageMakerRequest implements
        ToCopyableBuilder {
    private static final SdkField WORKFORCE_NAME_FIELD = SdkField. builder(MarshallingType.STRING)
            .memberName("WorkforceName").getter(getter(UpdateWorkforceRequest::workforceName))
            .setter(setter(Builder::workforceName))
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("WorkforceName").build()).build();

    private static final SdkField SOURCE_IP_CONFIG_FIELD = SdkField
            . builder(MarshallingType.SDK_POJO).memberName("SourceIpConfig")
            .getter(getter(UpdateWorkforceRequest::sourceIpConfig)).setter(setter(Builder::sourceIpConfig))
            .constructor(SourceIpConfig::builder)
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("SourceIpConfig").build()).build();

    private static final SdkField OIDC_CONFIG_FIELD = SdkField. builder(MarshallingType.SDK_POJO)
            .memberName("OidcConfig").getter(getter(UpdateWorkforceRequest::oidcConfig)).setter(setter(Builder::oidcConfig))
            .constructor(OidcConfig::builder)
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("OidcConfig").build()).build();

    private static final SdkField WORKFORCE_VPC_CONFIG_FIELD = SdkField
            . builder(MarshallingType.SDK_POJO).memberName("WorkforceVpcConfig")
            .getter(getter(UpdateWorkforceRequest::workforceVpcConfig)).setter(setter(Builder::workforceVpcConfig))
            .constructor(WorkforceVpcConfigRequest::builder)
            .traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("WorkforceVpcConfig").build())
            .build();

    private static final List> SDK_FIELDS = Collections.unmodifiableList(Arrays.asList(WORKFORCE_NAME_FIELD,
            SOURCE_IP_CONFIG_FIELD, OIDC_CONFIG_FIELD, WORKFORCE_VPC_CONFIG_FIELD));

    private static final Map> SDK_NAME_TO_FIELD = memberNameToFieldInitializer();

    private final String workforceName;

    private final SourceIpConfig sourceIpConfig;

    private final OidcConfig oidcConfig;

    private final WorkforceVpcConfigRequest workforceVpcConfig;

    private UpdateWorkforceRequest(BuilderImpl builder) {
        super(builder);
        this.workforceName = builder.workforceName;
        this.sourceIpConfig = builder.sourceIpConfig;
        this.oidcConfig = builder.oidcConfig;
        this.workforceVpcConfig = builder.workforceVpcConfig;
    }

    /**
     * 

* The name of the private workforce that you want to update. You can find your workforce name by using the ListWorkforces * operation. *

* * @return The name of the private workforce that you want to update. You can find your workforce name by using the * ListWorkforces * operation. */ public final String workforceName() { return workforceName; } /** *

* A list of one to ten worker IP address ranges (CIDRs) that can be used to access * tasks assigned to this workforce. *

*

* Maximum: Ten CIDR values *

* * @return A list of one to ten worker IP address ranges (CIDRs) that can be used to * access tasks assigned to this workforce.

*

* Maximum: Ten CIDR values */ public final SourceIpConfig sourceIpConfig() { return sourceIpConfig; } /** *

* Use this parameter to update your OIDC Identity Provider (IdP) configuration for a workforce made using your own * IdP. *

* * @return Use this parameter to update your OIDC Identity Provider (IdP) configuration for a workforce made using * your own IdP. */ public final OidcConfig oidcConfig() { return oidcConfig; } /** *

* Use this parameter to update your VPC configuration for a workforce. *

* * @return Use this parameter to update your VPC configuration for a workforce. */ public final WorkforceVpcConfigRequest workforceVpcConfig() { return workforceVpcConfig; } @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(workforceName()); hashCode = 31 * hashCode + Objects.hashCode(sourceIpConfig()); hashCode = 31 * hashCode + Objects.hashCode(oidcConfig()); hashCode = 31 * hashCode + Objects.hashCode(workforceVpcConfig()); 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 UpdateWorkforceRequest)) { return false; } UpdateWorkforceRequest other = (UpdateWorkforceRequest) obj; return Objects.equals(workforceName(), other.workforceName()) && Objects.equals(sourceIpConfig(), other.sourceIpConfig()) && Objects.equals(oidcConfig(), other.oidcConfig()) && Objects.equals(workforceVpcConfig(), other.workforceVpcConfig()); } /** * 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("UpdateWorkforceRequest").add("WorkforceName", workforceName()) .add("SourceIpConfig", sourceIpConfig()).add("OidcConfig", oidcConfig()) .add("WorkforceVpcConfig", workforceVpcConfig()).build(); } public final Optional getValueForField(String fieldName, Class clazz) { switch (fieldName) { case "WorkforceName": return Optional.ofNullable(clazz.cast(workforceName())); case "SourceIpConfig": return Optional.ofNullable(clazz.cast(sourceIpConfig())); case "OidcConfig": return Optional.ofNullable(clazz.cast(oidcConfig())); case "WorkforceVpcConfig": return Optional.ofNullable(clazz.cast(workforceVpcConfig())); 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("WorkforceName", WORKFORCE_NAME_FIELD); map.put("SourceIpConfig", SOURCE_IP_CONFIG_FIELD); map.put("OidcConfig", OIDC_CONFIG_FIELD); map.put("WorkforceVpcConfig", WORKFORCE_VPC_CONFIG_FIELD); return Collections.unmodifiableMap(map); } private static Function getter(Function g) { return obj -> g.apply((UpdateWorkforceRequest) obj); } private static BiConsumer setter(BiConsumer s) { return (obj, val) -> s.accept((Builder) obj, val); } public interface Builder extends SageMakerRequest.Builder, SdkPojo, CopyableBuilder { /** *

* The name of the private workforce that you want to update. You can find your workforce name by using the ListWorkforces * operation. *

* * @param workforceName * The name of the private workforce that you want to update. You can find your workforce name by using * the * ListWorkforces operation. * @return Returns a reference to this object so that method calls can be chained together. */ Builder workforceName(String workforceName); /** *

* A list of one to ten worker IP address ranges (CIDRs) that can be used to * access tasks assigned to this workforce. *

*

* Maximum: Ten CIDR values *

* * @param sourceIpConfig * A list of one to ten worker IP address ranges (CIDRs) that can be used * to access tasks assigned to this workforce.

*

* Maximum: Ten CIDR values * @return Returns a reference to this object so that method calls can be chained together. */ Builder sourceIpConfig(SourceIpConfig sourceIpConfig); /** *

* A list of one to ten worker IP address ranges (CIDRs) that can be used to * access tasks assigned to this workforce. *

*

* Maximum: Ten CIDR values *

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

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

* Use this parameter to update your OIDC Identity Provider (IdP) configuration for a workforce made using your * own IdP. *

* * @param oidcConfig * Use this parameter to update your OIDC Identity Provider (IdP) configuration for a workforce made * using your own IdP. * @return Returns a reference to this object so that method calls can be chained together. */ Builder oidcConfig(OidcConfig oidcConfig); /** *

* Use this parameter to update your OIDC Identity Provider (IdP) configuration for a workforce made using your * own IdP. *

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

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

* Use this parameter to update your VPC configuration for a workforce. *

* * @param workforceVpcConfig * Use this parameter to update your VPC configuration for a workforce. * @return Returns a reference to this object so that method calls can be chained together. */ Builder workforceVpcConfig(WorkforceVpcConfigRequest workforceVpcConfig); /** *

* Use this parameter to update your VPC configuration for a workforce. *

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

* When the {@link Consumer} completes, {@link WorkforceVpcConfigRequest.Builder#build()} is called immediately * and its result is passed to {@link #workforceVpcConfig(WorkforceVpcConfigRequest)}. * * @param workforceVpcConfig * a consumer that will call methods on {@link WorkforceVpcConfigRequest.Builder} * @return Returns a reference to this object so that method calls can be chained together. * @see #workforceVpcConfig(WorkforceVpcConfigRequest) */ default Builder workforceVpcConfig(Consumer workforceVpcConfig) { return workforceVpcConfig(WorkforceVpcConfigRequest.builder().applyMutation(workforceVpcConfig).build()); } @Override Builder overrideConfiguration(AwsRequestOverrideConfiguration overrideConfiguration); @Override Builder overrideConfiguration(Consumer builderConsumer); } static final class BuilderImpl extends SageMakerRequest.BuilderImpl implements Builder { private String workforceName; private SourceIpConfig sourceIpConfig; private OidcConfig oidcConfig; private WorkforceVpcConfigRequest workforceVpcConfig; private BuilderImpl() { } private BuilderImpl(UpdateWorkforceRequest model) { super(model); workforceName(model.workforceName); sourceIpConfig(model.sourceIpConfig); oidcConfig(model.oidcConfig); workforceVpcConfig(model.workforceVpcConfig); } public final String getWorkforceName() { return workforceName; } public final void setWorkforceName(String workforceName) { this.workforceName = workforceName; } @Override public final Builder workforceName(String workforceName) { this.workforceName = workforceName; return this; } public final SourceIpConfig.Builder getSourceIpConfig() { return sourceIpConfig != null ? sourceIpConfig.toBuilder() : null; } public final void setSourceIpConfig(SourceIpConfig.BuilderImpl sourceIpConfig) { this.sourceIpConfig = sourceIpConfig != null ? sourceIpConfig.build() : null; } @Override public final Builder sourceIpConfig(SourceIpConfig sourceIpConfig) { this.sourceIpConfig = sourceIpConfig; return this; } public final OidcConfig.Builder getOidcConfig() { return oidcConfig != null ? oidcConfig.toBuilder() : null; } public final void setOidcConfig(OidcConfig.BuilderImpl oidcConfig) { this.oidcConfig = oidcConfig != null ? oidcConfig.build() : null; } @Override public final Builder oidcConfig(OidcConfig oidcConfig) { this.oidcConfig = oidcConfig; return this; } public final WorkforceVpcConfigRequest.Builder getWorkforceVpcConfig() { return workforceVpcConfig != null ? workforceVpcConfig.toBuilder() : null; } public final void setWorkforceVpcConfig(WorkforceVpcConfigRequest.BuilderImpl workforceVpcConfig) { this.workforceVpcConfig = workforceVpcConfig != null ? workforceVpcConfig.build() : null; } @Override public final Builder workforceVpcConfig(WorkforceVpcConfigRequest workforceVpcConfig) { this.workforceVpcConfig = workforceVpcConfig; 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 UpdateWorkforceRequest build() { return new UpdateWorkforceRequest(this); } @Override public List> sdkFields() { return SDK_FIELDS; } @Override public Map> sdkFieldNameToField() { return SDK_NAME_TO_FIELD; } } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy