Interface CreateCacheClusterRequest.Builder

All Superinterfaces:
AwsRequest.Builder, Buildable, CopyableBuilder<CreateCacheClusterRequest.Builder,CreateCacheClusterRequest>, ElastiCacheRequest.Builder, SdkBuilder<CreateCacheClusterRequest.Builder,CreateCacheClusterRequest>, SdkPojo, SdkRequest.Builder
Enclosing class:
CreateCacheClusterRequest

public static interface CreateCacheClusterRequest.Builder extends ElastiCacheRequest.Builder, SdkPojo, CopyableBuilder<CreateCacheClusterRequest.Builder,CreateCacheClusterRequest>
  • Method Details

    • cacheClusterId

      CreateCacheClusterRequest.Builder cacheClusterId(String cacheClusterId)

      The node group (shard) identifier. This parameter is stored as a lowercase string.

      Constraints:

      • A name must contain from 1 to 50 alphanumeric characters or hyphens.

      • The first character must be a letter.

      • A name cannot end with a hyphen or contain two consecutive hyphens.

      Parameters:
      cacheClusterId - The node group (shard) identifier. This parameter is stored as a lowercase string.

      Constraints:

      • A name must contain from 1 to 50 alphanumeric characters or hyphens.

      • The first character must be a letter.

      • A name cannot end with a hyphen or contain two consecutive hyphens.

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

      CreateCacheClusterRequest.Builder replicationGroupId(String replicationGroupId)

      The ID of the replication group to which this cluster should belong. If this parameter is specified, the cluster is added to the specified replication group as a read replica; otherwise, the cluster is a standalone primary that is not part of any replication group.

      If the specified replication group is Multi-AZ enabled and the Availability Zone is not specified, the cluster is created in Availability Zones that provide the best spread of read replicas across Availability Zones.

      This parameter is only valid if the Engine parameter is redis.

      Parameters:
      replicationGroupId - The ID of the replication group to which this cluster should belong. If this parameter is specified, the cluster is added to the specified replication group as a read replica; otherwise, the cluster is a standalone primary that is not part of any replication group.

      If the specified replication group is Multi-AZ enabled and the Availability Zone is not specified, the cluster is created in Availability Zones that provide the best spread of read replicas across Availability Zones.

      This parameter is only valid if the Engine parameter is redis.

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

      Specifies whether the nodes in this Memcached cluster are created in a single Availability Zone or created across multiple Availability Zones in the cluster's region.

      This parameter is only supported for Memcached clusters.

      If the AZMode and PreferredAvailabilityZones are not specified, ElastiCache assumes single-az mode.

      Parameters:
      azMode - Specifies whether the nodes in this Memcached cluster are created in a single Availability Zone or created across multiple Availability Zones in the cluster's region.

      This parameter is only supported for Memcached clusters.

      If the AZMode and PreferredAvailabilityZones are not specified, ElastiCache assumes single-az mode.

      Returns:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • azMode

      Specifies whether the nodes in this Memcached cluster are created in a single Availability Zone or created across multiple Availability Zones in the cluster's region.

      This parameter is only supported for Memcached clusters.

      If the AZMode and PreferredAvailabilityZones are not specified, ElastiCache assumes single-az mode.

      Parameters:
      azMode - Specifies whether the nodes in this Memcached cluster are created in a single Availability Zone or created across multiple Availability Zones in the cluster's region.

      This parameter is only supported for Memcached clusters.

      If the AZMode and PreferredAvailabilityZones are not specified, ElastiCache assumes single-az mode.

      Returns:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • preferredAvailabilityZone

      CreateCacheClusterRequest.Builder preferredAvailabilityZone(String preferredAvailabilityZone)

      The EC2 Availability Zone in which the cluster is created.

      All nodes belonging to this cluster are placed in the preferred Availability Zone. If you want to create your nodes across multiple Availability Zones, use PreferredAvailabilityZones.

      Default: System chosen Availability Zone.

      Parameters:
      preferredAvailabilityZone - The EC2 Availability Zone in which the cluster is created.

      All nodes belonging to this cluster are placed in the preferred Availability Zone. If you want to create your nodes across multiple Availability Zones, use PreferredAvailabilityZones.

      Default: System chosen Availability Zone.

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

      CreateCacheClusterRequest.Builder preferredAvailabilityZones(Collection<String> preferredAvailabilityZones)

      A list of the Availability Zones in which cache nodes are created. The order of the zones in the list is not important.

      This option is only supported on Memcached.

      If you are creating your cluster in an Amazon VPC (recommended) you can only locate nodes in Availability Zones that are associated with the subnets in the selected subnet group.

      The number of Availability Zones listed must equal the value of NumCacheNodes.

      If you want all the nodes in the same Availability Zone, use PreferredAvailabilityZone instead, or repeat the Availability Zone multiple times in the list.

      Default: System chosen Availability Zones.

      Parameters:
      preferredAvailabilityZones - A list of the Availability Zones in which cache nodes are created. The order of the zones in the list is not important.

      This option is only supported on Memcached.

      If you are creating your cluster in an Amazon VPC (recommended) you can only locate nodes in Availability Zones that are associated with the subnets in the selected subnet group.

      The number of Availability Zones listed must equal the value of NumCacheNodes.

      If you want all the nodes in the same Availability Zone, use PreferredAvailabilityZone instead, or repeat the Availability Zone multiple times in the list.

      Default: System chosen Availability Zones.

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

      CreateCacheClusterRequest.Builder preferredAvailabilityZones(String... preferredAvailabilityZones)

      A list of the Availability Zones in which cache nodes are created. The order of the zones in the list is not important.

      This option is only supported on Memcached.

      If you are creating your cluster in an Amazon VPC (recommended) you can only locate nodes in Availability Zones that are associated with the subnets in the selected subnet group.

      The number of Availability Zones listed must equal the value of NumCacheNodes.

      If you want all the nodes in the same Availability Zone, use PreferredAvailabilityZone instead, or repeat the Availability Zone multiple times in the list.

      Default: System chosen Availability Zones.

      Parameters:
      preferredAvailabilityZones - A list of the Availability Zones in which cache nodes are created. The order of the zones in the list is not important.

      This option is only supported on Memcached.

      If you are creating your cluster in an Amazon VPC (recommended) you can only locate nodes in Availability Zones that are associated with the subnets in the selected subnet group.

      The number of Availability Zones listed must equal the value of NumCacheNodes.

      If you want all the nodes in the same Availability Zone, use PreferredAvailabilityZone instead, or repeat the Availability Zone multiple times in the list.

      Default: System chosen Availability Zones.

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

      CreateCacheClusterRequest.Builder numCacheNodes(Integer numCacheNodes)

      The initial number of cache nodes that the cluster has.

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

      If you need more than 40 nodes for your Memcached cluster, please fill out the ElastiCache Limit Increase Request form at http://aws.amazon.com /contact-us/elasticache-node-limit-request/.

      Parameters:
      numCacheNodes - The initial number of cache nodes that the cluster has.

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

      If you need more than 40 nodes for your Memcached cluster, please fill out the ElastiCache Limit Increase Request form at http ://aws.amazon.com/contact-us/elasticache-node-limit-request/.

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

      CreateCacheClusterRequest.Builder cacheNodeType(String cacheNodeType)

      The compute and memory capacity of the nodes in the node group (shard).

      The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.

      • General purpose:

        • Current generation:

          M7g node types: cache.m7g.large, cache.m7g.xlarge, cache.m7g.2xlarge, cache.m7g.4xlarge, cache.m7g.8xlarge, cache.m7g.12xlarge, cache.m7g.16xlarge

          For region availability, see Supported Node Types

          M6g node types (available only for Redis OSS engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge

          M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge

          M4 node types: cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

          T4g node types (available only for Redis OSS engine version 5.0.6 onward and Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium

          T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium

          T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium

        • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

          T1 node types: cache.t1.micro

          M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

          M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge

      • Compute optimized:

        • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

          C1 node types: cache.c1.xlarge

      • Memory optimized:

        • Current generation:

          R7g node types: cache.r7g.large, cache.r7g.xlarge, cache.r7g.2xlarge, cache.r7g.4xlarge, cache.r7g.8xlarge, cache.r7g.12xlarge, cache.r7g.16xlarge

          For region availability, see Supported Node Types

          R6g node types (available only for Redis OSS engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge

          R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge

          R4 node types: cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge

        • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

          M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

          R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

      Additional node type info

      • All current generation instance types are created in Amazon VPC by default.

      • Redis OSS append-only files (AOF) are not supported for T1 or T2 instances.

      • Redis OSS Multi-AZ with automatic failover is not supported on T1 instances.

      • Redis OSS configuration variables appendonly and appendfsync are not supported on Redis OSS version 2.8.22 and later.

      Parameters:
      cacheNodeType - The compute and memory capacity of the nodes in the node group (shard).

      The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.

      • General purpose:

        • Current generation:

          M7g node types: cache.m7g.large, cache.m7g.xlarge, cache.m7g.2xlarge, cache.m7g.4xlarge, cache.m7g.8xlarge, cache.m7g.12xlarge, cache.m7g.16xlarge

          For region availability, see Supported Node Types

          M6g node types (available only for Redis OSS engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge

          M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge

          M4 node types: cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

          T4g node types (available only for Redis OSS engine version 5.0.6 onward and Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium

          T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium

          T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium

        • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

          T1 node types: cache.t1.micro

          M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

          M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge

      • Compute optimized:

        • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

          C1 node types: cache.c1.xlarge

      • Memory optimized:

        • Current generation:

          R7g node types: cache.r7g.large, cache.r7g.xlarge, cache.r7g.2xlarge, cache.r7g.4xlarge, cache.r7g.8xlarge, cache.r7g.12xlarge, cache.r7g.16xlarge

          For region availability, see Supported Node Types

          R6g node types (available only for Redis OSS engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge

          R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge

          R4 node types: cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge

        • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

          M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

          R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

      Additional node type info

      • All current generation instance types are created in Amazon VPC by default.

      • Redis OSS append-only files (AOF) are not supported for T1 or T2 instances.

      • Redis OSS Multi-AZ with automatic failover is not supported on T1 instances.

      • Redis OSS configuration variables appendonly and appendfsync are not supported on Redis OSS version 2.8.22 and later.

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

      The name of the cache engine to be used for this cluster.

      Valid values for this parameter are: memcached | redis

      Parameters:
      engine - The name of the cache engine to be used for this cluster.

      Valid values for this parameter are: memcached | redis

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

      CreateCacheClusterRequest.Builder engineVersion(String engineVersion)

      The version number of the cache engine to be used for this cluster. To view the supported cache engine versions, use the DescribeCacheEngineVersions operation.

      Important: You can upgrade to a newer engine version (see Selecting a Cache Engine and Version), but you cannot downgrade to an earlier engine version. If you want to use an earlier engine version, you must delete the existing cluster or replication group and create it anew with the earlier engine version.

      Parameters:
      engineVersion - The version number of the cache engine to be used for this cluster. To view the supported cache engine versions, use the DescribeCacheEngineVersions operation.

      Important: You can upgrade to a newer engine version (see Selecting a Cache Engine and Version), but you cannot downgrade to an earlier engine version. If you want to use an earlier engine version, you must delete the existing cluster or replication group and create it anew with the earlier engine version.

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

      CreateCacheClusterRequest.Builder cacheParameterGroupName(String cacheParameterGroupName)

      The name of the parameter group to associate with this cluster. If this argument is omitted, the default parameter group for the specified engine is used. You cannot use any parameter group which has cluster-enabled='yes' when creating a cluster.

      Parameters:
      cacheParameterGroupName - The name of the parameter group to associate with this cluster. If this argument is omitted, the default parameter group for the specified engine is used. You cannot use any parameter group which has cluster-enabled='yes' when creating a cluster.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • cacheSubnetGroupName

      CreateCacheClusterRequest.Builder cacheSubnetGroupName(String cacheSubnetGroupName)

      The name of the subnet group to be used for the cluster.

      Use this parameter only when you are creating a cluster in an Amazon Virtual Private Cloud (Amazon VPC).

      If you're going to launch your cluster in an Amazon VPC, you need to create a subnet group before you start creating a cluster. For more information, see Subnets and Subnet Groups.

      Parameters:
      cacheSubnetGroupName - The name of the subnet group to be used for the cluster.

      Use this parameter only when you are creating a cluster in an Amazon Virtual Private Cloud (Amazon VPC).

      If you're going to launch your cluster in an Amazon VPC, you need to create a subnet group before you start creating a cluster. For more information, see Subnets and Subnet Groups.

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

      CreateCacheClusterRequest.Builder cacheSecurityGroupNames(Collection<String> cacheSecurityGroupNames)

      A list of security group names to associate with this cluster.

      Use this parameter only when you are creating a cluster outside of an Amazon Virtual Private Cloud (Amazon VPC).

      Parameters:
      cacheSecurityGroupNames - A list of security group names to associate with this cluster.

      Use this parameter only when you are creating a cluster outside of an Amazon Virtual Private Cloud (Amazon VPC).

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

      CreateCacheClusterRequest.Builder cacheSecurityGroupNames(String... cacheSecurityGroupNames)

      A list of security group names to associate with this cluster.

      Use this parameter only when you are creating a cluster outside of an Amazon Virtual Private Cloud (Amazon VPC).

      Parameters:
      cacheSecurityGroupNames - A list of security group names to associate with this cluster.

      Use this parameter only when you are creating a cluster outside of an Amazon Virtual Private Cloud (Amazon VPC).

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

      CreateCacheClusterRequest.Builder securityGroupIds(Collection<String> securityGroupIds)

      One or more VPC security groups associated with the cluster.

      Use this parameter only when you are creating a cluster in an Amazon Virtual Private Cloud (Amazon VPC).

      Parameters:
      securityGroupIds - One or more VPC security groups associated with the cluster.

      Use this parameter only when you are creating a cluster in an Amazon Virtual Private Cloud (Amazon VPC).

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

      CreateCacheClusterRequest.Builder securityGroupIds(String... securityGroupIds)

      One or more VPC security groups associated with the cluster.

      Use this parameter only when you are creating a cluster in an Amazon Virtual Private Cloud (Amazon VPC).

      Parameters:
      securityGroupIds - One or more VPC security groups associated with the cluster.

      Use this parameter only when you are creating a cluster in an Amazon Virtual Private Cloud (Amazon VPC).

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

      A list of tags to be added to this resource.

      Parameters:
      tags - A list of tags to be added to this resource.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • tags

      A list of tags to be added to this resource.

      Parameters:
      tags - A list of tags to be added to this resource.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • tags

      A list of tags to be added to this resource.

      This is a convenience method that creates an instance of the Tag.Builder avoiding the need to create one manually via Tag.builder().

      When the Consumer completes, SdkBuilder.build() is called immediately and its result is passed to tags(List<Tag>).

      Parameters:
      tags - a consumer that will call methods on Tag.Builder
      Returns:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • snapshotArns

      A single-element string list containing an Amazon Resource Name (ARN) that uniquely identifies a Redis OSS RDB snapshot file stored in Amazon S3. The snapshot file is used to populate the node group (shard). The Amazon S3 object name in the ARN cannot contain any commas.

      This parameter is only valid if the Engine parameter is redis.

      Example of an Amazon S3 ARN: arn:aws:s3:::my_bucket/snapshot1.rdb

      Parameters:
      snapshotArns - A single-element string list containing an Amazon Resource Name (ARN) that uniquely identifies a Redis OSS RDB snapshot file stored in Amazon S3. The snapshot file is used to populate the node group (shard). The Amazon S3 object name in the ARN cannot contain any commas.

      This parameter is only valid if the Engine parameter is redis.

      Example of an Amazon S3 ARN: arn:aws:s3:::my_bucket/snapshot1.rdb

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

      CreateCacheClusterRequest.Builder snapshotArns(String... snapshotArns)

      A single-element string list containing an Amazon Resource Name (ARN) that uniquely identifies a Redis OSS RDB snapshot file stored in Amazon S3. The snapshot file is used to populate the node group (shard). The Amazon S3 object name in the ARN cannot contain any commas.

      This parameter is only valid if the Engine parameter is redis.

      Example of an Amazon S3 ARN: arn:aws:s3:::my_bucket/snapshot1.rdb

      Parameters:
      snapshotArns - A single-element string list containing an Amazon Resource Name (ARN) that uniquely identifies a Redis OSS RDB snapshot file stored in Amazon S3. The snapshot file is used to populate the node group (shard). The Amazon S3 object name in the ARN cannot contain any commas.

      This parameter is only valid if the Engine parameter is redis.

      Example of an Amazon S3 ARN: arn:aws:s3:::my_bucket/snapshot1.rdb

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

      CreateCacheClusterRequest.Builder snapshotName(String snapshotName)

      The name of a Redis OSS snapshot from which to restore data into the new node group (shard). The snapshot status changes to restoring while the new node group (shard) is being created.

      This parameter is only valid if the Engine parameter is redis.

      Parameters:
      snapshotName - The name of a Redis OSS snapshot from which to restore data into the new node group (shard). The snapshot status changes to restoring while the new node group (shard) is being created.

      This parameter is only valid if the Engine parameter is redis.

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

      CreateCacheClusterRequest.Builder preferredMaintenanceWindow(String preferredMaintenanceWindow)

      Specifies the weekly time range during which maintenance on the 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.

      Parameters:
      preferredMaintenanceWindow - Specifies the weekly time range during which maintenance on the 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.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • port

      The port number on which each of the cache nodes accepts connections.

      Parameters:
      port - The port number on which each of the cache nodes accepts connections.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • notificationTopicArn

      CreateCacheClusterRequest.Builder notificationTopicArn(String notificationTopicArn)

      The Amazon Resource Name (ARN) of the Amazon Simple Notification Service (SNS) topic to which notifications are sent.

      The Amazon SNS topic owner must be the same as the cluster owner.

      Parameters:
      notificationTopicArn - The Amazon Resource Name (ARN) of the Amazon Simple Notification Service (SNS) topic to which notifications are sent.

      The Amazon SNS topic owner must be the same as the cluster owner.

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

      CreateCacheClusterRequest.Builder autoMinorVersionUpgrade(Boolean autoMinorVersionUpgrade)

       If you are running Redis OSS engine version 6.0 or later, set this parameter to yes if you want to opt-in to the next auto minor version upgrade campaign. This parameter is disabled for previous versions. 

      Parameters:
      autoMinorVersionUpgrade -  If you are running Redis OSS engine version 6.0 or later, set this parameter to yes if you want to opt-in to the next auto minor version upgrade campaign. This parameter is disabled for previous versions. 
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • snapshotRetentionLimit

      CreateCacheClusterRequest.Builder snapshotRetentionLimit(Integer snapshotRetentionLimit)

      The number of days for which ElastiCache retains automatic snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot taken today is retained for 5 days before being deleted.

      This parameter is only valid if the Engine parameter is redis.

      Default: 0 (i.e., automatic backups are disabled for this cache cluster).

      Parameters:
      snapshotRetentionLimit - The number of days for which ElastiCache retains automatic snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot taken today is retained for 5 days before being deleted.

      This parameter is only valid if the Engine parameter is redis.

      Default: 0 (i.e., automatic backups are disabled for this cache cluster).

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

      CreateCacheClusterRequest.Builder snapshotWindow(String snapshotWindow)

      The daily time range (in UTC) during which ElastiCache begins taking a daily snapshot of your node group (shard).

      Example: 05:00-09:00

      If you do not specify this parameter, ElastiCache automatically chooses an appropriate time range.

      This parameter is only valid if the Engine parameter is redis.

      Parameters:
      snapshotWindow - The daily time range (in UTC) during which ElastiCache begins taking a daily snapshot of your node group (shard).

      Example: 05:00-09:00

      If you do not specify this parameter, ElastiCache automatically chooses an appropriate time range.

      This parameter is only valid if the Engine parameter is redis.

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

      Reserved parameter. The password used to access a password protected server.

      Password constraints:

      • Must be only printable ASCII characters.

      • Must be at least 16 characters and no more than 128 characters in length.

      • The only permitted printable special characters are !, &, #, $, ^, <, >, and -. Other printable special characters cannot be used in the AUTH token.

      For more information, see AUTH password at http://redis.io/commands/AUTH.

      Parameters:
      authToken - Reserved parameter. The password used to access a password protected server.

      Password constraints:

      • Must be only printable ASCII characters.

      • Must be at least 16 characters and no more than 128 characters in length.

      • The only permitted printable special characters are !, &, #, $, ^, <, >, and -. Other printable special characters cannot be used in the AUTH token.

      For more information, see AUTH password at http://redis.io/commands/AUTH.

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

      CreateCacheClusterRequest.Builder outpostMode(String outpostMode)

      Specifies whether the nodes in the cluster are created in a single outpost or across multiple outposts.

      Parameters:
      outpostMode - Specifies whether the nodes in the cluster are created in a single outpost or across multiple outposts.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • outpostMode

      Specifies whether the nodes in the cluster are created in a single outpost or across multiple outposts.

      Parameters:
      outpostMode - Specifies whether the nodes in the cluster are created in a single outpost or across multiple outposts.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • preferredOutpostArn

      CreateCacheClusterRequest.Builder preferredOutpostArn(String preferredOutpostArn)

      The outpost ARN in which the cache cluster is created.

      Parameters:
      preferredOutpostArn - The outpost ARN in which the cache cluster is created.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • preferredOutpostArns

      CreateCacheClusterRequest.Builder preferredOutpostArns(Collection<String> preferredOutpostArns)

      The outpost ARNs in which the cache cluster is created.

      Parameters:
      preferredOutpostArns - The outpost ARNs in which the cache cluster is created.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • preferredOutpostArns

      CreateCacheClusterRequest.Builder preferredOutpostArns(String... preferredOutpostArns)

      The outpost ARNs in which the cache cluster is created.

      Parameters:
      preferredOutpostArns - The outpost ARNs in which the cache cluster is created.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • logDeliveryConfigurations

      CreateCacheClusterRequest.Builder logDeliveryConfigurations(Collection<LogDeliveryConfigurationRequest> logDeliveryConfigurations)

      Specifies the destination, format and type of the logs.

      Parameters:
      logDeliveryConfigurations - Specifies the destination, format and type of the logs.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • logDeliveryConfigurations

      CreateCacheClusterRequest.Builder logDeliveryConfigurations(LogDeliveryConfigurationRequest... logDeliveryConfigurations)

      Specifies the destination, format and type of the logs.

      Parameters:
      logDeliveryConfigurations - Specifies the destination, format and type of the logs.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • logDeliveryConfigurations

      CreateCacheClusterRequest.Builder logDeliveryConfigurations(Consumer<LogDeliveryConfigurationRequest.Builder>... logDeliveryConfigurations)

      Specifies the destination, format and type of the logs.

      This is a convenience method that creates an instance of the LogDeliveryConfigurationRequest.Builder avoiding the need to create one manually via LogDeliveryConfigurationRequest.builder().

      When the Consumer completes, SdkBuilder.build() is called immediately and its result is passed to logDeliveryConfigurations(List<LogDeliveryConfigurationRequest>).

      Parameters:
      logDeliveryConfigurations - a consumer that will call methods on LogDeliveryConfigurationRequest.Builder
      Returns:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • transitEncryptionEnabled

      CreateCacheClusterRequest.Builder transitEncryptionEnabled(Boolean transitEncryptionEnabled)

      A flag that enables in-transit encryption when set to true.

      Parameters:
      transitEncryptionEnabled - A flag that enables in-transit encryption when set to true.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • networkType

      CreateCacheClusterRequest.Builder networkType(String networkType)

      Must be 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.

      Parameters:
      networkType - Must be 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.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • networkType

      Must be 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.

      Parameters:
      networkType - Must be 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.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • ipDiscovery

      CreateCacheClusterRequest.Builder ipDiscovery(String ipDiscovery)

      The network type you choose when modifying a cluster, either ipv4 | ipv6. 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.

      Parameters:
      ipDiscovery - The network type you choose when modifying a cluster, either ipv4 | ipv6. 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.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • ipDiscovery

      The network type you choose when modifying a cluster, either ipv4 | ipv6. 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.

      Parameters:
      ipDiscovery - The network type you choose when modifying a cluster, either ipv4 | ipv6. 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.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • overrideConfiguration

      CreateCacheClusterRequest.Builder overrideConfiguration(AwsRequestOverrideConfiguration overrideConfiguration)
      Description copied from interface: AwsRequest.Builder
      Add an optional request override configuration.
      Specified by:
      overrideConfiguration in interface AwsRequest.Builder
      Parameters:
      overrideConfiguration - The override configuration.
      Returns:
      This object for method chaining.
    • overrideConfiguration

      Description copied from interface: AwsRequest.Builder
      Add an optional request override configuration.
      Specified by:
      overrideConfiguration in interface AwsRequest.Builder
      Parameters:
      builderConsumer - A Consumer to which an empty AwsRequestOverrideConfiguration.Builder will be given.
      Returns:
      This object for method chaining.