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

com.amazonaws.services.route53.model.AliasTarget Maven / Gradle / Ivy

Go to download

The AWS SDK for Java with support for OSGi. The AWS SDK for Java provides Java APIs for building software on AWS' cost-effective, scalable, and reliable infrastructure products. The AWS Java SDK allows developers to code against APIs for all of Amazon's infrastructure web services (Amazon S3, Amazon EC2, Amazon SQS, Amazon Relational Database Service, Amazon AutoScaling, etc).

There is a newer version: 1.11.60
Show newest version
/*
 * Copyright 2011-2016 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 com.amazonaws.services.route53.model;

import java.io.Serializable;

/**
 * 

* Alias resource record sets only: Information about the CloudFront * distribution, ELB load balancer, Amazon S3 bucket, or Amazon Route 53 * resource record set to which you are routing traffic. *

*

* If you're creating resource record sets for a private hosted zone, note the * following: *

*
    *
  • You can create alias resource record sets only for Amazon Route 53 * resource record sets in the same private hosted zone. Creating alias resource * record sets for CloudFront distributions, ELB load balancers, and Amazon S3 * buckets is not supported.
  • *
  • You can't create alias resource record sets for failover, geolocation, or * latency resource record sets in a private hosted zone.
  • *
*/ public class AliasTarget implements Serializable, Cloneable { /** *

* Alias resource record sets only: The value you use depends on * where you want to route queries: *

*
    *
  • A CloudFront distribution: Specify Z2FDTNDATAQYW2 * .
  • *
  • An ELB load balancer: Specify the value of the hosted zone ID for the * load balancer. You can get the hosted zone ID by using the AWS Management * Console, the ELB API, or the AWS CLI. Use the same method to get values * for HostedZoneId and DNSName. If you get one * value from the console and the other value from the API or the CLI, * creating the resource record set will fail.
  • *
  • An Amazon S3 bucket that is configured as a static website: * Specify the hosted zone ID for the Amazon S3 website endpoint in which * you created the bucket. For more information about valid values, see the * table Amazon Simple Storage Service (S3) Website Endpoints in the * Amazon Web Services General Reference.
  • *
  • Another Amazon Route 53 resource record set in your hosted * zone: Specify the hosted zone ID of your hosted zone. (An alias * resource record set cannot reference a resource record set in a different * hosted zone.)
  • *
*/ private String hostedZoneId; /** *

* Alias resource record sets only: The external DNS name associated * with the AWS Resource. The value that you specify depends on where you * want to route queries: *

*
    *
  • A CloudFront distribution: Specify the domain name that * CloudFront assigned when you created your distribution. Your CloudFront * distribution must include an alternate domain name that matches the name * of the resource record set. For example, if the name of the resource * record set is acme.example.com, your CloudFront distribution * must include acme.example.com as one of the alternate domain * names. For more information, see Using Alternate Domain Names (CNAMEs) in the Amazon CloudFront * Developer Guide.
  • *
  • An ELB load balancer: Specify the DNS name associated with the * load balancer. You can get the DNS name by using the AWS Management * Console, the ELB API, or the AWS CLI. Use the same method to get values * for HostedZoneId and DNSName. If you get one * value from the console and the other value from the API or the CLI, * creating the resource record set will fail.
  • *
  • An Elastic Beanstalk environment: Specify the CNAME attribute * for the environment. (The environment must have a regionalized domain * name.)
  • *
  • An Amazon S3 bucket that is configured as a static website: * Specify the domain name of the Amazon S3 website endpoint in which you * created the bucket; for example, * s3-website-us-east-1.amazonaws.com. For more information * about valid values, see the table Amazon Simple Storage Service (S3) Website Endpoints in the * Amazon Web Services General Reference. For more information about * using Amazon S3 buckets for websites, see Hosting a Static Website on Amazon S3 in the Amazon Simple * Storage Service Developer Guide.
  • *
  • Another Amazon Route 53 resource record set: Specify the value * of the Name element for a resource record set in the current * hosted zone.
  • *
*/ private String dNSName; /** *

* Alias resource record sets only: If you set the value of * EvaluateTargetHealth to true for the resource * record set or sets in an alias, weighted alias, latency alias, or * failover alias resource record set, and if you specify a value for * HealthCheckId for every resource record set that is * referenced by these alias resource record sets, the alias resource record * sets inherit the health of the referenced resource record sets. *

*

* In this configuration, when Amazon Route 53 receives a DNS query for an * alias resource record set: *

*
    *
  1. Amazon Route 53 looks at the resource record sets that are referenced * by the alias resource record sets to determine which health checks * they're using.
  2. *
  3. Amazon Route 53 checks the current status of each health check. * (Amazon Route 53 periodically checks the health of the endpoint that is * specified in a health check; it doesn't perform the health check when the * DNS query arrives.)
  4. *
  5. Based on the status of the health checks, Amazon Route 53 determines * which resource record sets are healthy. Unhealthy resource record sets * are immediately removed from consideration. In addition, if all of the * resource record sets that are referenced by an alias resource record set * are unhealthy, that alias resource record set also is immediately removed * from consideration.
  6. *
  7. Based on the configuration of the alias resource record sets * (weighted alias or latency alias, for example) and the configuration of * the resource record sets that they reference, Amazon Route 53 chooses a * resource record set from the healthy resource record sets, and responds * to the query.
  8. *
*

* Note the following: *

*
    *
  • You cannot set EvaluateTargetHealth to true when the * alias target is a CloudFront distribution.
  • *
  • If the AWS resource that you specify in AliasTarget is a * resource record set or a group of resource record sets (for example, a * group of weighted resource record sets), but it is not another alias * resource record set, we recommend that you associate a health check with * all of the resource record sets in the alias target.
  • *
  • If you specify an ELB load balancer in AliasTarget, * Elastic Load Balancing routes queries only to the healthy Amazon EC2 * instances that are registered with the load balancer. If no Amazon EC2 * instances are healthy or if the load balancer itself is unhealthy, and if * EvaluateTargetHealth is true for the * corresponding alias resource record set, Amazon Route 53 routes queries * to other resources.
  • *
  • When you create a load balancer, you configure settings for Elastic * Load Balancing health checks; they're not Amazon Route 53 health checks, * but they perform a similar function. Do not create Amazon Route 53 health * checks for the Amazon EC2 instances that you register with an ELB load * balancer. For more information, see How Health Checks Work in More Complex Amazon Route 53 * Configurations in the Amazon Route 53 Developer Guide.
  • *
*

* We recommend that you set EvaluateTargetHealth to * true only when you have enough idle capacity to handle the * failure of one or more endpoints. *

*

* For more information and examples, see Amazon Route 53 Health Checks and DNS Failover in the Amazon * Route 53 Developer Guide. *

*/ private Boolean evaluateTargetHealth; /** * Default constructor for AliasTarget object. Callers should use the setter * or fluent setter (with...) methods to initialize the object after * creating it. */ public AliasTarget() { } /** * Constructs a new AliasTarget object. Callers should use the setter or * fluent setter (with...) methods to initialize any additional object * members. * * @param hostedZoneId * Alias resource record sets only: The value you use depends on * where you want to route queries:

*
    *
  • A CloudFront distribution: Specify * Z2FDTNDATAQYW2.
  • *
  • An ELB load balancer: Specify the value of the hosted zone ID * for the load balancer. You can get the hosted zone ID by using the * AWS Management Console, the ELB API, or the AWS CLI. Use the same * method to get values for HostedZoneId and * DNSName. If you get one value from the console and * the other value from the API or the CLI, creating the resource * record set will fail.
  • *
  • An Amazon S3 bucket that is configured as a static * website: Specify the hosted zone ID for the Amazon S3 website * endpoint in which you created the bucket. For more information * about valid values, see the table Amazon Simple Storage Service (S3) Website Endpoints in the * Amazon Web Services General Reference.
  • *
  • Another Amazon Route 53 resource record set in your hosted * zone: Specify the hosted zone ID of your hosted zone. (An * alias resource record set cannot reference a resource record set * in a different hosted zone.) * @param dNSName * Alias resource record sets only: The external DNS name * associated with the AWS Resource. The value that you specify * depends on where you want to route queries:

    *
      *
    • A CloudFront distribution: Specify the domain name that * CloudFront assigned when you created your distribution. Your * CloudFront distribution must include an alternate domain name that * matches the name of the resource record set. For example, if the * name of the resource record set is acme.example.com, * your CloudFront distribution must include acme.example.com * as one of the alternate domain names. For more * information, see Using Alternate Domain Names (CNAMEs) in the Amazon * CloudFront Developer Guide.
    • An ELB load * balancer: Specify the DNS name associated with the load * balancer. You can get the DNS name by using the AWS Management * Console, the ELB API, or the AWS CLI. Use the same method to get * values for HostedZoneId and DNSName. If * you get one value from the console and the other value from the * API or the CLI, creating the resource record set will fail.
    • *
    • An Elastic Beanstalk environment: Specify the CNAME * attribute for the environment. (The environment must have a * regionalized domain name.)
    • An Amazon S3 bucket that * is configured as a static website: Specify the domain name of * the Amazon S3 website endpoint in which you created the bucket; * for example, s3-website-us-east-1.amazonaws.com. For * more information about valid values, see the table Amazon Simple Storage Service (S3) Website Endpoints in the * Amazon Web Services General Reference. For more information * about using Amazon S3 buckets for websites, see Hosting a Static Website on Amazon S3 in the Amazon Simple * Storage Service Developer Guide.
    • Another Amazon * Route 53 resource record set: Specify the value of the * Name element for a resource record set in the current * hosted zone. */ public AliasTarget(String hostedZoneId, String dNSName) { setHostedZoneId(hostedZoneId); setDNSName(dNSName); } /** *

      * Alias resource record sets only: The value you use depends on * where you want to route queries: *

      *
        *
      • A CloudFront distribution: Specify Z2FDTNDATAQYW2 * .
      • *
      • An ELB load balancer: Specify the value of the hosted zone ID for the * load balancer. You can get the hosted zone ID by using the AWS Management * Console, the ELB API, or the AWS CLI. Use the same method to get values * for HostedZoneId and DNSName. If you get one * value from the console and the other value from the API or the CLI, * creating the resource record set will fail.
      • *
      • An Amazon S3 bucket that is configured as a static website: * Specify the hosted zone ID for the Amazon S3 website endpoint in which * you created the bucket. For more information about valid values, see the * table Amazon Simple Storage Service (S3) Website Endpoints in the * Amazon Web Services General Reference.
      • *
      • Another Amazon Route 53 resource record set in your hosted * zone: Specify the hosted zone ID of your hosted zone. (An alias * resource record set cannot reference a resource record set in a different * hosted zone.)
      • *
      * * @param hostedZoneId * Alias resource record sets only: The value you use depends on * where you want to route queries:

      *
        *
      • A CloudFront distribution: Specify * Z2FDTNDATAQYW2.
      • *
      • An ELB load balancer: Specify the value of the hosted zone ID * for the load balancer. You can get the hosted zone ID by using the * AWS Management Console, the ELB API, or the AWS CLI. Use the same * method to get values for HostedZoneId and * DNSName. If you get one value from the console and * the other value from the API or the CLI, creating the resource * record set will fail.
      • *
      • An Amazon S3 bucket that is configured as a static * website: Specify the hosted zone ID for the Amazon S3 website * endpoint in which you created the bucket. For more information * about valid values, see the table Amazon Simple Storage Service (S3) Website Endpoints in the * Amazon Web Services General Reference.
      • *
      • Another Amazon Route 53 resource record set in your hosted * zone: Specify the hosted zone ID of your hosted zone. (An * alias resource record set cannot reference a resource record set * in a different hosted zone.) */ public void setHostedZoneId(String hostedZoneId) { this.hostedZoneId = hostedZoneId; } /** *

        * Alias resource record sets only: The value you use depends on * where you want to route queries: *

        *
          *
        • A CloudFront distribution: Specify Z2FDTNDATAQYW2 * .
        • *
        • An ELB load balancer: Specify the value of the hosted zone ID for the * load balancer. You can get the hosted zone ID by using the AWS Management * Console, the ELB API, or the AWS CLI. Use the same method to get values * for HostedZoneId and DNSName. If you get one * value from the console and the other value from the API or the CLI, * creating the resource record set will fail.
        • *
        • An Amazon S3 bucket that is configured as a static website: * Specify the hosted zone ID for the Amazon S3 website endpoint in which * you created the bucket. For more information about valid values, see the * table Amazon Simple Storage Service (S3) Website Endpoints in the * Amazon Web Services General Reference.
        • *
        • Another Amazon Route 53 resource record set in your hosted * zone: Specify the hosted zone ID of your hosted zone. (An alias * resource record set cannot reference a resource record set in a different * hosted zone.)
        • *
        * * @return Alias resource record sets only: The value you use depends on * where you want to route queries:

        *
          *
        • A CloudFront distribution: Specify * Z2FDTNDATAQYW2.
        • *
        • An ELB load balancer: Specify the value of the hosted zone ID * for the load balancer. You can get the hosted zone ID by using * the AWS Management Console, the ELB API, or the AWS CLI. Use the * same method to get values for HostedZoneId and * DNSName. If you get one value from the console and * the other value from the API or the CLI, creating the resource * record set will fail.
        • *
        • An Amazon S3 bucket that is configured as a static * website: Specify the hosted zone ID for the Amazon S3 website * endpoint in which you created the bucket. For more information * about valid values, see the table Amazon Simple Storage Service (S3) Website Endpoints in the * Amazon Web Services General Reference.
        • *
        • Another Amazon Route 53 resource record set in your hosted * zone: Specify the hosted zone ID of your hosted zone. (An * alias resource record set cannot reference a resource record set * in a different hosted zone.) */ public String getHostedZoneId() { return this.hostedZoneId; } /** *

          * Alias resource record sets only: The value you use depends on * where you want to route queries: *

          *
            *
          • A CloudFront distribution: Specify Z2FDTNDATAQYW2 * .
          • *
          • An ELB load balancer: Specify the value of the hosted zone ID for the * load balancer. You can get the hosted zone ID by using the AWS Management * Console, the ELB API, or the AWS CLI. Use the same method to get values * for HostedZoneId and DNSName. If you get one * value from the console and the other value from the API or the CLI, * creating the resource record set will fail.
          • *
          • An Amazon S3 bucket that is configured as a static website: * Specify the hosted zone ID for the Amazon S3 website endpoint in which * you created the bucket. For more information about valid values, see the * table Amazon Simple Storage Service (S3) Website Endpoints in the * Amazon Web Services General Reference.
          • *
          • Another Amazon Route 53 resource record set in your hosted * zone: Specify the hosted zone ID of your hosted zone. (An alias * resource record set cannot reference a resource record set in a different * hosted zone.)
          • *
          * * @param hostedZoneId * Alias resource record sets only: The value you use depends on * where you want to route queries:

          *
            *
          • A CloudFront distribution: Specify * Z2FDTNDATAQYW2.
          • *
          • An ELB load balancer: Specify the value of the hosted zone ID * for the load balancer. You can get the hosted zone ID by using the * AWS Management Console, the ELB API, or the AWS CLI. Use the same * method to get values for HostedZoneId and * DNSName. If you get one value from the console and * the other value from the API or the CLI, creating the resource * record set will fail.
          • *
          • An Amazon S3 bucket that is configured as a static * website: Specify the hosted zone ID for the Amazon S3 website * endpoint in which you created the bucket. For more information * about valid values, see the table Amazon Simple Storage Service (S3) Website Endpoints in the * Amazon Web Services General Reference.
          • *
          • Another Amazon Route 53 resource record set in your hosted * zone: Specify the hosted zone ID of your hosted zone. (An * alias resource record set cannot reference a resource record set * in a different hosted zone.) * @return Returns a reference to this object so that method calls can be * chained together. */ public AliasTarget withHostedZoneId(String hostedZoneId) { setHostedZoneId(hostedZoneId); return this; } /** *

            * Alias resource record sets only: The external DNS name associated * with the AWS Resource. The value that you specify depends on where you * want to route queries: *

            *
              *
            • A CloudFront distribution: Specify the domain name that * CloudFront assigned when you created your distribution. Your CloudFront * distribution must include an alternate domain name that matches the name * of the resource record set. For example, if the name of the resource * record set is acme.example.com, your CloudFront distribution * must include acme.example.com as one of the alternate domain * names. For more information, see Using Alternate Domain Names (CNAMEs) in the Amazon CloudFront * Developer Guide.
            • *
            • An ELB load balancer: Specify the DNS name associated with the * load balancer. You can get the DNS name by using the AWS Management * Console, the ELB API, or the AWS CLI. Use the same method to get values * for HostedZoneId and DNSName. If you get one * value from the console and the other value from the API or the CLI, * creating the resource record set will fail.
            • *
            • An Elastic Beanstalk environment: Specify the CNAME attribute * for the environment. (The environment must have a regionalized domain * name.)
            • *
            • An Amazon S3 bucket that is configured as a static website: * Specify the domain name of the Amazon S3 website endpoint in which you * created the bucket; for example, * s3-website-us-east-1.amazonaws.com. For more information * about valid values, see the table Amazon Simple Storage Service (S3) Website Endpoints in the * Amazon Web Services General Reference. For more information about * using Amazon S3 buckets for websites, see Hosting a Static Website on Amazon S3 in the Amazon Simple * Storage Service Developer Guide.
            • *
            • Another Amazon Route 53 resource record set: Specify the value * of the Name element for a resource record set in the current * hosted zone.
            • *
            * * @param dNSName * Alias resource record sets only: The external DNS name * associated with the AWS Resource. The value that you specify * depends on where you want to route queries:

            *
              *
            • A CloudFront distribution: Specify the domain name that * CloudFront assigned when you created your distribution. Your * CloudFront distribution must include an alternate domain name that * matches the name of the resource record set. For example, if the * name of the resource record set is acme.example.com, * your CloudFront distribution must include * acme.example.com as one of the alternate domain * names. For more information, see Using Alternate Domain Names (CNAMEs) in the Amazon * CloudFront Developer Guide.
            • *
            • An ELB load balancer: Specify the DNS name associated * with the load balancer. You can get the DNS name by using the AWS * Management Console, the ELB API, or the AWS CLI. Use the same * method to get values for HostedZoneId and * DNSName. If you get one value from the console and * the other value from the API or the CLI, creating the resource * record set will fail.
            • *
            • An Elastic Beanstalk environment: Specify the CNAME * attribute for the environment. (The environment must have a * regionalized domain name.)
            • *
            • An Amazon S3 bucket that is configured as a static * website: Specify the domain name of the Amazon S3 website * endpoint in which you created the bucket; for example, * s3-website-us-east-1.amazonaws.com. For more * information about valid values, see the table Amazon Simple Storage Service (S3) Website Endpoints in the * Amazon Web Services General Reference. For more information * about using Amazon S3 buckets for websites, see Hosting a Static Website on Amazon S3 in the Amazon Simple * Storage Service Developer Guide.
            • *
            • Another Amazon Route 53 resource record set: Specify * the value of the Name element for a resource record * set in the current hosted zone. */ public void setDNSName(String dNSName) { this.dNSName = dNSName; } /** *

              * Alias resource record sets only: The external DNS name associated * with the AWS Resource. The value that you specify depends on where you * want to route queries: *

              *
                *
              • A CloudFront distribution: Specify the domain name that * CloudFront assigned when you created your distribution. Your CloudFront * distribution must include an alternate domain name that matches the name * of the resource record set. For example, if the name of the resource * record set is acme.example.com, your CloudFront distribution * must include acme.example.com as one of the alternate domain * names. For more information, see Using Alternate Domain Names (CNAMEs) in the Amazon CloudFront * Developer Guide.
              • *
              • An ELB load balancer: Specify the DNS name associated with the * load balancer. You can get the DNS name by using the AWS Management * Console, the ELB API, or the AWS CLI. Use the same method to get values * for HostedZoneId and DNSName. If you get one * value from the console and the other value from the API or the CLI, * creating the resource record set will fail.
              • *
              • An Elastic Beanstalk environment: Specify the CNAME attribute * for the environment. (The environment must have a regionalized domain * name.)
              • *
              • An Amazon S3 bucket that is configured as a static website: * Specify the domain name of the Amazon S3 website endpoint in which you * created the bucket; for example, * s3-website-us-east-1.amazonaws.com. For more information * about valid values, see the table Amazon Simple Storage Service (S3) Website Endpoints in the * Amazon Web Services General Reference. For more information about * using Amazon S3 buckets for websites, see Hosting a Static Website on Amazon S3 in the Amazon Simple * Storage Service Developer Guide.
              • *
              • Another Amazon Route 53 resource record set: Specify the value * of the Name element for a resource record set in the current * hosted zone.
              • *
              * * @return Alias resource record sets only: The external DNS name * associated with the AWS Resource. The value that you specify * depends on where you want to route queries:

              *
                *
              • A CloudFront distribution: Specify the domain name * that CloudFront assigned when you created your distribution. Your * CloudFront distribution must include an alternate domain name * that matches the name of the resource record set. For example, if * the name of the resource record set is * acme.example.com, your CloudFront distribution must * include acme.example.com as one of the alternate * domain names. For more information, see Using Alternate Domain Names (CNAMEs) in the Amazon * CloudFront Developer Guide.
              • *
              • An ELB load balancer: Specify the DNS name associated * with the load balancer. You can get the DNS name by using the AWS * Management Console, the ELB API, or the AWS CLI. Use the same * method to get values for HostedZoneId and * DNSName. If you get one value from the console and * the other value from the API or the CLI, creating the resource * record set will fail.
              • *
              • An Elastic Beanstalk environment: Specify the CNAME * attribute for the environment. (The environment must have a * regionalized domain name.)
              • *
              • An Amazon S3 bucket that is configured as a static * website: Specify the domain name of the Amazon S3 website * endpoint in which you created the bucket; for example, * s3-website-us-east-1.amazonaws.com. For more * information about valid values, see the table Amazon Simple Storage Service (S3) Website Endpoints in the * Amazon Web Services General Reference. For more * information about using Amazon S3 buckets for websites, see Hosting a Static Website on Amazon S3 in the Amazon * Simple Storage Service Developer Guide.
              • *
              • Another Amazon Route 53 resource record set: Specify * the value of the Name element for a resource record * set in the current hosted zone. */ public String getDNSName() { return this.dNSName; } /** *

                * Alias resource record sets only: The external DNS name associated * with the AWS Resource. The value that you specify depends on where you * want to route queries: *

                *
                  *
                • A CloudFront distribution: Specify the domain name that * CloudFront assigned when you created your distribution. Your CloudFront * distribution must include an alternate domain name that matches the name * of the resource record set. For example, if the name of the resource * record set is acme.example.com, your CloudFront distribution * must include acme.example.com as one of the alternate domain * names. For more information, see Using Alternate Domain Names (CNAMEs) in the Amazon CloudFront * Developer Guide.
                • *
                • An ELB load balancer: Specify the DNS name associated with the * load balancer. You can get the DNS name by using the AWS Management * Console, the ELB API, or the AWS CLI. Use the same method to get values * for HostedZoneId and DNSName. If you get one * value from the console and the other value from the API or the CLI, * creating the resource record set will fail.
                • *
                • An Elastic Beanstalk environment: Specify the CNAME attribute * for the environment. (The environment must have a regionalized domain * name.)
                • *
                • An Amazon S3 bucket that is configured as a static website: * Specify the domain name of the Amazon S3 website endpoint in which you * created the bucket; for example, * s3-website-us-east-1.amazonaws.com. For more information * about valid values, see the table Amazon Simple Storage Service (S3) Website Endpoints in the * Amazon Web Services General Reference. For more information about * using Amazon S3 buckets for websites, see Hosting a Static Website on Amazon S3 in the Amazon Simple * Storage Service Developer Guide.
                • *
                • Another Amazon Route 53 resource record set: Specify the value * of the Name element for a resource record set in the current * hosted zone.
                • *
                * * @param dNSName * Alias resource record sets only: The external DNS name * associated with the AWS Resource. The value that you specify * depends on where you want to route queries:

                *
                  *
                • A CloudFront distribution: Specify the domain name that * CloudFront assigned when you created your distribution. Your * CloudFront distribution must include an alternate domain name that * matches the name of the resource record set. For example, if the * name of the resource record set is acme.example.com, * your CloudFront distribution must include * acme.example.com as one of the alternate domain * names. For more information, see Using Alternate Domain Names (CNAMEs) in the Amazon * CloudFront Developer Guide.
                • *
                • An ELB load balancer: Specify the DNS name associated * with the load balancer. You can get the DNS name by using the AWS * Management Console, the ELB API, or the AWS CLI. Use the same * method to get values for HostedZoneId and * DNSName. If you get one value from the console and * the other value from the API or the CLI, creating the resource * record set will fail.
                • *
                • An Elastic Beanstalk environment: Specify the CNAME * attribute for the environment. (The environment must have a * regionalized domain name.)
                • *
                • An Amazon S3 bucket that is configured as a static * website: Specify the domain name of the Amazon S3 website * endpoint in which you created the bucket; for example, * s3-website-us-east-1.amazonaws.com. For more * information about valid values, see the table Amazon Simple Storage Service (S3) Website Endpoints in the * Amazon Web Services General Reference. For more information * about using Amazon S3 buckets for websites, see Hosting a Static Website on Amazon S3 in the Amazon Simple * Storage Service Developer Guide.
                • *
                • Another Amazon Route 53 resource record set: Specify * the value of the Name element for a resource record * set in the current hosted zone. * @return Returns a reference to this object so that method calls can be * chained together. */ public AliasTarget withDNSName(String dNSName) { setDNSName(dNSName); return this; } /** *

                  * Alias resource record sets only: If you set the value of * EvaluateTargetHealth to true for the resource * record set or sets in an alias, weighted alias, latency alias, or * failover alias resource record set, and if you specify a value for * HealthCheckId for every resource record set that is * referenced by these alias resource record sets, the alias resource record * sets inherit the health of the referenced resource record sets. *

                  *

                  * In this configuration, when Amazon Route 53 receives a DNS query for an * alias resource record set: *

                  *
                    *
                  1. Amazon Route 53 looks at the resource record sets that are referenced * by the alias resource record sets to determine which health checks * they're using.
                  2. *
                  3. Amazon Route 53 checks the current status of each health check. * (Amazon Route 53 periodically checks the health of the endpoint that is * specified in a health check; it doesn't perform the health check when the * DNS query arrives.)
                  4. *
                  5. Based on the status of the health checks, Amazon Route 53 determines * which resource record sets are healthy. Unhealthy resource record sets * are immediately removed from consideration. In addition, if all of the * resource record sets that are referenced by an alias resource record set * are unhealthy, that alias resource record set also is immediately removed * from consideration.
                  6. *
                  7. Based on the configuration of the alias resource record sets * (weighted alias or latency alias, for example) and the configuration of * the resource record sets that they reference, Amazon Route 53 chooses a * resource record set from the healthy resource record sets, and responds * to the query.
                  8. *
                  *

                  * Note the following: *

                  *
                    *
                  • You cannot set EvaluateTargetHealth to true when the * alias target is a CloudFront distribution.
                  • *
                  • If the AWS resource that you specify in AliasTarget is a * resource record set or a group of resource record sets (for example, a * group of weighted resource record sets), but it is not another alias * resource record set, we recommend that you associate a health check with * all of the resource record sets in the alias target.
                  • *
                  • If you specify an ELB load balancer in AliasTarget, * Elastic Load Balancing routes queries only to the healthy Amazon EC2 * instances that are registered with the load balancer. If no Amazon EC2 * instances are healthy or if the load balancer itself is unhealthy, and if * EvaluateTargetHealth is true for the * corresponding alias resource record set, Amazon Route 53 routes queries * to other resources.
                  • *
                  • When you create a load balancer, you configure settings for Elastic * Load Balancing health checks; they're not Amazon Route 53 health checks, * but they perform a similar function. Do not create Amazon Route 53 health * checks for the Amazon EC2 instances that you register with an ELB load * balancer. For more information, see How Health Checks Work in More Complex Amazon Route 53 * Configurations in the Amazon Route 53 Developer Guide.
                  • *
                  *

                  * We recommend that you set EvaluateTargetHealth to * true only when you have enough idle capacity to handle the * failure of one or more endpoints. *

                  *

                  * For more information and examples, see Amazon Route 53 Health Checks and DNS Failover in the Amazon * Route 53 Developer Guide. *

                  * * @param evaluateTargetHealth * Alias resource record sets only: If you set the value of * EvaluateTargetHealth to true for the * resource record set or sets in an alias, weighted alias, latency * alias, or failover alias resource record set, and if you specify a * value for HealthCheckId for every resource record set * that is referenced by these alias resource record sets, the alias * resource record sets inherit the health of the referenced resource * record sets.

                  *

                  * In this configuration, when Amazon Route 53 receives a DNS query * for an alias resource record set: *

                  *
                    *
                  1. Amazon Route 53 looks at the resource record sets that are * referenced by the alias resource record sets to determine which * health checks they're using.
                  2. *
                  3. Amazon Route 53 checks the current status of each health * check. (Amazon Route 53 periodically checks the health of the * endpoint that is specified in a health check; it doesn't perform * the health check when the DNS query arrives.)
                  4. *
                  5. Based on the status of the health checks, Amazon Route 53 * determines which resource record sets are healthy. Unhealthy * resource record sets are immediately removed from consideration. * In addition, if all of the resource record sets that are * referenced by an alias resource record set are unhealthy, that * alias resource record set also is immediately removed from * consideration.
                  6. *
                  7. Based on the configuration of the alias resource record sets * (weighted alias or latency alias, for example) and the * configuration of the resource record sets that they reference, * Amazon Route 53 chooses a resource record set from the healthy * resource record sets, and responds to the query.
                  8. *
                  *

                  * Note the following: *

                  *
                    *
                  • You cannot set EvaluateTargetHealth to true when * the alias target is a CloudFront distribution.
                  • *
                  • If the AWS resource that you specify in * AliasTarget is a resource record set or a group of * resource record sets (for example, a group of weighted resource * record sets), but it is not another alias resource record set, we * recommend that you associate a health check with all of the * resource record sets in the alias target.
                  • *
                  • If you specify an ELB load balancer in * AliasTarget, Elastic Load Balancing routes queries * only to the healthy Amazon EC2 instances that are registered with * the load balancer. If no Amazon EC2 instances are healthy or if * the load balancer itself is unhealthy, and if * EvaluateTargetHealth is true for the * corresponding alias resource record set, Amazon Route 53 routes * queries to other resources.
                  • *
                  • When you create a load balancer, you configure settings for * Elastic Load Balancing health checks; they're not Amazon Route 53 * health checks, but they perform a similar function. Do not create * Amazon Route 53 health checks for the Amazon EC2 instances that * you register with an ELB load balancer. For more information, see * How Health Checks Work in More Complex Amazon Route 53 * Configurations in the Amazon Route 53 Developer Guide.
                  • *
                  *

                  * We recommend that you set EvaluateTargetHealth to * true only when you have enough idle capacity to * handle the failure of one or more endpoints. *

                  *

                  * For more information and examples, see Amazon Route 53 Health Checks and DNS Failover in the * Amazon Route 53 Developer Guide */ public void setEvaluateTargetHealth(Boolean evaluateTargetHealth) { this.evaluateTargetHealth = evaluateTargetHealth; } /** *

                  * Alias resource record sets only: If you set the value of * EvaluateTargetHealth to true for the resource * record set or sets in an alias, weighted alias, latency alias, or * failover alias resource record set, and if you specify a value for * HealthCheckId for every resource record set that is * referenced by these alias resource record sets, the alias resource record * sets inherit the health of the referenced resource record sets. *

                  *

                  * In this configuration, when Amazon Route 53 receives a DNS query for an * alias resource record set: *

                  *
                    *
                  1. Amazon Route 53 looks at the resource record sets that are referenced * by the alias resource record sets to determine which health checks * they're using.
                  2. *
                  3. Amazon Route 53 checks the current status of each health check. * (Amazon Route 53 periodically checks the health of the endpoint that is * specified in a health check; it doesn't perform the health check when the * DNS query arrives.)
                  4. *
                  5. Based on the status of the health checks, Amazon Route 53 determines * which resource record sets are healthy. Unhealthy resource record sets * are immediately removed from consideration. In addition, if all of the * resource record sets that are referenced by an alias resource record set * are unhealthy, that alias resource record set also is immediately removed * from consideration.
                  6. *
                  7. Based on the configuration of the alias resource record sets * (weighted alias or latency alias, for example) and the configuration of * the resource record sets that they reference, Amazon Route 53 chooses a * resource record set from the healthy resource record sets, and responds * to the query.
                  8. *
                  *

                  * Note the following: *

                  *
                    *
                  • You cannot set EvaluateTargetHealth to true when the * alias target is a CloudFront distribution.
                  • *
                  • If the AWS resource that you specify in AliasTarget is a * resource record set or a group of resource record sets (for example, a * group of weighted resource record sets), but it is not another alias * resource record set, we recommend that you associate a health check with * all of the resource record sets in the alias target.
                  • *
                  • If you specify an ELB load balancer in AliasTarget, * Elastic Load Balancing routes queries only to the healthy Amazon EC2 * instances that are registered with the load balancer. If no Amazon EC2 * instances are healthy or if the load balancer itself is unhealthy, and if * EvaluateTargetHealth is true for the * corresponding alias resource record set, Amazon Route 53 routes queries * to other resources.
                  • *
                  • When you create a load balancer, you configure settings for Elastic * Load Balancing health checks; they're not Amazon Route 53 health checks, * but they perform a similar function. Do not create Amazon Route 53 health * checks for the Amazon EC2 instances that you register with an ELB load * balancer. For more information, see How Health Checks Work in More Complex Amazon Route 53 * Configurations in the Amazon Route 53 Developer Guide.
                  • *
                  *

                  * We recommend that you set EvaluateTargetHealth to * true only when you have enough idle capacity to handle the * failure of one or more endpoints. *

                  *

                  * For more information and examples, see Amazon Route 53 Health Checks and DNS Failover in the Amazon * Route 53 Developer Guide. *

                  * * @return Alias resource record sets only:
                  If you set the value of * EvaluateTargetHealth to true for the * resource record set or sets in an alias, weighted alias, latency * alias, or failover alias resource record set, and if you specify * a value for HealthCheckId for every resource record * set that is referenced by these alias resource record sets, the * alias resource record sets inherit the health of the referenced * resource record sets.

                  *

                  * In this configuration, when Amazon Route 53 receives a DNS query * for an alias resource record set: *

                  *
                    *
                  1. Amazon Route 53 looks at the resource record sets that are * referenced by the alias resource record sets to determine which * health checks they're using.
                  2. *
                  3. Amazon Route 53 checks the current status of each health * check. (Amazon Route 53 periodically checks the health of the * endpoint that is specified in a health check; it doesn't perform * the health check when the DNS query arrives.)
                  4. *
                  5. Based on the status of the health checks, Amazon Route 53 * determines which resource record sets are healthy. Unhealthy * resource record sets are immediately removed from consideration. * In addition, if all of the resource record sets that are * referenced by an alias resource record set are unhealthy, that * alias resource record set also is immediately removed from * consideration.
                  6. *
                  7. Based on the configuration of the alias resource record sets * (weighted alias or latency alias, for example) and the * configuration of the resource record sets that they reference, * Amazon Route 53 chooses a resource record set from the healthy * resource record sets, and responds to the query.
                  8. *
                  *

                  * Note the following: *

                  *
                    *
                  • You cannot set EvaluateTargetHealth to true when * the alias target is a CloudFront distribution.
                  • *
                  • If the AWS resource that you specify in * AliasTarget is a resource record set or a group of * resource record sets (for example, a group of weighted resource * record sets), but it is not another alias resource record set, we * recommend that you associate a health check with all of the * resource record sets in the alias target.
                  • *
                  • If you specify an ELB load balancer in * AliasTarget, Elastic Load Balancing routes queries * only to the healthy Amazon EC2 instances that are registered with * the load balancer. If no Amazon EC2 instances are healthy or if * the load balancer itself is unhealthy, and if * EvaluateTargetHealth is true for the * corresponding alias resource record set, Amazon Route 53 routes * queries to other resources.
                  • *
                  • When you create a load balancer, you configure settings for * Elastic Load Balancing health checks; they're not Amazon Route 53 * health checks, but they perform a similar function. Do not create * Amazon Route 53 health checks for the Amazon EC2 instances that * you register with an ELB load balancer. For more information, see * How Health Checks Work in More Complex Amazon Route 53 * Configurations in the Amazon Route 53 Developer Guide. *
                  • *
                  *

                  * We recommend that you set EvaluateTargetHealth to * true only when you have enough idle capacity to * handle the failure of one or more endpoints. *

                  *

                  * For more information and examples, see Amazon Route 53 Health Checks and DNS Failover in the * Amazon Route 53 Developer Guide */ public Boolean getEvaluateTargetHealth() { return this.evaluateTargetHealth; } /** *

                  * Alias resource record sets only: If you set the value of * EvaluateTargetHealth to true for the resource * record set or sets in an alias, weighted alias, latency alias, or * failover alias resource record set, and if you specify a value for * HealthCheckId for every resource record set that is * referenced by these alias resource record sets, the alias resource record * sets inherit the health of the referenced resource record sets. *

                  *

                  * In this configuration, when Amazon Route 53 receives a DNS query for an * alias resource record set: *

                  *
                    *
                  1. Amazon Route 53 looks at the resource record sets that are referenced * by the alias resource record sets to determine which health checks * they're using.
                  2. *
                  3. Amazon Route 53 checks the current status of each health check. * (Amazon Route 53 periodically checks the health of the endpoint that is * specified in a health check; it doesn't perform the health check when the * DNS query arrives.)
                  4. *
                  5. Based on the status of the health checks, Amazon Route 53 determines * which resource record sets are healthy. Unhealthy resource record sets * are immediately removed from consideration. In addition, if all of the * resource record sets that are referenced by an alias resource record set * are unhealthy, that alias resource record set also is immediately removed * from consideration.
                  6. *
                  7. Based on the configuration of the alias resource record sets * (weighted alias or latency alias, for example) and the configuration of * the resource record sets that they reference, Amazon Route 53 chooses a * resource record set from the healthy resource record sets, and responds * to the query.
                  8. *
                  *

                  * Note the following: *

                  *
                    *
                  • You cannot set EvaluateTargetHealth to true when the * alias target is a CloudFront distribution.
                  • *
                  • If the AWS resource that you specify in AliasTarget is a * resource record set or a group of resource record sets (for example, a * group of weighted resource record sets), but it is not another alias * resource record set, we recommend that you associate a health check with * all of the resource record sets in the alias target.
                  • *
                  • If you specify an ELB load balancer in AliasTarget, * Elastic Load Balancing routes queries only to the healthy Amazon EC2 * instances that are registered with the load balancer. If no Amazon EC2 * instances are healthy or if the load balancer itself is unhealthy, and if * EvaluateTargetHealth is true for the * corresponding alias resource record set, Amazon Route 53 routes queries * to other resources.
                  • *
                  • When you create a load balancer, you configure settings for Elastic * Load Balancing health checks; they're not Amazon Route 53 health checks, * but they perform a similar function. Do not create Amazon Route 53 health * checks for the Amazon EC2 instances that you register with an ELB load * balancer. For more information, see How Health Checks Work in More Complex Amazon Route 53 * Configurations in the Amazon Route 53 Developer Guide.
                  • *
                  *

                  * We recommend that you set EvaluateTargetHealth to * true only when you have enough idle capacity to handle the * failure of one or more endpoints. *

                  *

                  * For more information and examples, see Amazon Route 53 Health Checks and DNS Failover in the Amazon * Route 53 Developer Guide. *

                  * * @param evaluateTargetHealth * Alias resource record sets only:
                  If you set the value of * EvaluateTargetHealth to true for the * resource record set or sets in an alias, weighted alias, latency * alias, or failover alias resource record set, and if you specify a * value for HealthCheckId for every resource record set * that is referenced by these alias resource record sets, the alias * resource record sets inherit the health of the referenced resource * record sets.

                  *

                  * In this configuration, when Amazon Route 53 receives a DNS query * for an alias resource record set: *

                  *
                    *
                  1. Amazon Route 53 looks at the resource record sets that are * referenced by the alias resource record sets to determine which * health checks they're using.
                  2. *
                  3. Amazon Route 53 checks the current status of each health * check. (Amazon Route 53 periodically checks the health of the * endpoint that is specified in a health check; it doesn't perform * the health check when the DNS query arrives.)
                  4. *
                  5. Based on the status of the health checks, Amazon Route 53 * determines which resource record sets are healthy. Unhealthy * resource record sets are immediately removed from consideration. * In addition, if all of the resource record sets that are * referenced by an alias resource record set are unhealthy, that * alias resource record set also is immediately removed from * consideration.
                  6. *
                  7. Based on the configuration of the alias resource record sets * (weighted alias or latency alias, for example) and the * configuration of the resource record sets that they reference, * Amazon Route 53 chooses a resource record set from the healthy * resource record sets, and responds to the query.
                  8. *
                  *

                  * Note the following: *

                  *
                    *
                  • You cannot set EvaluateTargetHealth to true when * the alias target is a CloudFront distribution.
                  • *
                  • If the AWS resource that you specify in * AliasTarget is a resource record set or a group of * resource record sets (for example, a group of weighted resource * record sets), but it is not another alias resource record set, we * recommend that you associate a health check with all of the * resource record sets in the alias target.
                  • *
                  • If you specify an ELB load balancer in * AliasTarget, Elastic Load Balancing routes queries * only to the healthy Amazon EC2 instances that are registered with * the load balancer. If no Amazon EC2 instances are healthy or if * the load balancer itself is unhealthy, and if * EvaluateTargetHealth is true for the * corresponding alias resource record set, Amazon Route 53 routes * queries to other resources.
                  • *
                  • When you create a load balancer, you configure settings for * Elastic Load Balancing health checks; they're not Amazon Route 53 * health checks, but they perform a similar function. Do not create * Amazon Route 53 health checks for the Amazon EC2 instances that * you register with an ELB load balancer. For more information, see * How Health Checks Work in More Complex Amazon Route 53 * Configurations in the Amazon Route 53 Developer Guide.
                  • *
                  *

                  * We recommend that you set EvaluateTargetHealth to * true only when you have enough idle capacity to * handle the failure of one or more endpoints. *

                  *

                  * For more information and examples, see Amazon Route 53 Health Checks and DNS Failover in the * Amazon Route 53 Developer Guide * @return Returns a reference to this object so that method calls can be * chained together. */ public AliasTarget withEvaluateTargetHealth(Boolean evaluateTargetHealth) { setEvaluateTargetHealth(evaluateTargetHealth); return this; } /** *

                  * Alias resource record sets only: If you set the value of * EvaluateTargetHealth to true for the resource * record set or sets in an alias, weighted alias, latency alias, or * failover alias resource record set, and if you specify a value for * HealthCheckId for every resource record set that is * referenced by these alias resource record sets, the alias resource record * sets inherit the health of the referenced resource record sets. *

                  *

                  * In this configuration, when Amazon Route 53 receives a DNS query for an * alias resource record set: *

                  *
                    *
                  1. Amazon Route 53 looks at the resource record sets that are referenced * by the alias resource record sets to determine which health checks * they're using.
                  2. *
                  3. Amazon Route 53 checks the current status of each health check. * (Amazon Route 53 periodically checks the health of the endpoint that is * specified in a health check; it doesn't perform the health check when the * DNS query arrives.)
                  4. *
                  5. Based on the status of the health checks, Amazon Route 53 determines * which resource record sets are healthy. Unhealthy resource record sets * are immediately removed from consideration. In addition, if all of the * resource record sets that are referenced by an alias resource record set * are unhealthy, that alias resource record set also is immediately removed * from consideration.
                  6. *
                  7. Based on the configuration of the alias resource record sets * (weighted alias or latency alias, for example) and the configuration of * the resource record sets that they reference, Amazon Route 53 chooses a * resource record set from the healthy resource record sets, and responds * to the query.
                  8. *
                  *

                  * Note the following: *

                  *
                    *
                  • You cannot set EvaluateTargetHealth to true when the * alias target is a CloudFront distribution.
                  • *
                  • If the AWS resource that you specify in AliasTarget is a * resource record set or a group of resource record sets (for example, a * group of weighted resource record sets), but it is not another alias * resource record set, we recommend that you associate a health check with * all of the resource record sets in the alias target.
                  • *
                  • If you specify an ELB load balancer in AliasTarget, * Elastic Load Balancing routes queries only to the healthy Amazon EC2 * instances that are registered with the load balancer. If no Amazon EC2 * instances are healthy or if the load balancer itself is unhealthy, and if * EvaluateTargetHealth is true for the * corresponding alias resource record set, Amazon Route 53 routes queries * to other resources.
                  • *
                  • When you create a load balancer, you configure settings for Elastic * Load Balancing health checks; they're not Amazon Route 53 health checks, * but they perform a similar function. Do not create Amazon Route 53 health * checks for the Amazon EC2 instances that you register with an ELB load * balancer. For more information, see How Health Checks Work in More Complex Amazon Route 53 * Configurations in the Amazon Route 53 Developer Guide.
                  • *
                  *

                  * We recommend that you set EvaluateTargetHealth to * true only when you have enough idle capacity to handle the * failure of one or more endpoints. *

                  *

                  * For more information and examples, see Amazon Route 53 Health Checks and DNS Failover in the Amazon * Route 53 Developer Guide. *

                  * * @return Alias resource record sets only:
                  If you set the value of * EvaluateTargetHealth to true for the * resource record set or sets in an alias, weighted alias, latency * alias, or failover alias resource record set, and if you specify * a value for HealthCheckId for every resource record * set that is referenced by these alias resource record sets, the * alias resource record sets inherit the health of the referenced * resource record sets.

                  *

                  * In this configuration, when Amazon Route 53 receives a DNS query * for an alias resource record set: *

                  *
                    *
                  1. Amazon Route 53 looks at the resource record sets that are * referenced by the alias resource record sets to determine which * health checks they're using.
                  2. *
                  3. Amazon Route 53 checks the current status of each health * check. (Amazon Route 53 periodically checks the health of the * endpoint that is specified in a health check; it doesn't perform * the health check when the DNS query arrives.)
                  4. *
                  5. Based on the status of the health checks, Amazon Route 53 * determines which resource record sets are healthy. Unhealthy * resource record sets are immediately removed from consideration. * In addition, if all of the resource record sets that are * referenced by an alias resource record set are unhealthy, that * alias resource record set also is immediately removed from * consideration.
                  6. *
                  7. Based on the configuration of the alias resource record sets * (weighted alias or latency alias, for example) and the * configuration of the resource record sets that they reference, * Amazon Route 53 chooses a resource record set from the healthy * resource record sets, and responds to the query.
                  8. *
                  *

                  * Note the following: *

                  *
                    *
                  • You cannot set EvaluateTargetHealth to true when * the alias target is a CloudFront distribution.
                  • *
                  • If the AWS resource that you specify in * AliasTarget is a resource record set or a group of * resource record sets (for example, a group of weighted resource * record sets), but it is not another alias resource record set, we * recommend that you associate a health check with all of the * resource record sets in the alias target.
                  • *
                  • If you specify an ELB load balancer in * AliasTarget, Elastic Load Balancing routes queries * only to the healthy Amazon EC2 instances that are registered with * the load balancer. If no Amazon EC2 instances are healthy or if * the load balancer itself is unhealthy, and if * EvaluateTargetHealth is true for the * corresponding alias resource record set, Amazon Route 53 routes * queries to other resources.
                  • *
                  • When you create a load balancer, you configure settings for * Elastic Load Balancing health checks; they're not Amazon Route 53 * health checks, but they perform a similar function. Do not create * Amazon Route 53 health checks for the Amazon EC2 instances that * you register with an ELB load balancer. For more information, see * How Health Checks Work in More Complex Amazon Route 53 * Configurations in the Amazon Route 53 Developer Guide. *
                  • *
                  *

                  * We recommend that you set EvaluateTargetHealth to * true only when you have enough idle capacity to * handle the failure of one or more endpoints. *

                  *

                  * For more information and examples, see Amazon Route 53 Health Checks and DNS Failover in the * Amazon Route 53 Developer Guide */ public Boolean isEvaluateTargetHealth() { return this.evaluateTargetHealth; } /** * Returns a string representation of this object; useful for testing and * debugging. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getHostedZoneId() != null) sb.append("HostedZoneId: " + getHostedZoneId() + ","); if (getDNSName() != null) sb.append("DNSName: " + getDNSName() + ","); if (getEvaluateTargetHealth() != null) sb.append("EvaluateTargetHealth: " + getEvaluateTargetHealth()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof AliasTarget == false) return false; AliasTarget other = (AliasTarget) obj; if (other.getHostedZoneId() == null ^ this.getHostedZoneId() == null) return false; if (other.getHostedZoneId() != null && other.getHostedZoneId().equals(this.getHostedZoneId()) == false) return false; if (other.getDNSName() == null ^ this.getDNSName() == null) return false; if (other.getDNSName() != null && other.getDNSName().equals(this.getDNSName()) == false) return false; if (other.getEvaluateTargetHealth() == null ^ this.getEvaluateTargetHealth() == null) return false; if (other.getEvaluateTargetHealth() != null && other.getEvaluateTargetHealth().equals( this.getEvaluateTargetHealth()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getHostedZoneId() == null) ? 0 : getHostedZoneId() .hashCode()); hashCode = prime * hashCode + ((getDNSName() == null) ? 0 : getDNSName().hashCode()); hashCode = prime * hashCode + ((getEvaluateTargetHealth() == null) ? 0 : getEvaluateTargetHealth().hashCode()); return hashCode; } @Override public AliasTarget clone() { try { return (AliasTarget) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException( "Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } }