Class DomainName

java.lang.Object
software.amazon.awssdk.services.apigateway.model.DomainName
All Implemented Interfaces:
Serializable, SdkPojo, ToCopyableBuilder<DomainName.Builder,DomainName>

@Generated("software.amazon.awssdk:codegen") public final class DomainName extends Object implements SdkPojo, Serializable, ToCopyableBuilder<DomainName.Builder,DomainName>

Represents a custom domain name as a user-friendly host name of an API (RestApi).

See Also:
  • Method Details

    • domainName

      public final String domainName()

      The custom domain name as an API host name, for example, my-api.example.com.

      Returns:
      The custom domain name as an API host name, for example, my-api.example.com.
    • domainNameId

      public final String domainNameId()

      The identifier for the domain name resource. Supported only for private custom domain names.

      Returns:
      The identifier for the domain name resource. Supported only for private custom domain names.
    • domainNameArn

      public final String domainNameArn()

      The ARN of the domain name.

      Returns:
      The ARN of the domain name.
    • certificateName

      public final String certificateName()

      The name of the certificate that will be used by edge-optimized endpoint or private endpoint for this domain name.

      Returns:
      The name of the certificate that will be used by edge-optimized endpoint or private endpoint for this domain name.
    • certificateArn

      public final String certificateArn()

      The reference to an Amazon Web Services-managed certificate that will be used by edge-optimized endpoint or private endpoint for this domain name. Certificate Manager is the only supported source.

      Returns:
      The reference to an Amazon Web Services-managed certificate that will be used by edge-optimized endpoint or private endpoint for this domain name. Certificate Manager is the only supported source.
    • certificateUploadDate

      public final Instant certificateUploadDate()

      The timestamp when the certificate that was used by edge-optimized endpoint or private endpoint for this domain name was uploaded.

      Returns:
      The timestamp when the certificate that was used by edge-optimized endpoint or private endpoint for this domain name was uploaded.
    • regionalDomainName

      public final String regionalDomainName()

      The domain name associated with the regional endpoint for this custom domain name. You set up this association by adding a DNS record that points the custom domain name to this regional domain name. The regional domain name is returned by API Gateway when you create a regional endpoint.

      Returns:
      The domain name associated with the regional endpoint for this custom domain name. You set up this association by adding a DNS record that points the custom domain name to this regional domain name. The regional domain name is returned by API Gateway when you create a regional endpoint.
    • regionalHostedZoneId

      public final String regionalHostedZoneId()

      The region-specific Amazon Route 53 Hosted Zone ID of the regional endpoint. For more information, see Set up a Regional Custom Domain Name and AWS Regions and Endpoints for API Gateway.

      Returns:
      The region-specific Amazon Route 53 Hosted Zone ID of the regional endpoint. For more information, see Set up a Regional Custom Domain Name and AWS Regions and Endpoints for API Gateway.
    • regionalCertificateName

      public final String regionalCertificateName()

      The name of the certificate that will be used for validating the regional domain name.

      Returns:
      The name of the certificate that will be used for validating the regional domain name.
    • regionalCertificateArn

      public final String regionalCertificateArn()

      The reference to an Amazon Web Services-managed certificate that will be used for validating the regional domain name. Certificate Manager is the only supported source.

      Returns:
      The reference to an Amazon Web Services-managed certificate that will be used for validating the regional domain name. Certificate Manager is the only supported source.
    • distributionDomainName

      public final String distributionDomainName()

      The domain name of the Amazon CloudFront distribution associated with this custom domain name for an edge-optimized endpoint. You set up this association when adding a DNS record pointing the custom domain name to this distribution name. For more information about CloudFront distributions, see the Amazon CloudFront documentation.

      Returns:
      The domain name of the Amazon CloudFront distribution associated with this custom domain name for an edge-optimized endpoint. You set up this association when adding a DNS record pointing the custom domain name to this distribution name. For more information about CloudFront distributions, see the Amazon CloudFront documentation.
    • distributionHostedZoneId

      public final String distributionHostedZoneId()

      The region-agnostic Amazon Route 53 Hosted Zone ID of the edge-optimized endpoint. The valid value is Z2FDTNDATAQYW2 for all the regions. For more information, see Set up a Regional Custom Domain Name and AWS Regions and Endpoints for API Gateway.

      Returns:
      The region-agnostic Amazon Route 53 Hosted Zone ID of the edge-optimized endpoint. The valid value is Z2FDTNDATAQYW2 for all the regions. For more information, see Set up a Regional Custom Domain Name and AWS Regions and Endpoints for API Gateway.
    • endpointConfiguration

      public final EndpointConfiguration endpointConfiguration()

      The endpoint configuration of this DomainName showing the endpoint types and IP address types of the domain name.

      Returns:
      The endpoint configuration of this DomainName showing the endpoint types and IP address types of the domain name.
    • domainNameStatus

      public final DomainNameStatus domainNameStatus()

      The status of the DomainName migration. The valid values are AVAILABLE and UPDATING. If the status is UPDATING, the domain cannot be modified further until the existing operation is complete. If it is AVAILABLE, the domain can be updated.

      If the service returns an enum value that is not available in the current SDK version, domainNameStatus will return DomainNameStatus.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from domainNameStatusAsString().

      Returns:
      The status of the DomainName migration. The valid values are AVAILABLE and UPDATING. If the status is UPDATING, the domain cannot be modified further until the existing operation is complete. If it is AVAILABLE, the domain can be updated.
      See Also:
    • domainNameStatusAsString

      public final String domainNameStatusAsString()

      The status of the DomainName migration. The valid values are AVAILABLE and UPDATING. If the status is UPDATING, the domain cannot be modified further until the existing operation is complete. If it is AVAILABLE, the domain can be updated.

      If the service returns an enum value that is not available in the current SDK version, domainNameStatus will return DomainNameStatus.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from domainNameStatusAsString().

      Returns:
      The status of the DomainName migration. The valid values are AVAILABLE and UPDATING. If the status is UPDATING, the domain cannot be modified further until the existing operation is complete. If it is AVAILABLE, the domain can be updated.
      See Also:
    • domainNameStatusMessage

      public final String domainNameStatusMessage()

      An optional text message containing detailed information about status of the DomainName migration.

      Returns:
      An optional text message containing detailed information about status of the DomainName migration.
    • securityPolicy

      public final SecurityPolicy securityPolicy()

      The Transport Layer Security (TLS) version + cipher suite for this DomainName. The valid values are TLS_1_0 and TLS_1_2.

      If the service returns an enum value that is not available in the current SDK version, securityPolicy will return SecurityPolicy.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from securityPolicyAsString().

      Returns:
      The Transport Layer Security (TLS) version + cipher suite for this DomainName. The valid values are TLS_1_0 and TLS_1_2.
      See Also:
    • securityPolicyAsString

      public final String securityPolicyAsString()

      The Transport Layer Security (TLS) version + cipher suite for this DomainName. The valid values are TLS_1_0 and TLS_1_2.

      If the service returns an enum value that is not available in the current SDK version, securityPolicy will return SecurityPolicy.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from securityPolicyAsString().

      Returns:
      The Transport Layer Security (TLS) version + cipher suite for this DomainName. The valid values are TLS_1_0 and TLS_1_2.
      See Also:
    • hasTags

      public final boolean hasTags()
      For responses, this returns true if the service returned a value for the Tags property. This DOES NOT check that the value is non-empty (for which, you should check the 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.
    • tags

      public final Map<String,String> tags()

      The collection of tags. Each tag element is associated with a given resource.

      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 hasTags() method.

      Returns:
      The collection of tags. Each tag element is associated with a given resource.
    • mutualTlsAuthentication

      public final MutualTlsAuthentication mutualTlsAuthentication()

      The mutual TLS authentication configuration for a custom domain name. If specified, API Gateway performs two-way authentication between the client and the server. Clients must present a trusted certificate to access your API.

      Returns:
      The mutual TLS authentication configuration for a custom domain name. If specified, API Gateway performs two-way authentication between the client and the server. Clients must present a trusted certificate to access your API.
    • ownershipVerificationCertificateArn

      public final String ownershipVerificationCertificateArn()

      The ARN of the public certificate issued by ACM to validate ownership of your custom domain. Only required when configuring mutual TLS and using an ACM imported or private CA certificate ARN as the regionalCertificateArn.

      Returns:
      The ARN of the public certificate issued by ACM to validate ownership of your custom domain. Only required when configuring mutual TLS and using an ACM imported or private CA certificate ARN as the regionalCertificateArn.
    • managementPolicy

      public final String managementPolicy()

      A stringified JSON policy document that applies to the API Gateway Management service for this DomainName. This policy document controls access for access association sources to create domain name access associations with this DomainName. Supported only for private custom domain names.

      Returns:
      A stringified JSON policy document that applies to the API Gateway Management service for this DomainName. This policy document controls access for access association sources to create domain name access associations with this DomainName. Supported only for private custom domain names.
    • policy

      public final String policy()

      A stringified JSON policy document that applies to the execute-api service for this DomainName regardless of the caller and Method configuration. Supported only for private custom domain names.

      Returns:
      A stringified JSON policy document that applies to the execute-api service for this DomainName regardless of the caller and Method configuration. Supported only for private custom domain names.
    • routingMode

      public final RoutingMode routingMode()

      The routing mode for this domain name. The routing mode determines how API Gateway sends traffic from your custom domain name to your private APIs.

      If the service returns an enum value that is not available in the current SDK version, routingMode will return RoutingMode.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from routingModeAsString().

      Returns:
      The routing mode for this domain name. The routing mode determines how API Gateway sends traffic from your custom domain name to your private APIs.
      See Also:
    • routingModeAsString

      public final String routingModeAsString()

      The routing mode for this domain name. The routing mode determines how API Gateway sends traffic from your custom domain name to your private APIs.

      If the service returns an enum value that is not available in the current SDK version, routingMode will return RoutingMode.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from routingModeAsString().

      Returns:
      The routing mode for this domain name. The routing mode determines how API Gateway sends traffic from your custom domain name to your private APIs.
      See Also:
    • toBuilder

      public DomainName.Builder toBuilder()
      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<DomainName.Builder,DomainName>
      Returns:
      a builder for type T
    • builder

      public static DomainName.Builder builder()
    • serializableBuilderClass

      public static Class<? extends DomainName.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      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.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.
    • sdkFieldNameToField

      public final Map<String,SdkField<?>> sdkFieldNameToField()
      Specified by:
      sdkFieldNameToField in interface SdkPojo
      Returns:
      The mapping between the field name and its corresponding field.