Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
software.amazon.awssdk.services.apigateway.model.CreateRestApiRequest Maven / Gradle / Ivy
Go to download
The AWS Java SDK for Amazon API Gateway module holds the client classes that are used for communicating
with Amazon API
Gateway
/*
* Copyright 2014-2019 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.apigateway.model;
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
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.ListTrait;
import software.amazon.awssdk.core.traits.LocationTrait;
import software.amazon.awssdk.core.traits.MapTrait;
import software.amazon.awssdk.core.util.DefaultSdkAutoConstructList;
import software.amazon.awssdk.core.util.DefaultSdkAutoConstructMap;
import software.amazon.awssdk.utils.ToString;
import software.amazon.awssdk.utils.builder.CopyableBuilder;
import software.amazon.awssdk.utils.builder.ToCopyableBuilder;
/**
*
* The POST Request to add a new RestApi resource to your collection.
*
*/
@Generated("software.amazon.awssdk:codegen")
public final class CreateRestApiRequest extends ApiGatewayRequest implements
ToCopyableBuilder {
private static final SdkField NAME_FIELD = SdkField. builder(MarshallingType.STRING)
.getter(getter(CreateRestApiRequest::name)).setter(setter(Builder::name))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("name").build()).build();
private static final SdkField DESCRIPTION_FIELD = SdkField. builder(MarshallingType.STRING)
.getter(getter(CreateRestApiRequest::description)).setter(setter(Builder::description))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("description").build()).build();
private static final SdkField VERSION_FIELD = SdkField. builder(MarshallingType.STRING)
.getter(getter(CreateRestApiRequest::version)).setter(setter(Builder::version))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("version").build()).build();
private static final SdkField CLONE_FROM_FIELD = SdkField. builder(MarshallingType.STRING)
.getter(getter(CreateRestApiRequest::cloneFrom)).setter(setter(Builder::cloneFrom))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("cloneFrom").build()).build();
private static final SdkField> BINARY_MEDIA_TYPES_FIELD = SdkField
.> builder(MarshallingType.LIST)
.getter(getter(CreateRestApiRequest::binaryMediaTypes))
.setter(setter(Builder::binaryMediaTypes))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("binaryMediaTypes").build(),
ListTrait
.builder()
.memberLocationName(null)
.memberFieldInfo(
SdkField. builder(MarshallingType.STRING)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD)
.locationName("member").build()).build()).build()).build();
private static final SdkField MINIMUM_COMPRESSION_SIZE_FIELD = SdkField. builder(MarshallingType.INTEGER)
.getter(getter(CreateRestApiRequest::minimumCompressionSize)).setter(setter(Builder::minimumCompressionSize))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("minimumCompressionSize").build())
.build();
private static final SdkField API_KEY_SOURCE_FIELD = SdkField. builder(MarshallingType.STRING)
.getter(getter(CreateRestApiRequest::apiKeySourceAsString)).setter(setter(Builder::apiKeySource))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("apiKeySource").build()).build();
private static final SdkField ENDPOINT_CONFIGURATION_FIELD = SdkField
. builder(MarshallingType.SDK_POJO)
.getter(getter(CreateRestApiRequest::endpointConfiguration)).setter(setter(Builder::endpointConfiguration))
.constructor(EndpointConfiguration::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("endpointConfiguration").build())
.build();
private static final SdkField POLICY_FIELD = SdkField. builder(MarshallingType.STRING)
.getter(getter(CreateRestApiRequest::policy)).setter(setter(Builder::policy))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("policy").build()).build();
private static final SdkField> TAGS_FIELD = SdkField
.> builder(MarshallingType.MAP)
.getter(getter(CreateRestApiRequest::tags))
.setter(setter(Builder::tags))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("tags").build(),
MapTrait.builder()
.keyLocationName("key")
.valueLocationName("value")
.valueFieldInfo(
SdkField. builder(MarshallingType.STRING)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD)
.locationName("value").build()).build()).build()).build();
private static final List> SDK_FIELDS = Collections.unmodifiableList(Arrays.asList(NAME_FIELD, DESCRIPTION_FIELD,
VERSION_FIELD, CLONE_FROM_FIELD, BINARY_MEDIA_TYPES_FIELD, MINIMUM_COMPRESSION_SIZE_FIELD, API_KEY_SOURCE_FIELD,
ENDPOINT_CONFIGURATION_FIELD, POLICY_FIELD, TAGS_FIELD));
private final String name;
private final String description;
private final String version;
private final String cloneFrom;
private final List binaryMediaTypes;
private final Integer minimumCompressionSize;
private final String apiKeySource;
private final EndpointConfiguration endpointConfiguration;
private final String policy;
private final Map tags;
private CreateRestApiRequest(BuilderImpl builder) {
super(builder);
this.name = builder.name;
this.description = builder.description;
this.version = builder.version;
this.cloneFrom = builder.cloneFrom;
this.binaryMediaTypes = builder.binaryMediaTypes;
this.minimumCompressionSize = builder.minimumCompressionSize;
this.apiKeySource = builder.apiKeySource;
this.endpointConfiguration = builder.endpointConfiguration;
this.policy = builder.policy;
this.tags = builder.tags;
}
/**
*
* [Required] The name of the RestApi .
*
*
* @return [Required] The name of the RestApi .
*/
public String name() {
return name;
}
/**
*
* The description of the RestApi .
*
*
* @return The description of the RestApi .
*/
public String description() {
return description;
}
/**
*
* A version identifier for the API.
*
*
* @return A version identifier for the API.
*/
public String version() {
return version;
}
/**
*
* The ID of the RestApi that you want to clone from.
*
*
* @return The ID of the RestApi that you want to clone from.
*/
public String cloneFrom() {
return cloneFrom;
}
/**
*
* The list of binary media types supported by the RestApi . By default, the RestApi supports only
* UTF-8-encoded text payloads.
*
*
* Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
*
*
* @return The list of binary media types supported by the RestApi . By default, the RestApi supports
* only UTF-8-encoded text payloads.
*/
public List binaryMediaTypes() {
return binaryMediaTypes;
}
/**
*
* A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes,
* inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or
* decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero
* allows compression for any payload size.
*
*
* @return A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M)
* bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled,
* compression or decompression is not applied on the payload if the payload size is smaller than this
* value. Setting it to zero allows compression for any payload size.
*/
public Integer minimumCompressionSize() {
return minimumCompressionSize;
}
/**
*
* The source of the API key for metering requests according to a usage plan. Valid values are:
*
* HEADER
to read the API key from the X-API-Key
header of a request.
* AUTHORIZER
to read the API key from the UsageIdentifierKey
from a custom
* authorizer.
*
*
*
* If the service returns an enum value that is not available in the current SDK version, {@link #apiKeySource} will
* return {@link ApiKeySourceType#UNKNOWN_TO_SDK_VERSION}. The raw value returned by the service is available from
* {@link #apiKeySourceAsString}.
*
*
* @return The source of the API key for metering requests according to a usage plan. Valid values are:
*
* HEADER
to read the API key from the X-API-Key
header of a request.
* AUTHORIZER
to read the API key from the UsageIdentifierKey
from a custom
* authorizer.
*
* @see ApiKeySourceType
*/
public ApiKeySourceType apiKeySource() {
return ApiKeySourceType.fromValue(apiKeySource);
}
/**
*
* The source of the API key for metering requests according to a usage plan. Valid values are:
*
* HEADER
to read the API key from the X-API-Key
header of a request.
* AUTHORIZER
to read the API key from the UsageIdentifierKey
from a custom
* authorizer.
*
*
*
* If the service returns an enum value that is not available in the current SDK version, {@link #apiKeySource} will
* return {@link ApiKeySourceType#UNKNOWN_TO_SDK_VERSION}. The raw value returned by the service is available from
* {@link #apiKeySourceAsString}.
*
*
* @return The source of the API key for metering requests according to a usage plan. Valid values are:
*
* HEADER
to read the API key from the X-API-Key
header of a request.
* AUTHORIZER
to read the API key from the UsageIdentifierKey
from a custom
* authorizer.
*
* @see ApiKeySourceType
*/
public String apiKeySourceAsString() {
return apiKeySource;
}
/**
*
* The endpoint configuration of this RestApi showing the endpoint types of the API.
*
*
* @return The endpoint configuration of this RestApi showing the endpoint types of the API.
*/
public EndpointConfiguration endpointConfiguration() {
return endpointConfiguration;
}
/**
* A stringified JSON policy document that applies to this RestApi regardless of the caller and Method
* configuration.
*
* @return A stringified JSON policy document that applies to this RestApi regardless of the caller and
* Method configuration.
*/
public String policy() {
return policy;
}
/**
*
* The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters
* and must not start with aws:
. The tag value can be up to 256 characters.
*
*
* Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
*
*
* @return The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128
* characters and must not start with aws:
. The tag value can be up to 256 characters.
*/
public Map tags() {
return tags;
}
@Override
public Builder toBuilder() {
return new BuilderImpl(this);
}
public static Builder builder() {
return new BuilderImpl();
}
public static Class extends Builder> serializableBuilderClass() {
return BuilderImpl.class;
}
@Override
public int hashCode() {
int hashCode = 1;
hashCode = 31 * hashCode + super.hashCode();
hashCode = 31 * hashCode + Objects.hashCode(name());
hashCode = 31 * hashCode + Objects.hashCode(description());
hashCode = 31 * hashCode + Objects.hashCode(version());
hashCode = 31 * hashCode + Objects.hashCode(cloneFrom());
hashCode = 31 * hashCode + Objects.hashCode(binaryMediaTypes());
hashCode = 31 * hashCode + Objects.hashCode(minimumCompressionSize());
hashCode = 31 * hashCode + Objects.hashCode(apiKeySourceAsString());
hashCode = 31 * hashCode + Objects.hashCode(endpointConfiguration());
hashCode = 31 * hashCode + Objects.hashCode(policy());
hashCode = 31 * hashCode + Objects.hashCode(tags());
return hashCode;
}
@Override
public boolean equals(Object obj) {
return super.equals(obj) && equalsBySdkFields(obj);
}
@Override
public boolean equalsBySdkFields(Object obj) {
if (this == obj) {
return true;
}
if (obj == null) {
return false;
}
if (!(obj instanceof CreateRestApiRequest)) {
return false;
}
CreateRestApiRequest other = (CreateRestApiRequest) obj;
return Objects.equals(name(), other.name()) && Objects.equals(description(), other.description())
&& Objects.equals(version(), other.version()) && Objects.equals(cloneFrom(), other.cloneFrom())
&& Objects.equals(binaryMediaTypes(), other.binaryMediaTypes())
&& Objects.equals(minimumCompressionSize(), other.minimumCompressionSize())
&& Objects.equals(apiKeySourceAsString(), other.apiKeySourceAsString())
&& Objects.equals(endpointConfiguration(), other.endpointConfiguration())
&& Objects.equals(policy(), other.policy()) && Objects.equals(tags(), other.tags());
}
/**
* 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 String toString() {
return ToString.builder("CreateRestApiRequest").add("Name", name()).add("Description", description())
.add("Version", version()).add("CloneFrom", cloneFrom()).add("BinaryMediaTypes", binaryMediaTypes())
.add("MinimumCompressionSize", minimumCompressionSize()).add("ApiKeySource", apiKeySourceAsString())
.add("EndpointConfiguration", endpointConfiguration()).add("Policy", policy()).add("Tags", tags()).build();
}
public Optional getValueForField(String fieldName, Class clazz) {
switch (fieldName) {
case "name":
return Optional.ofNullable(clazz.cast(name()));
case "description":
return Optional.ofNullable(clazz.cast(description()));
case "version":
return Optional.ofNullable(clazz.cast(version()));
case "cloneFrom":
return Optional.ofNullable(clazz.cast(cloneFrom()));
case "binaryMediaTypes":
return Optional.ofNullable(clazz.cast(binaryMediaTypes()));
case "minimumCompressionSize":
return Optional.ofNullable(clazz.cast(minimumCompressionSize()));
case "apiKeySource":
return Optional.ofNullable(clazz.cast(apiKeySourceAsString()));
case "endpointConfiguration":
return Optional.ofNullable(clazz.cast(endpointConfiguration()));
case "policy":
return Optional.ofNullable(clazz.cast(policy()));
case "tags":
return Optional.ofNullable(clazz.cast(tags()));
default:
return Optional.empty();
}
}
@Override
public List> sdkFields() {
return SDK_FIELDS;
}
private static Function getter(Function g) {
return obj -> g.apply((CreateRestApiRequest) obj);
}
private static BiConsumer setter(BiConsumer s) {
return (obj, val) -> s.accept((Builder) obj, val);
}
public interface Builder extends ApiGatewayRequest.Builder, SdkPojo, CopyableBuilder {
/**
*
* [Required] The name of the RestApi .
*
*
* @param name
* [Required] The name of the RestApi .
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder name(String name);
/**
*
* The description of the RestApi .
*
*
* @param description
* The description of the RestApi .
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder description(String description);
/**
*
* A version identifier for the API.
*
*
* @param version
* A version identifier for the API.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder version(String version);
/**
*
* The ID of the RestApi that you want to clone from.
*
*
* @param cloneFrom
* The ID of the RestApi that you want to clone from.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder cloneFrom(String cloneFrom);
/**
*
* The list of binary media types supported by the RestApi . By default, the RestApi supports only
* UTF-8-encoded text payloads.
*
*
* @param binaryMediaTypes
* The list of binary media types supported by the RestApi . By default, the RestApi
* supports only UTF-8-encoded text payloads.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder binaryMediaTypes(Collection binaryMediaTypes);
/**
*
* The list of binary media types supported by the RestApi . By default, the RestApi supports only
* UTF-8-encoded text payloads.
*
*
* @param binaryMediaTypes
* The list of binary media types supported by the RestApi . By default, the RestApi
* supports only UTF-8-encoded text payloads.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder binaryMediaTypes(String... binaryMediaTypes);
/**
*
* A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes,
* inclusive) or disable compression (with a null value) on an API. When compression is enabled, compression or
* decompression is not applied on the payload if the payload size is smaller than this value. Setting it to
* zero allows compression for any payload size.
*
*
* @param minimumCompressionSize
* A nullable integer that is used to enable compression (with non-negative between 0 and 10485760 (10M)
* bytes, inclusive) or disable compression (with a null value) on an API. When compression is enabled,
* compression or decompression is not applied on the payload if the payload size is smaller than this
* value. Setting it to zero allows compression for any payload size.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder minimumCompressionSize(Integer minimumCompressionSize);
/**
*
* The source of the API key for metering requests according to a usage plan. Valid values are:
*
* HEADER
to read the API key from the X-API-Key
header of a request.
* AUTHORIZER
to read the API key from the UsageIdentifierKey
from a custom
* authorizer.
*
*
*
* @param apiKeySource
* The source of the API key for metering requests according to a usage plan. Valid values are:
*
* HEADER
to read the API key from the X-API-Key
header of a request.
* AUTHORIZER
to read the API key from the UsageIdentifierKey
from a custom
* authorizer.
*
* @see ApiKeySourceType
* @return Returns a reference to this object so that method calls can be chained together.
* @see ApiKeySourceType
*/
Builder apiKeySource(String apiKeySource);
/**
*
* The source of the API key for metering requests according to a usage plan. Valid values are:
*
* HEADER
to read the API key from the X-API-Key
header of a request.
* AUTHORIZER
to read the API key from the UsageIdentifierKey
from a custom
* authorizer.
*
*
*
* @param apiKeySource
* The source of the API key for metering requests according to a usage plan. Valid values are:
*
* HEADER
to read the API key from the X-API-Key
header of a request.
* AUTHORIZER
to read the API key from the UsageIdentifierKey
from a custom
* authorizer.
*
* @see ApiKeySourceType
* @return Returns a reference to this object so that method calls can be chained together.
* @see ApiKeySourceType
*/
Builder apiKeySource(ApiKeySourceType apiKeySource);
/**
*
* The endpoint configuration of this RestApi showing the endpoint types of the API.
*
*
* @param endpointConfiguration
* The endpoint configuration of this RestApi showing the endpoint types of the API.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder endpointConfiguration(EndpointConfiguration endpointConfiguration);
/**
*
* The endpoint configuration of this RestApi showing the endpoint types of the API.
*
* This is a convenience that creates an instance of the {@link EndpointConfiguration.Builder} avoiding the need
* to create one manually via {@link EndpointConfiguration#builder()}.
*
* When the {@link Consumer} completes, {@link EndpointConfiguration.Builder#build()} is called immediately and
* its result is passed to {@link #endpointConfiguration(EndpointConfiguration)}.
*
* @param endpointConfiguration
* a consumer that will call methods on {@link EndpointConfiguration.Builder}
* @return Returns a reference to this object so that method calls can be chained together.
* @see #endpointConfiguration(EndpointConfiguration)
*/
default Builder endpointConfiguration(Consumer endpointConfiguration) {
return endpointConfiguration(EndpointConfiguration.builder().applyMutation(endpointConfiguration).build());
}
/**
* A stringified JSON policy document that applies to this RestApi regardless of the caller and Method
* configuration.
*
* @param policy
* A stringified JSON policy document that applies to this RestApi regardless of the caller and
* Method configuration.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder policy(String policy);
/**
*
* The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128
* characters and must not start with aws:
. The tag value can be up to 256 characters.
*
*
* @param tags
* The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128
* characters and must not start with aws:
. The tag value can be up to 256 characters.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder tags(Map tags);
@Override
Builder overrideConfiguration(AwsRequestOverrideConfiguration overrideConfiguration);
@Override
Builder overrideConfiguration(Consumer builderConsumer);
}
static final class BuilderImpl extends ApiGatewayRequest.BuilderImpl implements Builder {
private String name;
private String description;
private String version;
private String cloneFrom;
private List binaryMediaTypes = DefaultSdkAutoConstructList.getInstance();
private Integer minimumCompressionSize;
private String apiKeySource;
private EndpointConfiguration endpointConfiguration;
private String policy;
private Map tags = DefaultSdkAutoConstructMap.getInstance();
private BuilderImpl() {
}
private BuilderImpl(CreateRestApiRequest model) {
super(model);
name(model.name);
description(model.description);
version(model.version);
cloneFrom(model.cloneFrom);
binaryMediaTypes(model.binaryMediaTypes);
minimumCompressionSize(model.minimumCompressionSize);
apiKeySource(model.apiKeySource);
endpointConfiguration(model.endpointConfiguration);
policy(model.policy);
tags(model.tags);
}
public final String getName() {
return name;
}
@Override
public final Builder name(String name) {
this.name = name;
return this;
}
public final void setName(String name) {
this.name = name;
}
public final String getDescription() {
return description;
}
@Override
public final Builder description(String description) {
this.description = description;
return this;
}
public final void setDescription(String description) {
this.description = description;
}
public final String getVersion() {
return version;
}
@Override
public final Builder version(String version) {
this.version = version;
return this;
}
public final void setVersion(String version) {
this.version = version;
}
public final String getCloneFrom() {
return cloneFrom;
}
@Override
public final Builder cloneFrom(String cloneFrom) {
this.cloneFrom = cloneFrom;
return this;
}
public final void setCloneFrom(String cloneFrom) {
this.cloneFrom = cloneFrom;
}
public final Collection getBinaryMediaTypes() {
return binaryMediaTypes;
}
@Override
public final Builder binaryMediaTypes(Collection binaryMediaTypes) {
this.binaryMediaTypes = ListOfStringCopier.copy(binaryMediaTypes);
return this;
}
@Override
@SafeVarargs
public final Builder binaryMediaTypes(String... binaryMediaTypes) {
binaryMediaTypes(Arrays.asList(binaryMediaTypes));
return this;
}
public final void setBinaryMediaTypes(Collection binaryMediaTypes) {
this.binaryMediaTypes = ListOfStringCopier.copy(binaryMediaTypes);
}
public final Integer getMinimumCompressionSize() {
return minimumCompressionSize;
}
@Override
public final Builder minimumCompressionSize(Integer minimumCompressionSize) {
this.minimumCompressionSize = minimumCompressionSize;
return this;
}
public final void setMinimumCompressionSize(Integer minimumCompressionSize) {
this.minimumCompressionSize = minimumCompressionSize;
}
public final String getApiKeySourceAsString() {
return apiKeySource;
}
@Override
public final Builder apiKeySource(String apiKeySource) {
this.apiKeySource = apiKeySource;
return this;
}
@Override
public final Builder apiKeySource(ApiKeySourceType apiKeySource) {
this.apiKeySource(apiKeySource == null ? null : apiKeySource.toString());
return this;
}
public final void setApiKeySource(String apiKeySource) {
this.apiKeySource = apiKeySource;
}
public final EndpointConfiguration.Builder getEndpointConfiguration() {
return endpointConfiguration != null ? endpointConfiguration.toBuilder() : null;
}
@Override
public final Builder endpointConfiguration(EndpointConfiguration endpointConfiguration) {
this.endpointConfiguration = endpointConfiguration;
return this;
}
public final void setEndpointConfiguration(EndpointConfiguration.BuilderImpl endpointConfiguration) {
this.endpointConfiguration = endpointConfiguration != null ? endpointConfiguration.build() : null;
}
public final String getPolicy() {
return policy;
}
@Override
public final Builder policy(String policy) {
this.policy = policy;
return this;
}
public final void setPolicy(String policy) {
this.policy = policy;
}
public final Map getTags() {
return tags;
}
@Override
public final Builder tags(Map tags) {
this.tags = MapOfStringToStringCopier.copy(tags);
return this;
}
public final void setTags(Map tags) {
this.tags = MapOfStringToStringCopier.copy(tags);
}
@Override
public Builder overrideConfiguration(AwsRequestOverrideConfiguration overrideConfiguration) {
super.overrideConfiguration(overrideConfiguration);
return this;
}
@Override
public Builder overrideConfiguration(Consumer builderConsumer) {
super.overrideConfiguration(builderConsumer);
return this;
}
@Override
public CreateRestApiRequest build() {
return new CreateRestApiRequest(this);
}
@Override
public List> sdkFields() {
return SDK_FIELDS;
}
}
}