Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
   /*
    * Copyright 2010-2015 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.elasticache.model;
  

Contains all of the attributes of a specific cache cluster.

  
  public class CacheCluster implements SerializableCloneable {

    
The user-supplied identifier of the cache cluster. This identifier is a unique key that identifies a cache cluster.
  
      private String cacheClusterId;

    
Represents the information required for client programs to connect to a cache node.
  
      private Endpoint configurationEndpoint;

    
The URL of the web page where you can download the latest ElastiCache client library.
  
      private String clientDownloadLandingPage;

    
The name of the compute and memory capacity node type for the cache cluster.

Valid node types are as follows:

  • General purpose:
    • Current generation: cache.t2.micro, cache.t2.small, cache.t2.medium, cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge
    • Previous generation: cache.t1.micro, cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge
  • Compute optimized: cache.c1.xlarge
  • Memory optimized
    • Current generation: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge
    • Previous generation: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

Notes:

  • All t2 instances are created in an Amazon Virtual Private Cloud (VPC).
  • Redis backup/restore is not supported for t2 instances.
  • Redis Append-only files (AOF) functionality is not supported for t1 or t2 instances.

For a complete listing of cache node types and specifications, see Amazon ElastiCache Product Features and Details and Cache Node Type-Specific Parameters for Memcached or Cache Node Type-Specific Parameters for Redis.

  
      private String cacheNodeType;

    
The name of the cache engine (memcached or redis) to be used for this cache cluster.
  
      private String engine;

    
The version of the cache engine version that is used in this cache cluster.
  
      private String engineVersion;

    
The current state of this cache cluster, one of the following values: available, creating, deleted, deleting, incompatible-network, modifying, rebooting cache cluster nodes, restore-failed, or snapshotting.
  
      private String cacheClusterStatus;

    
The number of cache nodes in the cache cluster.

For clusters running Redis, this value must be 1. For clusters running Memcached, this value must be between 1 and 20.

  
     private Integer numCacheNodes;

    
The name of the Availability Zone in which the cache cluster is located or "Multiple" if the cache nodes are located in different Availability Zones.
 
     private String preferredAvailabilityZone;

    
The date and time when the cache cluster was created.
 
     private java.util.Date cacheClusterCreateTime;

    
Specifies the weekly time range during which maintenance on the cache cluster is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute period. Valid values for ddd are:
  • sun
  • mon
  • tue
  • wed
  • thu
  • fri
  • sat

Example: sun:05:00-sun:09:00

 
     private String preferredMaintenanceWindow;

    
A group of settings that will be applied to the cache cluster in the future, or that are currently being applied.
 
     private PendingModifiedValues pendingModifiedValues;

    
Describes a notification topic and its status. Notification topics are used for publishing ElastiCache events to subscribers using Amazon Simple Notification Service (SNS).
 
A list of cache security group elements, composed of name and status sub-elements.
 
The status of the cache parameter group.
 
The name of the cache subnet group associated with the cache cluster.
 
     private String cacheSubnetGroupName;

    
A list of cache nodes that are members of the cache cluster.
 
This parameter is currently disabled.
 
     private Boolean autoMinorVersionUpgrade;

    
A list of VPC Security Groups associated with the cache cluster.
 
The replication group to which this cache cluster belongs. If this field is empty, the cache cluster is not associated with any replication group.
 
     private String replicationGroupId;

    
The number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted.

Important
If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off.

 
     private Integer snapshotRetentionLimit;

    
The daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster.

Example: 05:00-09:00

 
     private String snapshotWindow;

    
The user-supplied identifier of the cache cluster. This identifier is a unique key that identifies a cache cluster.

Returns:
The user-supplied identifier of the cache cluster. This identifier is a unique key that identifies a cache cluster.
 
     public String getCacheClusterId() {
         return ;
     }
    
    
The user-supplied identifier of the cache cluster. This identifier is a unique key that identifies a cache cluster.

Parameters:
cacheClusterId The user-supplied identifier of the cache cluster. This identifier is a unique key that identifies a cache cluster.
 
     public void setCacheClusterId(String cacheClusterId) {
         this. = cacheClusterId;
     }
    
    
The user-supplied identifier of the cache cluster. This identifier is a unique key that identifies a cache cluster.

Returns a reference to this object so that method calls can be chained together.

Parameters:
cacheClusterId The user-supplied identifier of the cache cluster. This identifier is a unique key that identifies a cache cluster.
Returns:
A reference to this updated object so that method calls can be chained together.
 
     public CacheCluster withCacheClusterId(String cacheClusterId) {
         this. = cacheClusterId;
         return this;
     }

    
Represents the information required for client programs to connect to a cache node.

Returns:
Represents the information required for client programs to connect to a cache node.
 
     public Endpoint getConfigurationEndpoint() {
         return ;
     }
    
    
Represents the information required for client programs to connect to a cache node.

Parameters:
configurationEndpoint Represents the information required for client programs to connect to a cache node.
 
     public void setConfigurationEndpoint(Endpoint configurationEndpoint) {
         this. = configurationEndpoint;
     }
    
    
Represents the information required for client programs to connect to a cache node.

Returns a reference to this object so that method calls can be chained together.

Parameters:
configurationEndpoint Represents the information required for client programs to connect to a cache node.
Returns:
A reference to this updated object so that method calls can be chained together.
 
     public CacheCluster withConfigurationEndpoint(Endpoint configurationEndpoint) {
         this. = configurationEndpoint;
         return this;
     }

    
The URL of the web page where you can download the latest ElastiCache client library.

Returns:
The URL of the web page where you can download the latest ElastiCache client library.
 
     public String getClientDownloadLandingPage() {
         return ;
     }
    
    
The URL of the web page where you can download the latest ElastiCache client library.

Parameters:
clientDownloadLandingPage The URL of the web page where you can download the latest ElastiCache client library.
 
     public void setClientDownloadLandingPage(String clientDownloadLandingPage) {
         this. = clientDownloadLandingPage;
     }
    
    
The URL of the web page where you can download the latest ElastiCache client library.

Returns a reference to this object so that method calls can be chained together.

Parameters:
clientDownloadLandingPage The URL of the web page where you can download the latest ElastiCache client library.
Returns:
A reference to this updated object so that method calls can be chained together.
 
     public CacheCluster withClientDownloadLandingPage(String clientDownloadLandingPage) {
         this. = clientDownloadLandingPage;
         return this;
     }

    
The name of the compute and memory capacity node type for the cache cluster.

Valid node types are as follows:

  • General purpose:
    • Current generation: cache.t2.micro, cache.t2.small, cache.t2.medium, cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge
    • Previous generation: cache.t1.micro, cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge
  • Compute optimized: cache.c1.xlarge
  • Memory optimized
    • Current generation: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge
    • Previous generation: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

Notes:

  • All t2 instances are created in an Amazon Virtual Private Cloud (VPC).
  • Redis backup/restore is not supported for t2 instances.
  • Redis Append-only files (AOF) functionality is not supported for t1 or t2 instances.

For a complete listing of cache node types and specifications, see Amazon ElastiCache Product Features and Details and Cache Node Type-Specific Parameters for Memcached or Cache Node Type-Specific Parameters for Redis.

Returns:
The name of the compute and memory capacity node type for the cache cluster.

Valid node types are as follows:

  • General purpose:
    • Current generation: cache.t2.micro, cache.t2.small, cache.t2.medium, cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge
    • Previous generation: cache.t1.micro, cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge
  • Compute optimized: cache.c1.xlarge
  • Memory optimized
    • Current generation: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge
    • Previous generation: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

Notes:

  • All t2 instances are created in an Amazon Virtual Private Cloud (VPC).
  • Redis backup/restore is not supported for t2 instances.
  • Redis Append-only files (AOF) functionality is not supported for t1 or t2 instances.

For a complete listing of cache node types and specifications, see Amazon ElastiCache Product Features and Details and Cache Node Type-Specific Parameters for Memcached or Cache Node Type-Specific Parameters for Redis.

 
     public String getCacheNodeType() {
         return ;
     }
    
    
The name of the compute and memory capacity node type for the cache cluster.

Valid node types are as follows:

  • General purpose:
    • Current generation: cache.t2.micro, cache.t2.small, cache.t2.medium, cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge
    • Previous generation: cache.t1.micro, cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge
  • Compute optimized: cache.c1.xlarge
  • Memory optimized
    • Current generation: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge
    • Previous generation: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

Notes:

  • All t2 instances are created in an Amazon Virtual Private Cloud (VPC).
  • Redis backup/restore is not supported for t2 instances.
  • Redis Append-only files (AOF) functionality is not supported for t1 or t2 instances.

For a complete listing of cache node types and specifications, see Amazon ElastiCache Product Features and Details and Cache Node Type-Specific Parameters for Memcached or Cache Node Type-Specific Parameters for Redis.

Parameters:
cacheNodeType The name of the compute and memory capacity node type for the cache cluster.

Valid node types are as follows:

  • General purpose:
    • Current generation: cache.t2.micro, cache.t2.small, cache.t2.medium, cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge
    • Previous generation: cache.t1.micro, cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge
  • Compute optimized: cache.c1.xlarge
  • Memory optimized
    • Current generation: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge
    • Previous generation: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

Notes:

  • All t2 instances are created in an Amazon Virtual Private Cloud (VPC).
  • Redis backup/restore is not supported for t2 instances.
  • Redis Append-only files (AOF) functionality is not supported for t1 or t2 instances.

For a complete listing of cache node types and specifications, see Amazon ElastiCache Product Features and Details and Cache Node Type-Specific Parameters for Memcached or Cache Node Type-Specific Parameters for Redis.

 
     public void setCacheNodeType(String cacheNodeType) {
         this. = cacheNodeType;
     }
    
    
The name of the compute and memory capacity node type for the cache cluster.

Valid node types are as follows:

  • General purpose:
    • Current generation: cache.t2.micro, cache.t2.small, cache.t2.medium, cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge
    • Previous generation: cache.t1.micro, cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge
  • Compute optimized: cache.c1.xlarge
  • Memory optimized
    • Current generation: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge
    • Previous generation: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

Notes:

  • All t2 instances are created in an Amazon Virtual Private Cloud (VPC).
  • Redis backup/restore is not supported for t2 instances.
  • Redis Append-only files (AOF) functionality is not supported for t1 or t2 instances.

For a complete listing of cache node types and specifications, see Amazon ElastiCache Product Features and Details and Cache Node Type-Specific Parameters for Memcached or Cache Node Type-Specific Parameters for Redis.

Returns a reference to this object so that method calls can be chained together.

Parameters:
cacheNodeType The name of the compute and memory capacity node type for the cache cluster.

Valid node types are as follows:

  • General purpose:
    • Current generation: cache.t2.micro, cache.t2.small, cache.t2.medium, cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge
    • Previous generation: cache.t1.micro, cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge
  • Compute optimized: cache.c1.xlarge
  • Memory optimized
    • Current generation: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge
    • Previous generation: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

Notes:

  • All t2 instances are created in an Amazon Virtual Private Cloud (VPC).
  • Redis backup/restore is not supported for t2 instances.
  • Redis Append-only files (AOF) functionality is not supported for t1 or t2 instances.

For a complete listing of cache node types and specifications, see Amazon ElastiCache Product Features and Details and Cache Node Type-Specific Parameters for Memcached or Cache Node Type-Specific Parameters for Redis.

Returns:
A reference to this updated object so that method calls can be chained together.
 
     public CacheCluster withCacheNodeType(String cacheNodeType) {
         this. = cacheNodeType;
         return this;
     }

    
The name of the cache engine (memcached or redis) to be used for this cache cluster.

Returns:
The name of the cache engine (memcached or redis) to be used for this cache cluster.
 
     public String getEngine() {
         return ;
     }
    
    
The name of the cache engine (memcached or redis) to be used for this cache cluster.

Parameters:
engine The name of the cache engine (memcached or redis) to be used for this cache cluster.
 
     public void setEngine(String engine) {
         this. = engine;
     }
    
    
The name of the cache engine (memcached or redis) to be used for this cache cluster.

Returns a reference to this object so that method calls can be chained together.

Parameters:
engine The name of the cache engine (memcached or redis) to be used for this cache cluster.
Returns:
A reference to this updated object so that method calls can be chained together.
 
     public CacheCluster withEngine(String engine) {
         this. = engine;
         return this;
     }

    
The version of the cache engine version that is used in this cache cluster.

Returns:
The version of the cache engine version that is used in this cache cluster.
 
     public String getEngineVersion() {
         return ;
     }
    
    
The version of the cache engine version that is used in this cache cluster.

Parameters:
engineVersion The version of the cache engine version that is used in this cache cluster.
 
     public void setEngineVersion(String engineVersion) {
         this. = engineVersion;
     }
    
    
The version of the cache engine version that is used in this cache cluster.

Returns a reference to this object so that method calls can be chained together.

Parameters:
engineVersion The version of the cache engine version that is used in this cache cluster.
Returns:
A reference to this updated object so that method calls can be chained together.
 
     public CacheCluster withEngineVersion(String engineVersion) {
         this. = engineVersion;
         return this;
     }

    
The current state of this cache cluster, one of the following values: available, creating, deleted, deleting, incompatible-network, modifying, rebooting cache cluster nodes, restore-failed, or snapshotting.

Returns:
The current state of this cache cluster, one of the following values: available, creating, deleted, deleting, incompatible-network, modifying, rebooting cache cluster nodes, restore-failed, or snapshotting.
 
     public String getCacheClusterStatus() {
         return ;
     }
    
    
The current state of this cache cluster, one of the following values: available, creating, deleted, deleting, incompatible-network, modifying, rebooting cache cluster nodes, restore-failed, or snapshotting.

Parameters:
cacheClusterStatus The current state of this cache cluster, one of the following values: available, creating, deleted, deleting, incompatible-network, modifying, rebooting cache cluster nodes, restore-failed, or snapshotting.
 
     public void setCacheClusterStatus(String cacheClusterStatus) {
         this. = cacheClusterStatus;
     }
    
    
The current state of this cache cluster, one of the following values: available, creating, deleted, deleting, incompatible-network, modifying, rebooting cache cluster nodes, restore-failed, or snapshotting.

Returns a reference to this object so that method calls can be chained together.

Parameters:
cacheClusterStatus The current state of this cache cluster, one of the following values: available, creating, deleted, deleting, incompatible-network, modifying, rebooting cache cluster nodes, restore-failed, or snapshotting.
Returns:
A reference to this updated object so that method calls can be chained together.
 
     public CacheCluster withCacheClusterStatus(String cacheClusterStatus) {
         this. = cacheClusterStatus;
         return this;
     }

    
The number of cache nodes in the cache cluster.

For clusters running Redis, this value must be 1. For clusters running Memcached, this value must be between 1 and 20.

Returns:
The number of cache nodes in the cache cluster.

For clusters running Redis, this value must be 1. For clusters running Memcached, this value must be between 1 and 20.

 
     public Integer getNumCacheNodes() {
         return ;
     }
    
    
The number of cache nodes in the cache cluster.

For clusters running Redis, this value must be 1. For clusters running Memcached, this value must be between 1 and 20.

Parameters:
numCacheNodes The number of cache nodes in the cache cluster.

For clusters running Redis, this value must be 1. For clusters running Memcached, this value must be between 1 and 20.

 
     public void setNumCacheNodes(Integer numCacheNodes) {
         this. = numCacheNodes;
     }
    
    
The number of cache nodes in the cache cluster.

For clusters running Redis, this value must be 1. For clusters running Memcached, this value must be between 1 and 20.

Returns a reference to this object so that method calls can be chained together.

Parameters:
numCacheNodes The number of cache nodes in the cache cluster.

For clusters running Redis, this value must be 1. For clusters running Memcached, this value must be between 1 and 20.

Returns:
A reference to this updated object so that method calls can be chained together.
 
     public CacheCluster withNumCacheNodes(Integer numCacheNodes) {
         this. = numCacheNodes;
         return this;
     }

    
The name of the Availability Zone in which the cache cluster is located or "Multiple" if the cache nodes are located in different Availability Zones.

Returns:
The name of the Availability Zone in which the cache cluster is located or "Multiple" if the cache nodes are located in different Availability Zones.
 
     public String getPreferredAvailabilityZone() {
         return ;
     }
    
    
The name of the Availability Zone in which the cache cluster is located or "Multiple" if the cache nodes are located in different Availability Zones.

Parameters:
preferredAvailabilityZone The name of the Availability Zone in which the cache cluster is located or "Multiple" if the cache nodes are located in different Availability Zones.
 
     public void setPreferredAvailabilityZone(String preferredAvailabilityZone) {
         this. = preferredAvailabilityZone;
     }
    
    
The name of the Availability Zone in which the cache cluster is located or "Multiple" if the cache nodes are located in different Availability Zones.

Returns a reference to this object so that method calls can be chained together.

Parameters:
preferredAvailabilityZone The name of the Availability Zone in which the cache cluster is located or "Multiple" if the cache nodes are located in different Availability Zones.
Returns:
A reference to this updated object so that method calls can be chained together.
 
     public CacheCluster withPreferredAvailabilityZone(String preferredAvailabilityZone) {
         this. = preferredAvailabilityZone;
         return this;
     }

    
The date and time when the cache cluster was created.

Returns:
The date and time when the cache cluster was created.
 
     public java.util.Date getCacheClusterCreateTime() {
         return ;
     }
    
    
The date and time when the cache cluster was created.

Parameters:
cacheClusterCreateTime The date and time when the cache cluster was created.
 
     public void setCacheClusterCreateTime(java.util.Date cacheClusterCreateTime) {
         this. = cacheClusterCreateTime;
     }
    
    
The date and time when the cache cluster was created.

Returns a reference to this object so that method calls can be chained together.

Parameters:
cacheClusterCreateTime The date and time when the cache cluster was created.
Returns:
A reference to this updated object so that method calls can be chained together.
 
     public CacheCluster withCacheClusterCreateTime(java.util.Date cacheClusterCreateTime) {
         this. = cacheClusterCreateTime;
         return this;
     }

    
Specifies the weekly time range during which maintenance on the cache cluster is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute period. Valid values for ddd are:
  • sun
  • mon
  • tue
  • wed
  • thu
  • fri
  • sat

Example: sun:05:00-sun:09:00

Returns:
Specifies the weekly time range during which maintenance on the cache cluster is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute period. Valid values for ddd are:
  • sun
  • mon
  • tue
  • wed
  • thu
  • fri
  • sat

Example: sun:05:00-sun:09:00

 
         return ;
     }
    
    
Specifies the weekly time range during which maintenance on the cache cluster is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute period. Valid values for ddd are:
  • sun
  • mon
  • tue
  • wed
  • thu
  • fri
  • sat

Example: sun:05:00-sun:09:00

Parameters:
preferredMaintenanceWindow Specifies the weekly time range during which maintenance on the cache cluster is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute period. Valid values for ddd are:
  • sun
  • mon
  • tue
  • wed
  • thu
  • fri
  • sat

Example: sun:05:00-sun:09:00

 
     public void setPreferredMaintenanceWindow(String preferredMaintenanceWindow) {
         this. = preferredMaintenanceWindow;
     }
    
    
Specifies the weekly time range during which maintenance on the cache cluster is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute period. Valid values for ddd are:
  • sun
  • mon
  • tue
  • wed
  • thu
  • fri
  • sat

Example: sun:05:00-sun:09:00

Returns a reference to this object so that method calls can be chained together.

Parameters:
preferredMaintenanceWindow Specifies the weekly time range during which maintenance on the cache cluster is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute period. Valid values for ddd are:
  • sun
  • mon
  • tue
  • wed
  • thu
  • fri
  • sat

Example: sun:05:00-sun:09:00

Returns:
A reference to this updated object so that method calls can be chained together.
 
     public CacheCluster withPreferredMaintenanceWindow(String preferredMaintenanceWindow) {
         this. = preferredMaintenanceWindow;
         return this;
     }

    
A group of settings that will be applied to the cache cluster in the future, or that are currently being applied.

Returns:
A group of settings that will be applied to the cache cluster in the future, or that are currently being applied.
 
         return ;
     }
    
    
A group of settings that will be applied to the cache cluster in the future, or that are currently being applied.

Parameters:
pendingModifiedValues A group of settings that will be applied to the cache cluster in the future, or that are currently being applied.
 
     public void setPendingModifiedValues(PendingModifiedValues pendingModifiedValues) {
         this. = pendingModifiedValues;
     }
    
    
A group of settings that will be applied to the cache cluster in the future, or that are currently being applied.

Returns a reference to this object so that method calls can be chained together.

Parameters:
pendingModifiedValues A group of settings that will be applied to the cache cluster in the future, or that are currently being applied.
Returns:
A reference to this updated object so that method calls can be chained together.
 
     public CacheCluster withPendingModifiedValues(PendingModifiedValues pendingModifiedValues) {
         this. = pendingModifiedValues;
         return this;
     }

    
Describes a notification topic and its status. Notification topics are used for publishing ElastiCache events to subscribers using Amazon Simple Notification Service (SNS).

Returns:
Describes a notification topic and its status. Notification topics are used for publishing ElastiCache events to subscribers using Amazon Simple Notification Service (SNS).
 
         return ;
     }
    
    
Describes a notification topic and its status. Notification topics are used for publishing ElastiCache events to subscribers using Amazon Simple Notification Service (SNS).

Parameters:
notificationConfiguration Describes a notification topic and its status. Notification topics are used for publishing ElastiCache events to subscribers using Amazon Simple Notification Service (SNS).
 
     public void setNotificationConfiguration(NotificationConfiguration notificationConfiguration) {
         this. = notificationConfiguration;
     }
    
    
Describes a notification topic and its status. Notification topics are used for publishing ElastiCache events to subscribers using Amazon Simple Notification Service (SNS).

Returns a reference to this object so that method calls can be chained together.

Parameters:
notificationConfiguration Describes a notification topic and its status. Notification topics are used for publishing ElastiCache events to subscribers using Amazon Simple Notification Service (SNS).
Returns:
A reference to this updated object so that method calls can be chained together.
 
     public CacheCluster withNotificationConfiguration(NotificationConfiguration notificationConfiguration) {
         this. = notificationConfiguration;
         return this;
     }

    
A list of cache security group elements, composed of name and status sub-elements.

Returns:
A list of cache security group elements, composed of name and status sub-elements.
 
         if ( == null) {
               .setAutoConstruct(true);
         }
         return ;
     }
    
    
A list of cache security group elements, composed of name and status sub-elements.

Parameters:
cacheSecurityGroups A list of cache security group elements, composed of name and status sub-elements.
 
     public void setCacheSecurityGroups(java.util.Collection<CacheSecurityGroupMembershipcacheSecurityGroups) {
         if (cacheSecurityGroups == null) {
             this. = null;
             return;
         }
         cacheSecurityGroupsCopy.addAll(cacheSecurityGroups);
         this. = cacheSecurityGroupsCopy;
     }
    
    
A list of cache security group elements, composed of name and status sub-elements.

NOTE: This method appends the values to the existing list (if any). Use setCacheSecurityGroups(java.util.Collection) or withCacheSecurityGroups(java.util.Collection) if you want to override the existing values.

Returns a reference to this object so that method calls can be chained together.

Parameters:
cacheSecurityGroups A list of cache security group elements, composed of name and status sub-elements.
Returns:
A reference to this updated object so that method calls can be chained together.
 
     public CacheCluster withCacheSecurityGroups(CacheSecurityGroupMembership... cacheSecurityGroups) {
         if (getCacheSecurityGroups() == nullsetCacheSecurityGroups(new java.util.ArrayList<CacheSecurityGroupMembership>(cacheSecurityGroups.length));
         for (CacheSecurityGroupMembership value : cacheSecurityGroups) {
             getCacheSecurityGroups().add(value);
         }
         return this;
     }
    
    
A list of cache security group elements, composed of name and status sub-elements.

Returns a reference to this object so that method calls can be chained together.

Parameters:
cacheSecurityGroups A list of cache security group elements, composed of name and status sub-elements.
Returns:
A reference to this updated object so that method calls can be chained together.
 
         if (cacheSecurityGroups == null) {
             this. = null;
         } else {
             cacheSecurityGroupsCopy.addAll(cacheSecurityGroups);
             this. = cacheSecurityGroupsCopy;
         }
 
         return this;
     }

    
The status of the cache parameter group.

Returns:
The status of the cache parameter group.
        return ;
    }
    
    
The status of the cache parameter group.

Parameters:
cacheParameterGroup The status of the cache parameter group.
    public void setCacheParameterGroup(CacheParameterGroupStatus cacheParameterGroup) {
        this. = cacheParameterGroup;
    }
    
    
The status of the cache parameter group.

Returns a reference to this object so that method calls can be chained together.

Parameters:
cacheParameterGroup The status of the cache parameter group.
Returns:
A reference to this updated object so that method calls can be chained together.
    public CacheCluster withCacheParameterGroup(CacheParameterGroupStatus cacheParameterGroup) {
        this. = cacheParameterGroup;
        return this;
    }

    
The name of the cache subnet group associated with the cache cluster.

Returns:
The name of the cache subnet group associated with the cache cluster.
    public String getCacheSubnetGroupName() {
        return ;
    }
    
    
The name of the cache subnet group associated with the cache cluster.

Parameters:
cacheSubnetGroupName The name of the cache subnet group associated with the cache cluster.
    public void setCacheSubnetGroupName(String cacheSubnetGroupName) {
        this. = cacheSubnetGroupName;
    }
    
    
The name of the cache subnet group associated with the cache cluster.

Returns a reference to this object so that method calls can be chained together.

Parameters:
cacheSubnetGroupName The name of the cache subnet group associated with the cache cluster.
Returns:
A reference to this updated object so that method calls can be chained together.
    public CacheCluster withCacheSubnetGroupName(String cacheSubnetGroupName) {
        this. = cacheSubnetGroupName;
        return this;
    }

    
A list of cache nodes that are members of the cache cluster.

Returns:
A list of cache nodes that are members of the cache cluster.
    public java.util.List<CacheNodegetCacheNodes() {
        if ( == null) {
               = new com.amazonaws.internal.ListWithAutoConstructFlag<CacheNode>();
              .setAutoConstruct(true);
        }
        return ;
    }
    
    
A list of cache nodes that are members of the cache cluster.

Parameters:
cacheNodes A list of cache nodes that are members of the cache cluster.
    public void setCacheNodes(java.util.Collection<CacheNodecacheNodes) {
        if (cacheNodes == null) {
            this. = null;
            return;
        }
        cacheNodesCopy.addAll(cacheNodes);
        this. = cacheNodesCopy;
    }
    
    
A list of cache nodes that are members of the cache cluster.

NOTE: This method appends the values to the existing list (if any). Use setCacheNodes(java.util.Collection) or withCacheNodes(java.util.Collection) if you want to override the existing values.

Returns a reference to this object so that method calls can be chained together.

Parameters:
cacheNodes A list of cache nodes that are members of the cache cluster.
Returns:
A reference to this updated object so that method calls can be chained together.
    public CacheCluster withCacheNodes(CacheNode... cacheNodes) {
        if (getCacheNodes() == nullsetCacheNodes(new java.util.ArrayList<CacheNode>(cacheNodes.length));
        for (CacheNode value : cacheNodes) {
            getCacheNodes().add(value);
        }
        return this;
    }
    
    
A list of cache nodes that are members of the cache cluster.

Returns a reference to this object so that method calls can be chained together.

Parameters:
cacheNodes A list of cache nodes that are members of the cache cluster.
Returns:
A reference to this updated object so that method calls can be chained together.
    public CacheCluster withCacheNodes(java.util.Collection<CacheNodecacheNodes) {
        if (cacheNodes == null) {
            this. = null;
        } else {
            cacheNodesCopy.addAll(cacheNodes);
            this. = cacheNodesCopy;
        }
        return this;
    }

    
This parameter is currently disabled.

Returns:
This parameter is currently disabled.
        return ;
    }
    
    
This parameter is currently disabled.

Parameters:
autoMinorVersionUpgrade This parameter is currently disabled.
    public void setAutoMinorVersionUpgrade(Boolean autoMinorVersionUpgrade) {
        this. = autoMinorVersionUpgrade;
    }
    
    
This parameter is currently disabled.

Returns a reference to this object so that method calls can be chained together.

Parameters:
autoMinorVersionUpgrade This parameter is currently disabled.
Returns:
A reference to this updated object so that method calls can be chained together.
    public CacheCluster withAutoMinorVersionUpgrade(Boolean autoMinorVersionUpgrade) {
        this. = autoMinorVersionUpgrade;
        return this;
    }

    
This parameter is currently disabled.

Returns:
This parameter is currently disabled.
        return ;
    }

    
A list of VPC Security Groups associated with the cache cluster.

Returns:
A list of VPC Security Groups associated with the cache cluster.
        if ( == null) {
              .setAutoConstruct(true);
        }
        return ;
    }
    
    
A list of VPC Security Groups associated with the cache cluster.

Parameters:
securityGroups A list of VPC Security Groups associated with the cache cluster.
    public void setSecurityGroups(java.util.Collection<SecurityGroupMembershipsecurityGroups) {
        if (securityGroups == null) {
            this. = null;
            return;
        }
        securityGroupsCopy.addAll(securityGroups);
        this. = securityGroupsCopy;
    }
    
    
A list of VPC Security Groups associated with the cache cluster.

NOTE: This method appends the values to the existing list (if any). Use setSecurityGroups(java.util.Collection) or withSecurityGroups(java.util.Collection) if you want to override the existing values.

Returns a reference to this object so that method calls can be chained together.

Parameters:
securityGroups A list of VPC Security Groups associated with the cache cluster.
Returns:
A reference to this updated object so that method calls can be chained together.
    public CacheCluster withSecurityGroups(SecurityGroupMembership... securityGroups) {
        if (getSecurityGroups() == nullsetSecurityGroups(new java.util.ArrayList<SecurityGroupMembership>(securityGroups.length));
        for (SecurityGroupMembership value : securityGroups) {
            getSecurityGroups().add(value);
        }
        return this;
    }
    
    
A list of VPC Security Groups associated with the cache cluster.

Returns a reference to this object so that method calls can be chained together.

Parameters:
securityGroups A list of VPC Security Groups associated with the cache cluster.
Returns:
A reference to this updated object so that method calls can be chained together.
        if (securityGroups == null) {
            this. = null;
        } else {
            securityGroupsCopy.addAll(securityGroups);
            this. = securityGroupsCopy;
        }
        return this;
    }

    
The replication group to which this cache cluster belongs. If this field is empty, the cache cluster is not associated with any replication group.

Returns:
The replication group to which this cache cluster belongs. If this field is empty, the cache cluster is not associated with any replication group.
    public String getReplicationGroupId() {
        return ;
    }
    
    
The replication group to which this cache cluster belongs. If this field is empty, the cache cluster is not associated with any replication group.

Parameters:
replicationGroupId The replication group to which this cache cluster belongs. If this field is empty, the cache cluster is not associated with any replication group.
    public void setReplicationGroupId(String replicationGroupId) {
        this. = replicationGroupId;
    }
    
    
The replication group to which this cache cluster belongs. If this field is empty, the cache cluster is not associated with any replication group.

Returns a reference to this object so that method calls can be chained together.

Parameters:
replicationGroupId The replication group to which this cache cluster belongs. If this field is empty, the cache cluster is not associated with any replication group.
Returns:
A reference to this updated object so that method calls can be chained together.
    public CacheCluster withReplicationGroupId(String replicationGroupId) {
        this. = replicationGroupId;
        return this;
    }

    
The number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted.

Important
If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off.

Returns:
The number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted.

Important
If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off.

        return ;
    }
    
    
The number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted.

Important
If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off.

Parameters:
snapshotRetentionLimit The number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted.

Important
If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off.

    public void setSnapshotRetentionLimit(Integer snapshotRetentionLimit) {
        this. = snapshotRetentionLimit;
    }
    
    
The number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted.

Important
If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off.

Returns a reference to this object so that method calls can be chained together.

Parameters:
snapshotRetentionLimit The number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted.

Important
If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off.

Returns:
A reference to this updated object so that method calls can be chained together.
    public CacheCluster withSnapshotRetentionLimit(Integer snapshotRetentionLimit) {
        this. = snapshotRetentionLimit;
        return this;
    }

    
The daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster.

Example: 05:00-09:00

Returns:
The daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster.

Example: 05:00-09:00

    public String getSnapshotWindow() {
        return ;
    }
    
    
The daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster.

Example: 05:00-09:00

Parameters:
snapshotWindow The daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster.

Example: 05:00-09:00

    public void setSnapshotWindow(String snapshotWindow) {
        this. = snapshotWindow;
    }
    
    
The daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster.

Example: 05:00-09:00

Returns a reference to this object so that method calls can be chained together.

Parameters:
snapshotWindow The daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster.

Example: 05:00-09:00

Returns:
A reference to this updated object so that method calls can be chained together.
    public CacheCluster withSnapshotWindow(String snapshotWindow) {
        this. = snapshotWindow;
        return this;
    }

    
Returns a string representation of this object; useful for testing and debugging.

Returns:
A string representation of this object.
See also:
java.lang.Object.toString()
    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append("{");
        if (getCacheClusterId() != nullsb.append("CacheClusterId: " + getCacheClusterId() + ",");
        if (getConfigurationEndpoint() != nullsb.append("ConfigurationEndpoint: " + getConfigurationEndpoint() + ",");
        if (getClientDownloadLandingPage() != nullsb.append("ClientDownloadLandingPage: " + getClientDownloadLandingPage() + ",");
        if (getCacheNodeType() != nullsb.append("CacheNodeType: " + getCacheNodeType() + ",");
        if (getEngine() != nullsb.append("Engine: " + getEngine() + ",");
        if (getEngineVersion() != nullsb.append("EngineVersion: " + getEngineVersion() + ",");
        if (getCacheClusterStatus() != nullsb.append("CacheClusterStatus: " + getCacheClusterStatus() + ",");
        if (getNumCacheNodes() != nullsb.append("NumCacheNodes: " + getNumCacheNodes() + ",");
        if (getPreferredAvailabilityZone() != nullsb.append("PreferredAvailabilityZone: " + getPreferredAvailabilityZone() + ",");
        if (getCacheClusterCreateTime() != nullsb.append("CacheClusterCreateTime: " + getCacheClusterCreateTime() + ",");
        if (getPreferredMaintenanceWindow() != nullsb.append("PreferredMaintenanceWindow: " + getPreferredMaintenanceWindow() + ",");
        if (getPendingModifiedValues() != nullsb.append("PendingModifiedValues: " + getPendingModifiedValues() + ",");
        if (getNotificationConfiguration() != nullsb.append("NotificationConfiguration: " + getNotificationConfiguration() + ",");
        if (getCacheSecurityGroups() != nullsb.append("CacheSecurityGroups: " + getCacheSecurityGroups() + ",");
        if (getCacheParameterGroup() != nullsb.append("CacheParameterGroup: " + getCacheParameterGroup() + ",");
        if (getCacheSubnetGroupName() != nullsb.append("CacheSubnetGroupName: " + getCacheSubnetGroupName() + ",");
        if (getCacheNodes() != nullsb.append("CacheNodes: " + getCacheNodes() + ",");
        if (isAutoMinorVersionUpgrade() != nullsb.append("AutoMinorVersionUpgrade: " + isAutoMinorVersionUpgrade() + ",");
        if (getSecurityGroups() != nullsb.append("SecurityGroups: " + getSecurityGroups() + ",");
        if (getReplicationGroupId() != nullsb.append("ReplicationGroupId: " + getReplicationGroupId() + ",");
        if (getSnapshotRetentionLimit() != nullsb.append("SnapshotRetentionLimit: " + getSnapshotRetentionLimit() + ",");
        if (getSnapshotWindow() != nullsb.append("SnapshotWindow: " + getSnapshotWindow() );
        sb.append("}");
        return sb.toString();
    }
    
    @Override
    public int hashCode() {
        final int prime = 31;
        int hashCode = 1;
        
        hashCode = prime * hashCode + ((getCacheClusterId() == null) ? 0 : getCacheClusterId().hashCode()); 
        hashCode = prime * hashCode + ((getConfigurationEndpoint() == null) ? 0 : getConfigurationEndpoint().hashCode()); 
        hashCode = prime * hashCode + ((getClientDownloadLandingPage() == null) ? 0 : getClientDownloadLandingPage().hashCode()); 
        hashCode = prime * hashCode + ((getCacheNodeType() == null) ? 0 : getCacheNodeType().hashCode()); 
        hashCode = prime * hashCode + ((getEngine() == null) ? 0 : getEngine().hashCode()); 
        hashCode = prime * hashCode + ((getEngineVersion() == null) ? 0 : getEngineVersion().hashCode()); 
        hashCode = prime * hashCode + ((getCacheClusterStatus() == null) ? 0 : getCacheClusterStatus().hashCode()); 
        hashCode = prime * hashCode + ((getNumCacheNodes() == null) ? 0 : getNumCacheNodes().hashCode()); 
        hashCode = prime * hashCode + ((getPreferredAvailabilityZone() == null) ? 0 : getPreferredAvailabilityZone().hashCode()); 
        hashCode = prime * hashCode + ((getCacheClusterCreateTime() == null) ? 0 : getCacheClusterCreateTime().hashCode()); 
        hashCode = prime * hashCode + ((getPreferredMaintenanceWindow() == null) ? 0 : getPreferredMaintenanceWindow().hashCode()); 
        hashCode = prime * hashCode + ((getPendingModifiedValues() == null) ? 0 : getPendingModifiedValues().hashCode()); 
        hashCode = prime * hashCode + ((getNotificationConfiguration() == null) ? 0 : getNotificationConfiguration().hashCode()); 
        hashCode = prime * hashCode + ((getCacheSecurityGroups() == null) ? 0 : getCacheSecurityGroups().hashCode()); 
        hashCode = prime * hashCode + ((getCacheParameterGroup() == null) ? 0 : getCacheParameterGroup().hashCode()); 
        hashCode = prime * hashCode + ((getCacheSubnetGroupName() == null) ? 0 : getCacheSubnetGroupName().hashCode()); 
        hashCode = prime * hashCode + ((getCacheNodes() == null) ? 0 : getCacheNodes().hashCode()); 
        hashCode = prime * hashCode + ((isAutoMinorVersionUpgrade() == null) ? 0 : isAutoMinorVersionUpgrade().hashCode()); 
        hashCode = prime * hashCode + ((getSecurityGroups() == null) ? 0 : getSecurityGroups().hashCode()); 
        hashCode = prime * hashCode + ((getReplicationGroupId() == null) ? 0 : getReplicationGroupId().hashCode()); 
        hashCode = prime * hashCode + ((getSnapshotRetentionLimit() == null) ? 0 : getSnapshotRetentionLimit().hashCode()); 
        hashCode = prime * hashCode + ((getSnapshotWindow() == null) ? 0 : getSnapshotWindow().hashCode()); 
        return hashCode;
    }
    
    @Override
    public boolean equals(Object obj) {
        if (this == objreturn true;
        if (obj == nullreturn false;
        if (obj instanceof CacheCluster == falsereturn false;
        CacheCluster other = (CacheCluster)obj;
        
        if (other.getCacheClusterId() == null ^ this.getCacheClusterId() == nullreturn false;
        if (other.getCacheClusterId() != null && other.getCacheClusterId().equals(this.getCacheClusterId()) == falsereturn false
        if (other.getConfigurationEndpoint() == null ^ this.getConfigurationEndpoint() == nullreturn false;
        if (other.getConfigurationEndpoint() != null && other.getConfigurationEndpoint().equals(this.getConfigurationEndpoint()) == falsereturn false
        if (other.getClientDownloadLandingPage() == null ^ this.getClientDownloadLandingPage() == nullreturn false;
        if (other.getClientDownloadLandingPage() != null && other.getClientDownloadLandingPage().equals(this.getClientDownloadLandingPage()) == falsereturn false
        if (other.getCacheNodeType() == null ^ this.getCacheNodeType() == nullreturn false;
        if (other.getCacheNodeType() != null && other.getCacheNodeType().equals(this.getCacheNodeType()) == falsereturn false
        if (other.getEngine() == null ^ this.getEngine() == nullreturn false;
        if (other.getEngine() != null && other.getEngine().equals(this.getEngine()) == falsereturn false
        if (other.getEngineVersion() == null ^ this.getEngineVersion() == nullreturn false;
        if (other.getEngineVersion() != null && other.getEngineVersion().equals(this.getEngineVersion()) == falsereturn false
        if (other.getCacheClusterStatus() == null ^ this.getCacheClusterStatus() == nullreturn false;
        if (other.getCacheClusterStatus() != null && other.getCacheClusterStatus().equals(this.getCacheClusterStatus()) == falsereturn false
        if (other.getNumCacheNodes() == null ^ this.getNumCacheNodes() == nullreturn false;
        if (other.getNumCacheNodes() != null && other.getNumCacheNodes().equals(this.getNumCacheNodes()) == falsereturn false
        if (other.getPreferredAvailabilityZone() == null ^ this.getPreferredAvailabilityZone() == nullreturn false;
        if (other.getPreferredAvailabilityZone() != null && other.getPreferredAvailabilityZone().equals(this.getPreferredAvailabilityZone()) == falsereturn false
        if (other.getCacheClusterCreateTime() == null ^ this.getCacheClusterCreateTime() == nullreturn false;
        if (other.getCacheClusterCreateTime() != null && other.getCacheClusterCreateTime().equals(this.getCacheClusterCreateTime()) == falsereturn false
        if (other.getPreferredMaintenanceWindow() == null ^ this.getPreferredMaintenanceWindow() == nullreturn false;
        if (other.getPreferredMaintenanceWindow() != null && other.getPreferredMaintenanceWindow().equals(this.getPreferredMaintenanceWindow()) == falsereturn false
        if (other.getPendingModifiedValues() == null ^ this.getPendingModifiedValues() == nullreturn false;
        if (other.getPendingModifiedValues() != null && other.getPendingModifiedValues().equals(this.getPendingModifiedValues()) == falsereturn false
        if (other.getNotificationConfiguration() == null ^ this.getNotificationConfiguration() == nullreturn false;
        if (other.getNotificationConfiguration() != null && other.getNotificationConfiguration().equals(this.getNotificationConfiguration()) == falsereturn false
        if (other.getCacheSecurityGroups() == null ^ this.getCacheSecurityGroups() == nullreturn false;
        if (other.getCacheSecurityGroups() != null && other.getCacheSecurityGroups().equals(this.getCacheSecurityGroups()) == falsereturn false
        if (other.getCacheParameterGroup() == null ^ this.getCacheParameterGroup() == nullreturn false;
        if (other.getCacheParameterGroup() != null && other.getCacheParameterGroup().equals(this.getCacheParameterGroup()) == falsereturn false
        if (other.getCacheSubnetGroupName() == null ^ this.getCacheSubnetGroupName() == nullreturn false;
        if (other.getCacheSubnetGroupName() != null && other.getCacheSubnetGroupName().equals(this.getCacheSubnetGroupName()) == falsereturn false
        if (other.getCacheNodes() == null ^ this.getCacheNodes() == nullreturn false;
        if (other.getCacheNodes() != null && other.getCacheNodes().equals(this.getCacheNodes()) == falsereturn false
        if (other.isAutoMinorVersionUpgrade() == null ^ this.isAutoMinorVersionUpgrade() == nullreturn false;
        if (other.isAutoMinorVersionUpgrade() != null && other.isAutoMinorVersionUpgrade().equals(this.isAutoMinorVersionUpgrade()) == falsereturn false
        if (other.getSecurityGroups() == null ^ this.getSecurityGroups() == nullreturn false;
        if (other.getSecurityGroups() != null && other.getSecurityGroups().equals(this.getSecurityGroups()) == falsereturn false
        if (other.getReplicationGroupId() == null ^ this.getReplicationGroupId() == nullreturn false;
        if (other.getReplicationGroupId() != null && other.getReplicationGroupId().equals(this.getReplicationGroupId()) == falsereturn false
        if (other.getSnapshotRetentionLimit() == null ^ this.getSnapshotRetentionLimit() == nullreturn false;
        if (other.getSnapshotRetentionLimit() != null && other.getSnapshotRetentionLimit().equals(this.getSnapshotRetentionLimit()) == falsereturn false
        if (other.getSnapshotWindow() == null ^ this.getSnapshotWindow() == nullreturn false;
        if (other.getSnapshotWindow() != null && other.getSnapshotWindow().equals(this.getSnapshotWindow()) == falsereturn false
        return true;
    }
    
    @Override
    public CacheCluster clone() {
        try {
            return (CacheClustersuper.clone();
        
        } catch (CloneNotSupportedException e) {
            throw new IllegalStateException(
                    "Got a CloneNotSupportedException from Object.clone() "
                    + "even though we're Cloneable!",
                    e);
        }
        
    }
}
    
New to GrepCode? Check out our FAQ X