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

com.amazonaws.services.elasticache.model.CacheSubnetGroup Maven / Gradle / Ivy

Go to download

The AWS Java SDK for Amazon ElastiCache module holds the client classes that are used for communicating with Amazon ElastiCache Service

There is a newer version: 1.12.780
Show newest version
/*
 * Copyright 2019-2024 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;

import java.io.Serializable;
import javax.annotation.Generated;

/**
 * 

* Represents the output of one of the following operations: *

*
    *
  • *

    * CreateCacheSubnetGroup *

    *
  • *
  • *

    * ModifyCacheSubnetGroup *

    *
  • *
* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class CacheSubnetGroup implements Serializable, Cloneable { /** *

* The name of the cache subnet group. *

*/ private String cacheSubnetGroupName; /** *

* The description of the cache subnet group. *

*/ private String cacheSubnetGroupDescription; /** *

* The Amazon Virtual Private Cloud identifier (VPC ID) of the cache subnet group. *

*/ private String vpcId; /** *

* A list of subnets associated with the cache subnet group. *

*/ private com.amazonaws.internal.SdkInternalList subnets; /** *

* The ARN (Amazon Resource Name) of the cache subnet group. *

*/ private String aRN; /** *

* Either ipv4 | ipv6 | dual_stack. IPv6 is supported for workloads using * Redis OSS engine version 6.2 onward or Memcached engine version 1.6.6 on all instances built on the Nitro system. *

*/ private com.amazonaws.internal.SdkInternalList supportedNetworkTypes; /** *

* The name of the cache subnet group. *

* * @param cacheSubnetGroupName * The name of the cache subnet group. */ public void setCacheSubnetGroupName(String cacheSubnetGroupName) { this.cacheSubnetGroupName = cacheSubnetGroupName; } /** *

* The name of the cache subnet group. *

* * @return The name of the cache subnet group. */ public String getCacheSubnetGroupName() { return this.cacheSubnetGroupName; } /** *

* The name of the cache subnet group. *

* * @param cacheSubnetGroupName * The name of the cache subnet group. * @return Returns a reference to this object so that method calls can be chained together. */ public CacheSubnetGroup withCacheSubnetGroupName(String cacheSubnetGroupName) { setCacheSubnetGroupName(cacheSubnetGroupName); return this; } /** *

* The description of the cache subnet group. *

* * @param cacheSubnetGroupDescription * The description of the cache subnet group. */ public void setCacheSubnetGroupDescription(String cacheSubnetGroupDescription) { this.cacheSubnetGroupDescription = cacheSubnetGroupDescription; } /** *

* The description of the cache subnet group. *

* * @return The description of the cache subnet group. */ public String getCacheSubnetGroupDescription() { return this.cacheSubnetGroupDescription; } /** *

* The description of the cache subnet group. *

* * @param cacheSubnetGroupDescription * The description of the cache subnet group. * @return Returns a reference to this object so that method calls can be chained together. */ public CacheSubnetGroup withCacheSubnetGroupDescription(String cacheSubnetGroupDescription) { setCacheSubnetGroupDescription(cacheSubnetGroupDescription); return this; } /** *

* The Amazon Virtual Private Cloud identifier (VPC ID) of the cache subnet group. *

* * @param vpcId * The Amazon Virtual Private Cloud identifier (VPC ID) of the cache subnet group. */ public void setVpcId(String vpcId) { this.vpcId = vpcId; } /** *

* The Amazon Virtual Private Cloud identifier (VPC ID) of the cache subnet group. *

* * @return The Amazon Virtual Private Cloud identifier (VPC ID) of the cache subnet group. */ public String getVpcId() { return this.vpcId; } /** *

* The Amazon Virtual Private Cloud identifier (VPC ID) of the cache subnet group. *

* * @param vpcId * The Amazon Virtual Private Cloud identifier (VPC ID) of the cache subnet group. * @return Returns a reference to this object so that method calls can be chained together. */ public CacheSubnetGroup withVpcId(String vpcId) { setVpcId(vpcId); return this; } /** *

* A list of subnets associated with the cache subnet group. *

* * @return A list of subnets associated with the cache subnet group. */ public java.util.List getSubnets() { if (subnets == null) { subnets = new com.amazonaws.internal.SdkInternalList(); } return subnets; } /** *

* A list of subnets associated with the cache subnet group. *

* * @param subnets * A list of subnets associated with the cache subnet group. */ public void setSubnets(java.util.Collection subnets) { if (subnets == null) { this.subnets = null; return; } this.subnets = new com.amazonaws.internal.SdkInternalList(subnets); } /** *

* A list of subnets associated with the cache subnet group. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setSubnets(java.util.Collection)} or {@link #withSubnets(java.util.Collection)} if you want to override * the existing values. *

* * @param subnets * A list of subnets associated with the cache subnet group. * @return Returns a reference to this object so that method calls can be chained together. */ public CacheSubnetGroup withSubnets(Subnet... subnets) { if (this.subnets == null) { setSubnets(new com.amazonaws.internal.SdkInternalList(subnets.length)); } for (Subnet ele : subnets) { this.subnets.add(ele); } return this; } /** *

* A list of subnets associated with the cache subnet group. *

* * @param subnets * A list of subnets associated with the cache subnet group. * @return Returns a reference to this object so that method calls can be chained together. */ public CacheSubnetGroup withSubnets(java.util.Collection subnets) { setSubnets(subnets); return this; } /** *

* The ARN (Amazon Resource Name) of the cache subnet group. *

* * @param aRN * The ARN (Amazon Resource Name) of the cache subnet group. */ public void setARN(String aRN) { this.aRN = aRN; } /** *

* The ARN (Amazon Resource Name) of the cache subnet group. *

* * @return The ARN (Amazon Resource Name) of the cache subnet group. */ public String getARN() { return this.aRN; } /** *

* The ARN (Amazon Resource Name) of the cache subnet group. *

* * @param aRN * The ARN (Amazon Resource Name) of the cache subnet group. * @return Returns a reference to this object so that method calls can be chained together. */ public CacheSubnetGroup withARN(String aRN) { setARN(aRN); return this; } /** *

* Either ipv4 | ipv6 | dual_stack. IPv6 is supported for workloads using * Redis OSS engine version 6.2 onward or Memcached engine version 1.6.6 on all instances built on the Nitro system. *

* * @return Either ipv4 | ipv6 | dual_stack. IPv6 is supported for workloads * using Redis OSS engine version 6.2 onward or Memcached engine version 1.6.6 on all instances built on the * Nitro system. * @see NetworkType */ public java.util.List getSupportedNetworkTypes() { if (supportedNetworkTypes == null) { supportedNetworkTypes = new com.amazonaws.internal.SdkInternalList(); } return supportedNetworkTypes; } /** *

* Either ipv4 | ipv6 | dual_stack. IPv6 is supported for workloads using * Redis OSS engine version 6.2 onward or Memcached engine version 1.6.6 on all instances built on the Nitro system. *

* * @param supportedNetworkTypes * Either ipv4 | ipv6 | dual_stack. IPv6 is supported for workloads * using Redis OSS engine version 6.2 onward or Memcached engine version 1.6.6 on all instances built on the * Nitro system. * @see NetworkType */ public void setSupportedNetworkTypes(java.util.Collection supportedNetworkTypes) { if (supportedNetworkTypes == null) { this.supportedNetworkTypes = null; return; } this.supportedNetworkTypes = new com.amazonaws.internal.SdkInternalList(supportedNetworkTypes); } /** *

* Either ipv4 | ipv6 | dual_stack. IPv6 is supported for workloads using * Redis OSS engine version 6.2 onward or Memcached engine version 1.6.6 on all instances built on the Nitro system. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setSupportedNetworkTypes(java.util.Collection)} or * {@link #withSupportedNetworkTypes(java.util.Collection)} if you want to override the existing values. *

* * @param supportedNetworkTypes * Either ipv4 | ipv6 | dual_stack. IPv6 is supported for workloads * using Redis OSS engine version 6.2 onward or Memcached engine version 1.6.6 on all instances built on the * Nitro system. * @return Returns a reference to this object so that method calls can be chained together. * @see NetworkType */ public CacheSubnetGroup withSupportedNetworkTypes(String... supportedNetworkTypes) { if (this.supportedNetworkTypes == null) { setSupportedNetworkTypes(new com.amazonaws.internal.SdkInternalList(supportedNetworkTypes.length)); } for (String ele : supportedNetworkTypes) { this.supportedNetworkTypes.add(ele); } return this; } /** *

* Either ipv4 | ipv6 | dual_stack. IPv6 is supported for workloads using * Redis OSS engine version 6.2 onward or Memcached engine version 1.6.6 on all instances built on the Nitro system. *

* * @param supportedNetworkTypes * Either ipv4 | ipv6 | dual_stack. IPv6 is supported for workloads * using Redis OSS engine version 6.2 onward or Memcached engine version 1.6.6 on all instances built on the * Nitro system. * @return Returns a reference to this object so that method calls can be chained together. * @see NetworkType */ public CacheSubnetGroup withSupportedNetworkTypes(java.util.Collection supportedNetworkTypes) { setSupportedNetworkTypes(supportedNetworkTypes); return this; } /** *

* Either ipv4 | ipv6 | dual_stack. IPv6 is supported for workloads using * Redis OSS engine version 6.2 onward or Memcached engine version 1.6.6 on all instances built on the Nitro system. *

* * @param supportedNetworkTypes * Either ipv4 | ipv6 | dual_stack. IPv6 is supported for workloads * using Redis OSS engine version 6.2 onward or Memcached engine version 1.6.6 on all instances built on the * Nitro system. * @return Returns a reference to this object so that method calls can be chained together. * @see NetworkType */ public CacheSubnetGroup withSupportedNetworkTypes(NetworkType... supportedNetworkTypes) { com.amazonaws.internal.SdkInternalList supportedNetworkTypesCopy = new com.amazonaws.internal.SdkInternalList( supportedNetworkTypes.length); for (NetworkType value : supportedNetworkTypes) { supportedNetworkTypesCopy.add(value.toString()); } if (getSupportedNetworkTypes() == null) { setSupportedNetworkTypes(supportedNetworkTypesCopy); } else { getSupportedNetworkTypes().addAll(supportedNetworkTypesCopy); } return this; } /** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getCacheSubnetGroupName() != null) sb.append("CacheSubnetGroupName: ").append(getCacheSubnetGroupName()).append(","); if (getCacheSubnetGroupDescription() != null) sb.append("CacheSubnetGroupDescription: ").append(getCacheSubnetGroupDescription()).append(","); if (getVpcId() != null) sb.append("VpcId: ").append(getVpcId()).append(","); if (getSubnets() != null) sb.append("Subnets: ").append(getSubnets()).append(","); if (getARN() != null) sb.append("ARN: ").append(getARN()).append(","); if (getSupportedNetworkTypes() != null) sb.append("SupportedNetworkTypes: ").append(getSupportedNetworkTypes()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof CacheSubnetGroup == false) return false; CacheSubnetGroup other = (CacheSubnetGroup) obj; if (other.getCacheSubnetGroupName() == null ^ this.getCacheSubnetGroupName() == null) return false; if (other.getCacheSubnetGroupName() != null && other.getCacheSubnetGroupName().equals(this.getCacheSubnetGroupName()) == false) return false; if (other.getCacheSubnetGroupDescription() == null ^ this.getCacheSubnetGroupDescription() == null) return false; if (other.getCacheSubnetGroupDescription() != null && other.getCacheSubnetGroupDescription().equals(this.getCacheSubnetGroupDescription()) == false) return false; if (other.getVpcId() == null ^ this.getVpcId() == null) return false; if (other.getVpcId() != null && other.getVpcId().equals(this.getVpcId()) == false) return false; if (other.getSubnets() == null ^ this.getSubnets() == null) return false; if (other.getSubnets() != null && other.getSubnets().equals(this.getSubnets()) == false) return false; if (other.getARN() == null ^ this.getARN() == null) return false; if (other.getARN() != null && other.getARN().equals(this.getARN()) == false) return false; if (other.getSupportedNetworkTypes() == null ^ this.getSupportedNetworkTypes() == null) return false; if (other.getSupportedNetworkTypes() != null && other.getSupportedNetworkTypes().equals(this.getSupportedNetworkTypes()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getCacheSubnetGroupName() == null) ? 0 : getCacheSubnetGroupName().hashCode()); hashCode = prime * hashCode + ((getCacheSubnetGroupDescription() == null) ? 0 : getCacheSubnetGroupDescription().hashCode()); hashCode = prime * hashCode + ((getVpcId() == null) ? 0 : getVpcId().hashCode()); hashCode = prime * hashCode + ((getSubnets() == null) ? 0 : getSubnets().hashCode()); hashCode = prime * hashCode + ((getARN() == null) ? 0 : getARN().hashCode()); hashCode = prime * hashCode + ((getSupportedNetworkTypes() == null) ? 0 : getSupportedNetworkTypes().hashCode()); return hashCode; } @Override public CacheSubnetGroup clone() { try { return (CacheSubnetGroup) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy