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.opensearch.model.DomainStatus Maven / Gradle / Ivy
Go to download
The AWS Java SDK for Open Search module holds the client classes that are used for
communicating with Open Search.
/*
* 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.opensearch.model;
import java.io.Serializable;
import java.util.Arrays;
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.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.core.traits.MapTrait;
import software.amazon.awssdk.core.util.DefaultSdkAutoConstructMap;
import software.amazon.awssdk.core.util.SdkAutoConstructMap;
import software.amazon.awssdk.utils.ToString;
import software.amazon.awssdk.utils.builder.CopyableBuilder;
import software.amazon.awssdk.utils.builder.ToCopyableBuilder;
/**
*
* The current status of a domain.
*
*/
@Generated("software.amazon.awssdk:codegen")
public final class DomainStatus implements SdkPojo, Serializable, ToCopyableBuilder {
private static final SdkField DOMAIN_ID_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("DomainId").getter(getter(DomainStatus::domainId)).setter(setter(Builder::domainId))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DomainId").build()).build();
private static final SdkField DOMAIN_NAME_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("DomainName").getter(getter(DomainStatus::domainName)).setter(setter(Builder::domainName))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DomainName").build()).build();
private static final SdkField ARN_FIELD = SdkField. builder(MarshallingType.STRING).memberName("ARN")
.getter(getter(DomainStatus::arn)).setter(setter(Builder::arn))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("ARN").build()).build();
private static final SdkField CREATED_FIELD = SdkField. builder(MarshallingType.BOOLEAN)
.memberName("Created").getter(getter(DomainStatus::created)).setter(setter(Builder::created))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("Created").build()).build();
private static final SdkField DELETED_FIELD = SdkField. builder(MarshallingType.BOOLEAN)
.memberName("Deleted").getter(getter(DomainStatus::deleted)).setter(setter(Builder::deleted))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("Deleted").build()).build();
private static final SdkField ENDPOINT_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("Endpoint").getter(getter(DomainStatus::endpoint)).setter(setter(Builder::endpoint))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("Endpoint").build()).build();
private static final SdkField> ENDPOINTS_FIELD = SdkField
.> builder(MarshallingType.MAP)
.memberName("Endpoints")
.getter(getter(DomainStatus::endpoints))
.setter(setter(Builder::endpoints))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("Endpoints").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 SdkField PROCESSING_FIELD = SdkField. builder(MarshallingType.BOOLEAN)
.memberName("Processing").getter(getter(DomainStatus::processing)).setter(setter(Builder::processing))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("Processing").build()).build();
private static final SdkField UPGRADE_PROCESSING_FIELD = SdkField. builder(MarshallingType.BOOLEAN)
.memberName("UpgradeProcessing").getter(getter(DomainStatus::upgradeProcessing))
.setter(setter(Builder::upgradeProcessing))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("UpgradeProcessing").build()).build();
private static final SdkField ENGINE_VERSION_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("EngineVersion").getter(getter(DomainStatus::engineVersion)).setter(setter(Builder::engineVersion))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("EngineVersion").build()).build();
private static final SdkField CLUSTER_CONFIG_FIELD = SdkField
. builder(MarshallingType.SDK_POJO).memberName("ClusterConfig")
.getter(getter(DomainStatus::clusterConfig)).setter(setter(Builder::clusterConfig))
.constructor(ClusterConfig::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("ClusterConfig").build()).build();
private static final SdkField EBS_OPTIONS_FIELD = SdkField. builder(MarshallingType.SDK_POJO)
.memberName("EBSOptions").getter(getter(DomainStatus::ebsOptions)).setter(setter(Builder::ebsOptions))
.constructor(EBSOptions::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("EBSOptions").build()).build();
private static final SdkField ACCESS_POLICIES_FIELD = SdkField. builder(MarshallingType.STRING)
.memberName("AccessPolicies").getter(getter(DomainStatus::accessPolicies)).setter(setter(Builder::accessPolicies))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("AccessPolicies").build()).build();
private static final SdkField SNAPSHOT_OPTIONS_FIELD = SdkField
. builder(MarshallingType.SDK_POJO).memberName("SnapshotOptions")
.getter(getter(DomainStatus::snapshotOptions)).setter(setter(Builder::snapshotOptions))
.constructor(SnapshotOptions::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("SnapshotOptions").build()).build();
private static final SdkField VPC_OPTIONS_FIELD = SdkField. builder(MarshallingType.SDK_POJO)
.memberName("VPCOptions").getter(getter(DomainStatus::vpcOptions)).setter(setter(Builder::vpcOptions))
.constructor(VPCDerivedInfo::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("VPCOptions").build()).build();
private static final SdkField COGNITO_OPTIONS_FIELD = SdkField
. builder(MarshallingType.SDK_POJO).memberName("CognitoOptions")
.getter(getter(DomainStatus::cognitoOptions)).setter(setter(Builder::cognitoOptions))
.constructor(CognitoOptions::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("CognitoOptions").build()).build();
private static final SdkField ENCRYPTION_AT_REST_OPTIONS_FIELD = SdkField
. builder(MarshallingType.SDK_POJO).memberName("EncryptionAtRestOptions")
.getter(getter(DomainStatus::encryptionAtRestOptions)).setter(setter(Builder::encryptionAtRestOptions))
.constructor(EncryptionAtRestOptions::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("EncryptionAtRestOptions").build())
.build();
private static final SdkField NODE_TO_NODE_ENCRYPTION_OPTIONS_FIELD = SdkField
. builder(MarshallingType.SDK_POJO)
.memberName("NodeToNodeEncryptionOptions")
.getter(getter(DomainStatus::nodeToNodeEncryptionOptions))
.setter(setter(Builder::nodeToNodeEncryptionOptions))
.constructor(NodeToNodeEncryptionOptions::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("NodeToNodeEncryptionOptions")
.build()).build();
private static final SdkField> ADVANCED_OPTIONS_FIELD = SdkField
.> builder(MarshallingType.MAP)
.memberName("AdvancedOptions")
.getter(getter(DomainStatus::advancedOptions))
.setter(setter(Builder::advancedOptions))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("AdvancedOptions").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 SdkField> LOG_PUBLISHING_OPTIONS_FIELD = SdkField
.> builder(MarshallingType.MAP)
.memberName("LogPublishingOptions")
.getter(getter(DomainStatus::logPublishingOptionsAsStrings))
.setter(setter(Builder::logPublishingOptionsWithStrings))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("LogPublishingOptions").build(),
MapTrait.builder()
.keyLocationName("key")
.valueLocationName("value")
.valueFieldInfo(
SdkField. builder(MarshallingType.SDK_POJO)
.constructor(LogPublishingOption::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD)
.locationName("value").build()).build()).build()).build();
private static final SdkField SERVICE_SOFTWARE_OPTIONS_FIELD = SdkField
. builder(MarshallingType.SDK_POJO).memberName("ServiceSoftwareOptions")
.getter(getter(DomainStatus::serviceSoftwareOptions)).setter(setter(Builder::serviceSoftwareOptions))
.constructor(ServiceSoftwareOptions::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("ServiceSoftwareOptions").build())
.build();
private static final SdkField DOMAIN_ENDPOINT_OPTIONS_FIELD = SdkField
. builder(MarshallingType.SDK_POJO).memberName("DomainEndpointOptions")
.getter(getter(DomainStatus::domainEndpointOptions)).setter(setter(Builder::domainEndpointOptions))
.constructor(DomainEndpointOptions::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("DomainEndpointOptions").build())
.build();
private static final SdkField ADVANCED_SECURITY_OPTIONS_FIELD = SdkField
. builder(MarshallingType.SDK_POJO).memberName("AdvancedSecurityOptions")
.getter(getter(DomainStatus::advancedSecurityOptions)).setter(setter(Builder::advancedSecurityOptions))
.constructor(AdvancedSecurityOptions::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("AdvancedSecurityOptions").build())
.build();
private static final SdkField AUTO_TUNE_OPTIONS_FIELD = SdkField
. builder(MarshallingType.SDK_POJO).memberName("AutoTuneOptions")
.getter(getter(DomainStatus::autoTuneOptions)).setter(setter(Builder::autoTuneOptions))
.constructor(AutoTuneOptionsOutput::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("AutoTuneOptions").build()).build();
private static final SdkField CHANGE_PROGRESS_DETAILS_FIELD = SdkField
. builder(MarshallingType.SDK_POJO).memberName("ChangeProgressDetails")
.getter(getter(DomainStatus::changeProgressDetails)).setter(setter(Builder::changeProgressDetails))
.constructor(ChangeProgressDetails::builder)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("ChangeProgressDetails").build())
.build();
private static final List> SDK_FIELDS = Collections.unmodifiableList(Arrays.asList(DOMAIN_ID_FIELD,
DOMAIN_NAME_FIELD, ARN_FIELD, CREATED_FIELD, DELETED_FIELD, ENDPOINT_FIELD, ENDPOINTS_FIELD, PROCESSING_FIELD,
UPGRADE_PROCESSING_FIELD, ENGINE_VERSION_FIELD, CLUSTER_CONFIG_FIELD, EBS_OPTIONS_FIELD, ACCESS_POLICIES_FIELD,
SNAPSHOT_OPTIONS_FIELD, VPC_OPTIONS_FIELD, COGNITO_OPTIONS_FIELD, ENCRYPTION_AT_REST_OPTIONS_FIELD,
NODE_TO_NODE_ENCRYPTION_OPTIONS_FIELD, ADVANCED_OPTIONS_FIELD, LOG_PUBLISHING_OPTIONS_FIELD,
SERVICE_SOFTWARE_OPTIONS_FIELD, DOMAIN_ENDPOINT_OPTIONS_FIELD, ADVANCED_SECURITY_OPTIONS_FIELD,
AUTO_TUNE_OPTIONS_FIELD, CHANGE_PROGRESS_DETAILS_FIELD));
private static final long serialVersionUID = 1L;
private final String domainId;
private final String domainName;
private final String arn;
private final Boolean created;
private final Boolean deleted;
private final String endpoint;
private final Map endpoints;
private final Boolean processing;
private final Boolean upgradeProcessing;
private final String engineVersion;
private final ClusterConfig clusterConfig;
private final EBSOptions ebsOptions;
private final String accessPolicies;
private final SnapshotOptions snapshotOptions;
private final VPCDerivedInfo vpcOptions;
private final CognitoOptions cognitoOptions;
private final EncryptionAtRestOptions encryptionAtRestOptions;
private final NodeToNodeEncryptionOptions nodeToNodeEncryptionOptions;
private final Map advancedOptions;
private final Map logPublishingOptions;
private final ServiceSoftwareOptions serviceSoftwareOptions;
private final DomainEndpointOptions domainEndpointOptions;
private final AdvancedSecurityOptions advancedSecurityOptions;
private final AutoTuneOptionsOutput autoTuneOptions;
private final ChangeProgressDetails changeProgressDetails;
private DomainStatus(BuilderImpl builder) {
this.domainId = builder.domainId;
this.domainName = builder.domainName;
this.arn = builder.arn;
this.created = builder.created;
this.deleted = builder.deleted;
this.endpoint = builder.endpoint;
this.endpoints = builder.endpoints;
this.processing = builder.processing;
this.upgradeProcessing = builder.upgradeProcessing;
this.engineVersion = builder.engineVersion;
this.clusterConfig = builder.clusterConfig;
this.ebsOptions = builder.ebsOptions;
this.accessPolicies = builder.accessPolicies;
this.snapshotOptions = builder.snapshotOptions;
this.vpcOptions = builder.vpcOptions;
this.cognitoOptions = builder.cognitoOptions;
this.encryptionAtRestOptions = builder.encryptionAtRestOptions;
this.nodeToNodeEncryptionOptions = builder.nodeToNodeEncryptionOptions;
this.advancedOptions = builder.advancedOptions;
this.logPublishingOptions = builder.logPublishingOptions;
this.serviceSoftwareOptions = builder.serviceSoftwareOptions;
this.domainEndpointOptions = builder.domainEndpointOptions;
this.advancedSecurityOptions = builder.advancedSecurityOptions;
this.autoTuneOptions = builder.autoTuneOptions;
this.changeProgressDetails = builder.changeProgressDetails;
}
/**
*
* The unique identifier for the specified domain.
*
*
* @return The unique identifier for the specified domain.
*/
public final String domainId() {
return domainId;
}
/**
*
* The name of a domain. Domain names are unique across the domains owned by an account within an AWS region. Domain
* names start with a letter or number and can contain the following characters: a-z (lowercase), 0-9, and -
* (hyphen).
*
*
* @return The name of a domain. Domain names are unique across the domains owned by an account within an AWS
* region. Domain names start with a letter or number and can contain the following characters: a-z
* (lowercase), 0-9, and - (hyphen).
*/
public final String domainName() {
return domainName;
}
/**
*
* The Amazon Resource Name (ARN) of a domain. See IAM
* identifiers in the AWS Identity and Access Management User Guide for more information.
*
*
* @return The Amazon Resource Name (ARN) of a domain. See IAM
* identifiers in the AWS Identity and Access Management User Guide for more information.
*/
public final String arn() {
return arn;
}
/**
*
* The domain creation status. True
if the creation of a domain is complete. False
if
* domain creation is still in progress.
*
*
* @return The domain creation status. True
if the creation of a domain is complete.
* False
if domain creation is still in progress.
*/
public final Boolean created() {
return created;
}
/**
*
* The domain deletion status. True
if a delete request has been received for the domain but resource
* cleanup is still in progress. False
if the domain has not been deleted. Once domain deletion is
* complete, the status of the domain is no longer returned.
*
*
* @return The domain deletion status. True
if a delete request has been received for the domain but
* resource cleanup is still in progress. False
if the domain has not been deleted. Once domain
* deletion is complete, the status of the domain is no longer returned.
*/
public final Boolean deleted() {
return deleted;
}
/**
*
* The domain endpoint that you use to submit index and search requests.
*
*
* @return The domain endpoint that you use to submit index and search requests.
*/
public final String endpoint() {
return endpoint;
}
/**
* For responses, this returns true if the service returned a value for the Endpoints 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 hasEndpoints() {
return endpoints != null && !(endpoints instanceof SdkAutoConstructMap);
}
/**
*
* Map containing the domain endpoints used to submit index and search requests. Example key, value
:
* 'vpc','vpc-endpoint-h2dsd34efgyghrtguk5gt6j2foh4.us-east-1.es.amazonaws.com'
.
*
*
* 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 #hasEndpoints} method.
*
*
* @return Map containing the domain endpoints used to submit index and search requests. Example
* key, value
:
* 'vpc','vpc-endpoint-h2dsd34efgyghrtguk5gt6j2foh4.us-east-1.es.amazonaws.com'
.
*/
public final Map endpoints() {
return endpoints;
}
/**
*
* The status of the domain configuration. True
if Amazon OpenSearch Service is processing
* configuration changes. False
if the configuration is active.
*
*
* @return The status of the domain configuration. True
if Amazon OpenSearch Service is processing
* configuration changes. False
if the configuration is active.
*/
public final Boolean processing() {
return processing;
}
/**
*
* The status of a domain version upgrade. True
if Amazon OpenSearch Service is undergoing a version
* upgrade. False
if the configuration is active.
*
*
* @return The status of a domain version upgrade. True
if Amazon OpenSearch Service is undergoing a
* version upgrade. False
if the configuration is active.
*/
public final Boolean upgradeProcessing() {
return upgradeProcessing;
}
/**
* Returns the value of the EngineVersion property for this object.
*
* @return The value of the EngineVersion property for this object.
*/
public final String engineVersion() {
return engineVersion;
}
/**
*
* The type and number of instances in the domain.
*
*
* @return The type and number of instances in the domain.
*/
public final ClusterConfig clusterConfig() {
return clusterConfig;
}
/**
*
* The EBSOptions
for the specified domain.
*
*
* @return The EBSOptions
for the specified domain.
*/
public final EBSOptions ebsOptions() {
return ebsOptions;
}
/**
*
* IAM access policy as a JSON-formatted string.
*
*
* @return IAM access policy as a JSON-formatted string.
*/
public final String accessPolicies() {
return accessPolicies;
}
/**
*
* The status of the SnapshotOptions
.
*
*
* @return The status of the SnapshotOptions
.
*/
public final SnapshotOptions snapshotOptions() {
return snapshotOptions;
}
/**
*
* The VPCOptions
for the specified domain. For more information, see Launching
* your Amazon OpenSearch Service domains using a VPC .
*
*
* @return The VPCOptions
for the specified domain. For more information, see
* Launching your Amazon OpenSearch Service domains using a VPC .
*/
public final VPCDerivedInfo vpcOptions() {
return vpcOptions;
}
/**
*
* The CognitoOptions
for the specified domain. For more information, see Configuring Amazon Cognito authentication for OpenSearch Dashboards .
*
*
* @return The CognitoOptions
for the specified domain. For more information, see Configuring Amazon Cognito authentication for OpenSearch Dashboards .
*/
public final CognitoOptions cognitoOptions() {
return cognitoOptions;
}
/**
*
* The status of the EncryptionAtRestOptions
.
*
*
* @return The status of the EncryptionAtRestOptions
.
*/
public final EncryptionAtRestOptions encryptionAtRestOptions() {
return encryptionAtRestOptions;
}
/**
*
* The status of the NodeToNodeEncryptionOptions
.
*
*
* @return The status of the NodeToNodeEncryptionOptions
.
*/
public final NodeToNodeEncryptionOptions nodeToNodeEncryptionOptions() {
return nodeToNodeEncryptionOptions;
}
/**
* For responses, this returns true if the service returned a value for the AdvancedOptions 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 hasAdvancedOptions() {
return advancedOptions != null && !(advancedOptions instanceof SdkAutoConstructMap);
}
/**
*
* The status of the AdvancedOptions
.
*
*
* 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 #hasAdvancedOptions} method.
*
*
* @return The status of the AdvancedOptions
.
*/
public final Map advancedOptions() {
return advancedOptions;
}
/**
*
* Log publishing options for the given domain.
*
*
* 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 #hasLogPublishingOptions} method.
*
*
* @return Log publishing options for the given domain.
*/
public final Map logPublishingOptions() {
return LogPublishingOptionsCopier.copyStringToEnum(logPublishingOptions);
}
/**
* For responses, this returns true if the service returned a value for the LogPublishingOptions 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 hasLogPublishingOptions() {
return logPublishingOptions != null && !(logPublishingOptions instanceof SdkAutoConstructMap);
}
/**
*
* Log publishing options for the given domain.
*
*
* 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 #hasLogPublishingOptions} method.
*
*
* @return Log publishing options for the given domain.
*/
public final Map logPublishingOptionsAsStrings() {
return logPublishingOptions;
}
/**
*
* The current status of the domain's service software.
*
*
* @return The current status of the domain's service software.
*/
public final ServiceSoftwareOptions serviceSoftwareOptions() {
return serviceSoftwareOptions;
}
/**
*
* The current status of the domain's endpoint options.
*
*
* @return The current status of the domain's endpoint options.
*/
public final DomainEndpointOptions domainEndpointOptions() {
return domainEndpointOptions;
}
/**
*
* The current status of the domain's advanced security options.
*
*
* @return The current status of the domain's advanced security options.
*/
public final AdvancedSecurityOptions advancedSecurityOptions() {
return advancedSecurityOptions;
}
/**
*
* The current status of the domain's Auto-Tune options.
*
*
* @return The current status of the domain's Auto-Tune options.
*/
public final AutoTuneOptionsOutput autoTuneOptions() {
return autoTuneOptions;
}
/**
*
* Specifies change details of the domain configuration change.
*
*
* @return Specifies change details of the domain configuration change.
*/
public final ChangeProgressDetails changeProgressDetails() {
return changeProgressDetails;
}
@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 final int hashCode() {
int hashCode = 1;
hashCode = 31 * hashCode + Objects.hashCode(domainId());
hashCode = 31 * hashCode + Objects.hashCode(domainName());
hashCode = 31 * hashCode + Objects.hashCode(arn());
hashCode = 31 * hashCode + Objects.hashCode(created());
hashCode = 31 * hashCode + Objects.hashCode(deleted());
hashCode = 31 * hashCode + Objects.hashCode(endpoint());
hashCode = 31 * hashCode + Objects.hashCode(hasEndpoints() ? endpoints() : null);
hashCode = 31 * hashCode + Objects.hashCode(processing());
hashCode = 31 * hashCode + Objects.hashCode(upgradeProcessing());
hashCode = 31 * hashCode + Objects.hashCode(engineVersion());
hashCode = 31 * hashCode + Objects.hashCode(clusterConfig());
hashCode = 31 * hashCode + Objects.hashCode(ebsOptions());
hashCode = 31 * hashCode + Objects.hashCode(accessPolicies());
hashCode = 31 * hashCode + Objects.hashCode(snapshotOptions());
hashCode = 31 * hashCode + Objects.hashCode(vpcOptions());
hashCode = 31 * hashCode + Objects.hashCode(cognitoOptions());
hashCode = 31 * hashCode + Objects.hashCode(encryptionAtRestOptions());
hashCode = 31 * hashCode + Objects.hashCode(nodeToNodeEncryptionOptions());
hashCode = 31 * hashCode + Objects.hashCode(hasAdvancedOptions() ? advancedOptions() : null);
hashCode = 31 * hashCode + Objects.hashCode(hasLogPublishingOptions() ? logPublishingOptionsAsStrings() : null);
hashCode = 31 * hashCode + Objects.hashCode(serviceSoftwareOptions());
hashCode = 31 * hashCode + Objects.hashCode(domainEndpointOptions());
hashCode = 31 * hashCode + Objects.hashCode(advancedSecurityOptions());
hashCode = 31 * hashCode + Objects.hashCode(autoTuneOptions());
hashCode = 31 * hashCode + Objects.hashCode(changeProgressDetails());
return hashCode;
}
@Override
public final boolean equals(Object obj) {
return equalsBySdkFields(obj);
}
@Override
public final boolean equalsBySdkFields(Object obj) {
if (this == obj) {
return true;
}
if (obj == null) {
return false;
}
if (!(obj instanceof DomainStatus)) {
return false;
}
DomainStatus other = (DomainStatus) obj;
return Objects.equals(domainId(), other.domainId()) && Objects.equals(domainName(), other.domainName())
&& Objects.equals(arn(), other.arn()) && Objects.equals(created(), other.created())
&& Objects.equals(deleted(), other.deleted()) && Objects.equals(endpoint(), other.endpoint())
&& hasEndpoints() == other.hasEndpoints() && Objects.equals(endpoints(), other.endpoints())
&& Objects.equals(processing(), other.processing())
&& Objects.equals(upgradeProcessing(), other.upgradeProcessing())
&& Objects.equals(engineVersion(), other.engineVersion())
&& Objects.equals(clusterConfig(), other.clusterConfig()) && Objects.equals(ebsOptions(), other.ebsOptions())
&& Objects.equals(accessPolicies(), other.accessPolicies())
&& Objects.equals(snapshotOptions(), other.snapshotOptions()) && Objects.equals(vpcOptions(), other.vpcOptions())
&& Objects.equals(cognitoOptions(), other.cognitoOptions())
&& Objects.equals(encryptionAtRestOptions(), other.encryptionAtRestOptions())
&& Objects.equals(nodeToNodeEncryptionOptions(), other.nodeToNodeEncryptionOptions())
&& hasAdvancedOptions() == other.hasAdvancedOptions()
&& Objects.equals(advancedOptions(), other.advancedOptions())
&& hasLogPublishingOptions() == other.hasLogPublishingOptions()
&& Objects.equals(logPublishingOptionsAsStrings(), other.logPublishingOptionsAsStrings())
&& Objects.equals(serviceSoftwareOptions(), other.serviceSoftwareOptions())
&& Objects.equals(domainEndpointOptions(), other.domainEndpointOptions())
&& Objects.equals(advancedSecurityOptions(), other.advancedSecurityOptions())
&& Objects.equals(autoTuneOptions(), other.autoTuneOptions())
&& Objects.equals(changeProgressDetails(), other.changeProgressDetails());
}
/**
* 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("DomainStatus").add("DomainId", domainId()).add("DomainName", domainName()).add("ARN", arn())
.add("Created", created()).add("Deleted", deleted()).add("Endpoint", endpoint())
.add("Endpoints", hasEndpoints() ? endpoints() : null).add("Processing", processing())
.add("UpgradeProcessing", upgradeProcessing()).add("EngineVersion", engineVersion())
.add("ClusterConfig", clusterConfig()).add("EBSOptions", ebsOptions()).add("AccessPolicies", accessPolicies())
.add("SnapshotOptions", snapshotOptions()).add("VPCOptions", vpcOptions())
.add("CognitoOptions", cognitoOptions()).add("EncryptionAtRestOptions", encryptionAtRestOptions())
.add("NodeToNodeEncryptionOptions", nodeToNodeEncryptionOptions())
.add("AdvancedOptions", hasAdvancedOptions() ? advancedOptions() : null)
.add("LogPublishingOptions", hasLogPublishingOptions() ? logPublishingOptionsAsStrings() : null)
.add("ServiceSoftwareOptions", serviceSoftwareOptions()).add("DomainEndpointOptions", domainEndpointOptions())
.add("AdvancedSecurityOptions", advancedSecurityOptions()).add("AutoTuneOptions", autoTuneOptions())
.add("ChangeProgressDetails", changeProgressDetails()).build();
}
public final Optional getValueForField(String fieldName, Class clazz) {
switch (fieldName) {
case "DomainId":
return Optional.ofNullable(clazz.cast(domainId()));
case "DomainName":
return Optional.ofNullable(clazz.cast(domainName()));
case "ARN":
return Optional.ofNullable(clazz.cast(arn()));
case "Created":
return Optional.ofNullable(clazz.cast(created()));
case "Deleted":
return Optional.ofNullable(clazz.cast(deleted()));
case "Endpoint":
return Optional.ofNullable(clazz.cast(endpoint()));
case "Endpoints":
return Optional.ofNullable(clazz.cast(endpoints()));
case "Processing":
return Optional.ofNullable(clazz.cast(processing()));
case "UpgradeProcessing":
return Optional.ofNullable(clazz.cast(upgradeProcessing()));
case "EngineVersion":
return Optional.ofNullable(clazz.cast(engineVersion()));
case "ClusterConfig":
return Optional.ofNullable(clazz.cast(clusterConfig()));
case "EBSOptions":
return Optional.ofNullable(clazz.cast(ebsOptions()));
case "AccessPolicies":
return Optional.ofNullable(clazz.cast(accessPolicies()));
case "SnapshotOptions":
return Optional.ofNullable(clazz.cast(snapshotOptions()));
case "VPCOptions":
return Optional.ofNullable(clazz.cast(vpcOptions()));
case "CognitoOptions":
return Optional.ofNullable(clazz.cast(cognitoOptions()));
case "EncryptionAtRestOptions":
return Optional.ofNullable(clazz.cast(encryptionAtRestOptions()));
case "NodeToNodeEncryptionOptions":
return Optional.ofNullable(clazz.cast(nodeToNodeEncryptionOptions()));
case "AdvancedOptions":
return Optional.ofNullable(clazz.cast(advancedOptions()));
case "LogPublishingOptions":
return Optional.ofNullable(clazz.cast(logPublishingOptionsAsStrings()));
case "ServiceSoftwareOptions":
return Optional.ofNullable(clazz.cast(serviceSoftwareOptions()));
case "DomainEndpointOptions":
return Optional.ofNullable(clazz.cast(domainEndpointOptions()));
case "AdvancedSecurityOptions":
return Optional.ofNullable(clazz.cast(advancedSecurityOptions()));
case "AutoTuneOptions":
return Optional.ofNullable(clazz.cast(autoTuneOptions()));
case "ChangeProgressDetails":
return Optional.ofNullable(clazz.cast(changeProgressDetails()));
default:
return Optional.empty();
}
}
@Override
public final List> sdkFields() {
return SDK_FIELDS;
}
private static Function getter(Function g) {
return obj -> g.apply((DomainStatus) obj);
}
private static BiConsumer setter(BiConsumer s) {
return (obj, val) -> s.accept((Builder) obj, val);
}
public interface Builder extends SdkPojo, CopyableBuilder {
/**
*
* The unique identifier for the specified domain.
*
*
* @param domainId
* The unique identifier for the specified domain.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder domainId(String domainId);
/**
*
* The name of a domain. Domain names are unique across the domains owned by an account within an AWS region.
* Domain names start with a letter or number and can contain the following characters: a-z (lowercase), 0-9,
* and - (hyphen).
*
*
* @param domainName
* The name of a domain. Domain names are unique across the domains owned by an account within an AWS
* region. Domain names start with a letter or number and can contain the following characters: a-z
* (lowercase), 0-9, and - (hyphen).
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder domainName(String domainName);
/**
*
* The Amazon Resource Name (ARN) of a domain. See IAM
* identifiers in the AWS Identity and Access Management User Guide for more information.
*
*
* @param arn
* The Amazon Resource Name (ARN) of a domain. See IAM
* identifiers in the AWS Identity and Access Management User Guide for more information.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder arn(String arn);
/**
*
* The domain creation status. True
if the creation of a domain is complete. False
* if domain creation is still in progress.
*
*
* @param created
* The domain creation status. True
if the creation of a domain is complete.
* False
if domain creation is still in progress.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder created(Boolean created);
/**
*
* The domain deletion status. True
if a delete request has been received for the domain but
* resource cleanup is still in progress. False
if the domain has not been deleted. Once domain
* deletion is complete, the status of the domain is no longer returned.
*
*
* @param deleted
* The domain deletion status. True
if a delete request has been received for the domain but
* resource cleanup is still in progress. False
if the domain has not been deleted. Once
* domain deletion is complete, the status of the domain is no longer returned.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder deleted(Boolean deleted);
/**
*
* The domain endpoint that you use to submit index and search requests.
*
*
* @param endpoint
* The domain endpoint that you use to submit index and search requests.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder endpoint(String endpoint);
/**
*
* Map containing the domain endpoints used to submit index and search requests. Example key, value
: 'vpc','vpc-endpoint-h2dsd34efgyghrtguk5gt6j2foh4.us-east-1.es.amazonaws.com'
.
*
*
* @param endpoints
* Map containing the domain endpoints used to submit index and search requests. Example
* key, value
:
* 'vpc','vpc-endpoint-h2dsd34efgyghrtguk5gt6j2foh4.us-east-1.es.amazonaws.com'
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder endpoints(Map endpoints);
/**
*
* The status of the domain configuration. True
if Amazon OpenSearch Service is processing
* configuration changes. False
if the configuration is active.
*
*
* @param processing
* The status of the domain configuration. True
if Amazon OpenSearch Service is processing
* configuration changes. False
if the configuration is active.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder processing(Boolean processing);
/**
*
* The status of a domain version upgrade. True
if Amazon OpenSearch Service is undergoing a
* version upgrade. False
if the configuration is active.
*
*
* @param upgradeProcessing
* The status of a domain version upgrade. True
if Amazon OpenSearch Service is undergoing a
* version upgrade. False
if the configuration is active.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder upgradeProcessing(Boolean upgradeProcessing);
/**
* Sets the value of the EngineVersion property for this object.
*
* @param engineVersion
* The new value for the EngineVersion property for this object.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder engineVersion(String engineVersion);
/**
*
* The type and number of instances in the domain.
*
*
* @param clusterConfig
* The type and number of instances in the domain.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder clusterConfig(ClusterConfig clusterConfig);
/**
*
* The type and number of instances in the domain.
*
* This is a convenience method that creates an instance of the {@link ClusterConfig.Builder} avoiding the need
* to create one manually via {@link ClusterConfig#builder()}.
*
* When the {@link Consumer} completes, {@link ClusterConfig.Builder#build()} is called immediately and its
* result is passed to {@link #clusterConfig(ClusterConfig)}.
*
* @param clusterConfig
* a consumer that will call methods on {@link ClusterConfig.Builder}
* @return Returns a reference to this object so that method calls can be chained together.
* @see #clusterConfig(ClusterConfig)
*/
default Builder clusterConfig(Consumer clusterConfig) {
return clusterConfig(ClusterConfig.builder().applyMutation(clusterConfig).build());
}
/**
*
* The EBSOptions
for the specified domain.
*
*
* @param ebsOptions
* The EBSOptions
for the specified domain.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder ebsOptions(EBSOptions ebsOptions);
/**
*
* The EBSOptions
for the specified domain.
*
* This is a convenience method that creates an instance of the {@link EBSOptions.Builder} avoiding the need to
* create one manually via {@link EBSOptions#builder()}.
*
* When the {@link Consumer} completes, {@link EBSOptions.Builder#build()} is called immediately and its result
* is passed to {@link #ebsOptions(EBSOptions)}.
*
* @param ebsOptions
* a consumer that will call methods on {@link EBSOptions.Builder}
* @return Returns a reference to this object so that method calls can be chained together.
* @see #ebsOptions(EBSOptions)
*/
default Builder ebsOptions(Consumer ebsOptions) {
return ebsOptions(EBSOptions.builder().applyMutation(ebsOptions).build());
}
/**
*
* IAM access policy as a JSON-formatted string.
*
*
* @param accessPolicies
* IAM access policy as a JSON-formatted string.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder accessPolicies(String accessPolicies);
/**
*
* The status of the SnapshotOptions
.
*
*
* @param snapshotOptions
* The status of the SnapshotOptions
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder snapshotOptions(SnapshotOptions snapshotOptions);
/**
*
* The status of the SnapshotOptions
.
*
* This is a convenience method that creates an instance of the {@link SnapshotOptions.Builder} avoiding the
* need to create one manually via {@link SnapshotOptions#builder()}.
*
* When the {@link Consumer} completes, {@link SnapshotOptions.Builder#build()} is called immediately and its
* result is passed to {@link #snapshotOptions(SnapshotOptions)}.
*
* @param snapshotOptions
* a consumer that will call methods on {@link SnapshotOptions.Builder}
* @return Returns a reference to this object so that method calls can be chained together.
* @see #snapshotOptions(SnapshotOptions)
*/
default Builder snapshotOptions(Consumer snapshotOptions) {
return snapshotOptions(SnapshotOptions.builder().applyMutation(snapshotOptions).build());
}
/**
*
* The VPCOptions
for the specified domain. For more information, see
* Launching your Amazon OpenSearch Service domains using a VPC .
*
*
* @param vpcOptions
* The VPCOptions
for the specified domain. For more information, see
* Launching your Amazon OpenSearch Service domains using a VPC .
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder vpcOptions(VPCDerivedInfo vpcOptions);
/**
*
* The VPCOptions
for the specified domain. For more information, see
* Launching your Amazon OpenSearch Service domains using a VPC .
*
* This is a convenience method that creates an instance of the {@link VPCDerivedInfo.Builder} avoiding the need
* to create one manually via {@link VPCDerivedInfo#builder()}.
*
* When the {@link Consumer} completes, {@link VPCDerivedInfo.Builder#build()} is called immediately and its
* result is passed to {@link #vpcOptions(VPCDerivedInfo)}.
*
* @param vpcOptions
* a consumer that will call methods on {@link VPCDerivedInfo.Builder}
* @return Returns a reference to this object so that method calls can be chained together.
* @see #vpcOptions(VPCDerivedInfo)
*/
default Builder vpcOptions(Consumer vpcOptions) {
return vpcOptions(VPCDerivedInfo.builder().applyMutation(vpcOptions).build());
}
/**
*
* The CognitoOptions
for the specified domain. For more information, see Configuring Amazon Cognito authentication for OpenSearch Dashboards .
*
*
* @param cognitoOptions
* The CognitoOptions
for the specified domain. For more information, see Configuring Amazon Cognito authentication for OpenSearch Dashboards .
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder cognitoOptions(CognitoOptions cognitoOptions);
/**
*
* The CognitoOptions
for the specified domain. For more information, see Configuring Amazon Cognito authentication for OpenSearch Dashboards .
*
* This is a convenience method that creates an instance of the {@link CognitoOptions.Builder} avoiding the need
* to create one manually via {@link CognitoOptions#builder()}.
*
* When the {@link Consumer} completes, {@link CognitoOptions.Builder#build()} is called immediately and its
* result is passed to {@link #cognitoOptions(CognitoOptions)}.
*
* @param cognitoOptions
* a consumer that will call methods on {@link CognitoOptions.Builder}
* @return Returns a reference to this object so that method calls can be chained together.
* @see #cognitoOptions(CognitoOptions)
*/
default Builder cognitoOptions(Consumer cognitoOptions) {
return cognitoOptions(CognitoOptions.builder().applyMutation(cognitoOptions).build());
}
/**
*
* The status of the EncryptionAtRestOptions
.
*
*
* @param encryptionAtRestOptions
* The status of the EncryptionAtRestOptions
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder encryptionAtRestOptions(EncryptionAtRestOptions encryptionAtRestOptions);
/**
*
* The status of the EncryptionAtRestOptions
.
*
* This is a convenience method that creates an instance of the {@link EncryptionAtRestOptions.Builder} avoiding
* the need to create one manually via {@link EncryptionAtRestOptions#builder()}.
*
* When the {@link Consumer} completes, {@link EncryptionAtRestOptions.Builder#build()} is called immediately
* and its result is passed to {@link #encryptionAtRestOptions(EncryptionAtRestOptions)}.
*
* @param encryptionAtRestOptions
* a consumer that will call methods on {@link EncryptionAtRestOptions.Builder}
* @return Returns a reference to this object so that method calls can be chained together.
* @see #encryptionAtRestOptions(EncryptionAtRestOptions)
*/
default Builder encryptionAtRestOptions(Consumer encryptionAtRestOptions) {
return encryptionAtRestOptions(EncryptionAtRestOptions.builder().applyMutation(encryptionAtRestOptions).build());
}
/**
*
* The status of the NodeToNodeEncryptionOptions
.
*
*
* @param nodeToNodeEncryptionOptions
* The status of the NodeToNodeEncryptionOptions
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder nodeToNodeEncryptionOptions(NodeToNodeEncryptionOptions nodeToNodeEncryptionOptions);
/**
*
* The status of the NodeToNodeEncryptionOptions
.
*
* This is a convenience method that creates an instance of the {@link NodeToNodeEncryptionOptions.Builder}
* avoiding the need to create one manually via {@link NodeToNodeEncryptionOptions#builder()}.
*
* When the {@link Consumer} completes, {@link NodeToNodeEncryptionOptions.Builder#build()} is called
* immediately and its result is passed to {@link #nodeToNodeEncryptionOptions(NodeToNodeEncryptionOptions)}.
*
* @param nodeToNodeEncryptionOptions
* a consumer that will call methods on {@link NodeToNodeEncryptionOptions.Builder}
* @return Returns a reference to this object so that method calls can be chained together.
* @see #nodeToNodeEncryptionOptions(NodeToNodeEncryptionOptions)
*/
default Builder nodeToNodeEncryptionOptions(Consumer nodeToNodeEncryptionOptions) {
return nodeToNodeEncryptionOptions(NodeToNodeEncryptionOptions.builder().applyMutation(nodeToNodeEncryptionOptions)
.build());
}
/**
*
* The status of the AdvancedOptions
.
*
*
* @param advancedOptions
* The status of the AdvancedOptions
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder advancedOptions(Map advancedOptions);
/**
*
* Log publishing options for the given domain.
*
*
* @param logPublishingOptions
* Log publishing options for the given domain.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder logPublishingOptionsWithStrings(Map logPublishingOptions);
/**
*
* Log publishing options for the given domain.
*
*
* @param logPublishingOptions
* Log publishing options for the given domain.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder logPublishingOptions(Map logPublishingOptions);
/**
*
* The current status of the domain's service software.
*
*
* @param serviceSoftwareOptions
* The current status of the domain's service software.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder serviceSoftwareOptions(ServiceSoftwareOptions serviceSoftwareOptions);
/**
*
* The current status of the domain's service software.
*
* This is a convenience method that creates an instance of the {@link ServiceSoftwareOptions.Builder} avoiding
* the need to create one manually via {@link ServiceSoftwareOptions#builder()}.
*
* When the {@link Consumer} completes, {@link ServiceSoftwareOptions.Builder#build()} is called immediately and
* its result is passed to {@link #serviceSoftwareOptions(ServiceSoftwareOptions)}.
*
* @param serviceSoftwareOptions
* a consumer that will call methods on {@link ServiceSoftwareOptions.Builder}
* @return Returns a reference to this object so that method calls can be chained together.
* @see #serviceSoftwareOptions(ServiceSoftwareOptions)
*/
default Builder serviceSoftwareOptions(Consumer serviceSoftwareOptions) {
return serviceSoftwareOptions(ServiceSoftwareOptions.builder().applyMutation(serviceSoftwareOptions).build());
}
/**
*
* The current status of the domain's endpoint options.
*
*
* @param domainEndpointOptions
* The current status of the domain's endpoint options.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder domainEndpointOptions(DomainEndpointOptions domainEndpointOptions);
/**
*
* The current status of the domain's endpoint options.
*
* This is a convenience method that creates an instance of the {@link DomainEndpointOptions.Builder} avoiding
* the need to create one manually via {@link DomainEndpointOptions#builder()}.
*
* When the {@link Consumer} completes, {@link DomainEndpointOptions.Builder#build()} is called immediately and
* its result is passed to {@link #domainEndpointOptions(DomainEndpointOptions)}.
*
* @param domainEndpointOptions
* a consumer that will call methods on {@link DomainEndpointOptions.Builder}
* @return Returns a reference to this object so that method calls can be chained together.
* @see #domainEndpointOptions(DomainEndpointOptions)
*/
default Builder domainEndpointOptions(Consumer domainEndpointOptions) {
return domainEndpointOptions(DomainEndpointOptions.builder().applyMutation(domainEndpointOptions).build());
}
/**
*
* The current status of the domain's advanced security options.
*
*
* @param advancedSecurityOptions
* The current status of the domain's advanced security options.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder advancedSecurityOptions(AdvancedSecurityOptions advancedSecurityOptions);
/**
*
* The current status of the domain's advanced security options.
*
* This is a convenience method that creates an instance of the {@link AdvancedSecurityOptions.Builder} avoiding
* the need to create one manually via {@link AdvancedSecurityOptions#builder()}.
*
* When the {@link Consumer} completes, {@link AdvancedSecurityOptions.Builder#build()} is called immediately
* and its result is passed to {@link #advancedSecurityOptions(AdvancedSecurityOptions)}.
*
* @param advancedSecurityOptions
* a consumer that will call methods on {@link AdvancedSecurityOptions.Builder}
* @return Returns a reference to this object so that method calls can be chained together.
* @see #advancedSecurityOptions(AdvancedSecurityOptions)
*/
default Builder advancedSecurityOptions(Consumer advancedSecurityOptions) {
return advancedSecurityOptions(AdvancedSecurityOptions.builder().applyMutation(advancedSecurityOptions).build());
}
/**
*
* The current status of the domain's Auto-Tune options.
*
*
* @param autoTuneOptions
* The current status of the domain's Auto-Tune options.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder autoTuneOptions(AutoTuneOptionsOutput autoTuneOptions);
/**
*
* The current status of the domain's Auto-Tune options.
*
* This is a convenience method that creates an instance of the {@link AutoTuneOptionsOutput.Builder} avoiding
* the need to create one manually via {@link AutoTuneOptionsOutput#builder()}.
*
* When the {@link Consumer} completes, {@link AutoTuneOptionsOutput.Builder#build()} is called immediately and
* its result is passed to {@link #autoTuneOptions(AutoTuneOptionsOutput)}.
*
* @param autoTuneOptions
* a consumer that will call methods on {@link AutoTuneOptionsOutput.Builder}
* @return Returns a reference to this object so that method calls can be chained together.
* @see #autoTuneOptions(AutoTuneOptionsOutput)
*/
default Builder autoTuneOptions(Consumer autoTuneOptions) {
return autoTuneOptions(AutoTuneOptionsOutput.builder().applyMutation(autoTuneOptions).build());
}
/**
*
* Specifies change details of the domain configuration change.
*
*
* @param changeProgressDetails
* Specifies change details of the domain configuration change.
* @return Returns a reference to this object so that method calls can be chained together.
*/
Builder changeProgressDetails(ChangeProgressDetails changeProgressDetails);
/**
*
* Specifies change details of the domain configuration change.
*
* This is a convenience method that creates an instance of the {@link ChangeProgressDetails.Builder} avoiding
* the need to create one manually via {@link ChangeProgressDetails#builder()}.
*
* When the {@link Consumer} completes, {@link ChangeProgressDetails.Builder#build()} is called immediately and
* its result is passed to {@link #changeProgressDetails(ChangeProgressDetails)}.
*
* @param changeProgressDetails
* a consumer that will call methods on {@link ChangeProgressDetails.Builder}
* @return Returns a reference to this object so that method calls can be chained together.
* @see #changeProgressDetails(ChangeProgressDetails)
*/
default Builder changeProgressDetails(Consumer changeProgressDetails) {
return changeProgressDetails(ChangeProgressDetails.builder().applyMutation(changeProgressDetails).build());
}
}
static final class BuilderImpl implements Builder {
private String domainId;
private String domainName;
private String arn;
private Boolean created;
private Boolean deleted;
private String endpoint;
private Map endpoints = DefaultSdkAutoConstructMap.getInstance();
private Boolean processing;
private Boolean upgradeProcessing;
private String engineVersion;
private ClusterConfig clusterConfig;
private EBSOptions ebsOptions;
private String accessPolicies;
private SnapshotOptions snapshotOptions;
private VPCDerivedInfo vpcOptions;
private CognitoOptions cognitoOptions;
private EncryptionAtRestOptions encryptionAtRestOptions;
private NodeToNodeEncryptionOptions nodeToNodeEncryptionOptions;
private Map advancedOptions = DefaultSdkAutoConstructMap.getInstance();
private Map logPublishingOptions = DefaultSdkAutoConstructMap.getInstance();
private ServiceSoftwareOptions serviceSoftwareOptions;
private DomainEndpointOptions domainEndpointOptions;
private AdvancedSecurityOptions advancedSecurityOptions;
private AutoTuneOptionsOutput autoTuneOptions;
private ChangeProgressDetails changeProgressDetails;
private BuilderImpl() {
}
private BuilderImpl(DomainStatus model) {
domainId(model.domainId);
domainName(model.domainName);
arn(model.arn);
created(model.created);
deleted(model.deleted);
endpoint(model.endpoint);
endpoints(model.endpoints);
processing(model.processing);
upgradeProcessing(model.upgradeProcessing);
engineVersion(model.engineVersion);
clusterConfig(model.clusterConfig);
ebsOptions(model.ebsOptions);
accessPolicies(model.accessPolicies);
snapshotOptions(model.snapshotOptions);
vpcOptions(model.vpcOptions);
cognitoOptions(model.cognitoOptions);
encryptionAtRestOptions(model.encryptionAtRestOptions);
nodeToNodeEncryptionOptions(model.nodeToNodeEncryptionOptions);
advancedOptions(model.advancedOptions);
logPublishingOptionsWithStrings(model.logPublishingOptions);
serviceSoftwareOptions(model.serviceSoftwareOptions);
domainEndpointOptions(model.domainEndpointOptions);
advancedSecurityOptions(model.advancedSecurityOptions);
autoTuneOptions(model.autoTuneOptions);
changeProgressDetails(model.changeProgressDetails);
}
public final String getDomainId() {
return domainId;
}
public final void setDomainId(String domainId) {
this.domainId = domainId;
}
@Override
public final Builder domainId(String domainId) {
this.domainId = domainId;
return this;
}
public final String getDomainName() {
return domainName;
}
public final void setDomainName(String domainName) {
this.domainName = domainName;
}
@Override
public final Builder domainName(String domainName) {
this.domainName = domainName;
return this;
}
public final String getArn() {
return arn;
}
public final void setArn(String arn) {
this.arn = arn;
}
@Override
public final Builder arn(String arn) {
this.arn = arn;
return this;
}
public final Boolean getCreated() {
return created;
}
public final void setCreated(Boolean created) {
this.created = created;
}
@Override
public final Builder created(Boolean created) {
this.created = created;
return this;
}
public final Boolean getDeleted() {
return deleted;
}
public final void setDeleted(Boolean deleted) {
this.deleted = deleted;
}
@Override
public final Builder deleted(Boolean deleted) {
this.deleted = deleted;
return this;
}
public final String getEndpoint() {
return endpoint;
}
public final void setEndpoint(String endpoint) {
this.endpoint = endpoint;
}
@Override
public final Builder endpoint(String endpoint) {
this.endpoint = endpoint;
return this;
}
public final Map getEndpoints() {
if (endpoints instanceof SdkAutoConstructMap) {
return null;
}
return endpoints;
}
public final void setEndpoints(Map endpoints) {
this.endpoints = EndpointsMapCopier.copy(endpoints);
}
@Override
public final Builder endpoints(Map endpoints) {
this.endpoints = EndpointsMapCopier.copy(endpoints);
return this;
}
public final Boolean getProcessing() {
return processing;
}
public final void setProcessing(Boolean processing) {
this.processing = processing;
}
@Override
public final Builder processing(Boolean processing) {
this.processing = processing;
return this;
}
public final Boolean getUpgradeProcessing() {
return upgradeProcessing;
}
public final void setUpgradeProcessing(Boolean upgradeProcessing) {
this.upgradeProcessing = upgradeProcessing;
}
@Override
public final Builder upgradeProcessing(Boolean upgradeProcessing) {
this.upgradeProcessing = upgradeProcessing;
return this;
}
public final String getEngineVersion() {
return engineVersion;
}
public final void setEngineVersion(String engineVersion) {
this.engineVersion = engineVersion;
}
@Override
public final Builder engineVersion(String engineVersion) {
this.engineVersion = engineVersion;
return this;
}
public final ClusterConfig.Builder getClusterConfig() {
return clusterConfig != null ? clusterConfig.toBuilder() : null;
}
public final void setClusterConfig(ClusterConfig.BuilderImpl clusterConfig) {
this.clusterConfig = clusterConfig != null ? clusterConfig.build() : null;
}
@Override
public final Builder clusterConfig(ClusterConfig clusterConfig) {
this.clusterConfig = clusterConfig;
return this;
}
public final EBSOptions.Builder getEbsOptions() {
return ebsOptions != null ? ebsOptions.toBuilder() : null;
}
public final void setEbsOptions(EBSOptions.BuilderImpl ebsOptions) {
this.ebsOptions = ebsOptions != null ? ebsOptions.build() : null;
}
@Override
public final Builder ebsOptions(EBSOptions ebsOptions) {
this.ebsOptions = ebsOptions;
return this;
}
public final String getAccessPolicies() {
return accessPolicies;
}
public final void setAccessPolicies(String accessPolicies) {
this.accessPolicies = accessPolicies;
}
@Override
public final Builder accessPolicies(String accessPolicies) {
this.accessPolicies = accessPolicies;
return this;
}
public final SnapshotOptions.Builder getSnapshotOptions() {
return snapshotOptions != null ? snapshotOptions.toBuilder() : null;
}
public final void setSnapshotOptions(SnapshotOptions.BuilderImpl snapshotOptions) {
this.snapshotOptions = snapshotOptions != null ? snapshotOptions.build() : null;
}
@Override
public final Builder snapshotOptions(SnapshotOptions snapshotOptions) {
this.snapshotOptions = snapshotOptions;
return this;
}
public final VPCDerivedInfo.Builder getVpcOptions() {
return vpcOptions != null ? vpcOptions.toBuilder() : null;
}
public final void setVpcOptions(VPCDerivedInfo.BuilderImpl vpcOptions) {
this.vpcOptions = vpcOptions != null ? vpcOptions.build() : null;
}
@Override
public final Builder vpcOptions(VPCDerivedInfo vpcOptions) {
this.vpcOptions = vpcOptions;
return this;
}
public final CognitoOptions.Builder getCognitoOptions() {
return cognitoOptions != null ? cognitoOptions.toBuilder() : null;
}
public final void setCognitoOptions(CognitoOptions.BuilderImpl cognitoOptions) {
this.cognitoOptions = cognitoOptions != null ? cognitoOptions.build() : null;
}
@Override
public final Builder cognitoOptions(CognitoOptions cognitoOptions) {
this.cognitoOptions = cognitoOptions;
return this;
}
public final EncryptionAtRestOptions.Builder getEncryptionAtRestOptions() {
return encryptionAtRestOptions != null ? encryptionAtRestOptions.toBuilder() : null;
}
public final void setEncryptionAtRestOptions(EncryptionAtRestOptions.BuilderImpl encryptionAtRestOptions) {
this.encryptionAtRestOptions = encryptionAtRestOptions != null ? encryptionAtRestOptions.build() : null;
}
@Override
public final Builder encryptionAtRestOptions(EncryptionAtRestOptions encryptionAtRestOptions) {
this.encryptionAtRestOptions = encryptionAtRestOptions;
return this;
}
public final NodeToNodeEncryptionOptions.Builder getNodeToNodeEncryptionOptions() {
return nodeToNodeEncryptionOptions != null ? nodeToNodeEncryptionOptions.toBuilder() : null;
}
public final void setNodeToNodeEncryptionOptions(NodeToNodeEncryptionOptions.BuilderImpl nodeToNodeEncryptionOptions) {
this.nodeToNodeEncryptionOptions = nodeToNodeEncryptionOptions != null ? nodeToNodeEncryptionOptions.build() : null;
}
@Override
public final Builder nodeToNodeEncryptionOptions(NodeToNodeEncryptionOptions nodeToNodeEncryptionOptions) {
this.nodeToNodeEncryptionOptions = nodeToNodeEncryptionOptions;
return this;
}
public final Map getAdvancedOptions() {
if (advancedOptions instanceof SdkAutoConstructMap) {
return null;
}
return advancedOptions;
}
public final void setAdvancedOptions(Map advancedOptions) {
this.advancedOptions = AdvancedOptionsCopier.copy(advancedOptions);
}
@Override
public final Builder advancedOptions(Map advancedOptions) {
this.advancedOptions = AdvancedOptionsCopier.copy(advancedOptions);
return this;
}
public final Map getLogPublishingOptions() {
Map result = LogPublishingOptionsCopier.copyToBuilder(this.logPublishingOptions);
if (result instanceof SdkAutoConstructMap) {
return null;
}
return result;
}
public final void setLogPublishingOptions(Map logPublishingOptions) {
this.logPublishingOptions = LogPublishingOptionsCopier.copyFromBuilder(logPublishingOptions);
}
@Override
public final Builder logPublishingOptionsWithStrings(Map logPublishingOptions) {
this.logPublishingOptions = LogPublishingOptionsCopier.copy(logPublishingOptions);
return this;
}
@Override
public final Builder logPublishingOptions(Map logPublishingOptions) {
this.logPublishingOptions = LogPublishingOptionsCopier.copyEnumToString(logPublishingOptions);
return this;
}
public final ServiceSoftwareOptions.Builder getServiceSoftwareOptions() {
return serviceSoftwareOptions != null ? serviceSoftwareOptions.toBuilder() : null;
}
public final void setServiceSoftwareOptions(ServiceSoftwareOptions.BuilderImpl serviceSoftwareOptions) {
this.serviceSoftwareOptions = serviceSoftwareOptions != null ? serviceSoftwareOptions.build() : null;
}
@Override
public final Builder serviceSoftwareOptions(ServiceSoftwareOptions serviceSoftwareOptions) {
this.serviceSoftwareOptions = serviceSoftwareOptions;
return this;
}
public final DomainEndpointOptions.Builder getDomainEndpointOptions() {
return domainEndpointOptions != null ? domainEndpointOptions.toBuilder() : null;
}
public final void setDomainEndpointOptions(DomainEndpointOptions.BuilderImpl domainEndpointOptions) {
this.domainEndpointOptions = domainEndpointOptions != null ? domainEndpointOptions.build() : null;
}
@Override
public final Builder domainEndpointOptions(DomainEndpointOptions domainEndpointOptions) {
this.domainEndpointOptions = domainEndpointOptions;
return this;
}
public final AdvancedSecurityOptions.Builder getAdvancedSecurityOptions() {
return advancedSecurityOptions != null ? advancedSecurityOptions.toBuilder() : null;
}
public final void setAdvancedSecurityOptions(AdvancedSecurityOptions.BuilderImpl advancedSecurityOptions) {
this.advancedSecurityOptions = advancedSecurityOptions != null ? advancedSecurityOptions.build() : null;
}
@Override
public final Builder advancedSecurityOptions(AdvancedSecurityOptions advancedSecurityOptions) {
this.advancedSecurityOptions = advancedSecurityOptions;
return this;
}
public final AutoTuneOptionsOutput.Builder getAutoTuneOptions() {
return autoTuneOptions != null ? autoTuneOptions.toBuilder() : null;
}
public final void setAutoTuneOptions(AutoTuneOptionsOutput.BuilderImpl autoTuneOptions) {
this.autoTuneOptions = autoTuneOptions != null ? autoTuneOptions.build() : null;
}
@Override
public final Builder autoTuneOptions(AutoTuneOptionsOutput autoTuneOptions) {
this.autoTuneOptions = autoTuneOptions;
return this;
}
public final ChangeProgressDetails.Builder getChangeProgressDetails() {
return changeProgressDetails != null ? changeProgressDetails.toBuilder() : null;
}
public final void setChangeProgressDetails(ChangeProgressDetails.BuilderImpl changeProgressDetails) {
this.changeProgressDetails = changeProgressDetails != null ? changeProgressDetails.build() : null;
}
@Override
public final Builder changeProgressDetails(ChangeProgressDetails changeProgressDetails) {
this.changeProgressDetails = changeProgressDetails;
return this;
}
@Override
public DomainStatus build() {
return new DomainStatus(this);
}
@Override
public List> sdkFields() {
return SDK_FIELDS;
}
}
}