Class CreateClusterRequest

All Implemented Interfaces:
SdkPojo, ToCopyableBuilder<CreateClusterRequest.Builder,CreateClusterRequest>

@Generated("software.amazon.awssdk:codegen") public final class CreateClusterRequest extends MemoryDbRequest implements ToCopyableBuilder<CreateClusterRequest.Builder,CreateClusterRequest>
  • Method Details

    • clusterName

      public final String clusterName()

      The name of the cluster. This value must be unique as it also serves as the cluster identifier.

      Returns:
      The name of the cluster. This value must be unique as it also serves as the cluster identifier.
    • nodeType

      public final String nodeType()

      The compute and memory capacity of the nodes in the cluster.

      Returns:
      The compute and memory capacity of the nodes in the cluster.
    • parameterGroupName

      public final String parameterGroupName()

      The name of the parameter group associated with the cluster.

      Returns:
      The name of the parameter group associated with the cluster.
    • description

      public final String description()

      An optional description of the cluster.

      Returns:
      An optional description of the cluster.
    • numShards

      public final Integer numShards()

      The number of shards the cluster will contain. The default value is 1.

      Returns:
      The number of shards the cluster will contain. The default value is 1.
    • numReplicasPerShard

      public final Integer numReplicasPerShard()

      The number of replicas to apply to each shard. The default value is 1. The maximum is 5.

      Returns:
      The number of replicas to apply to each shard. The default value is 1. The maximum is 5.
    • subnetGroupName

      public final String subnetGroupName()

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

      Returns:
      The name of the subnet group to be used for the cluster.
    • hasSecurityGroupIds

      public final boolean hasSecurityGroupIds()
      For responses, this returns true if the service returned a value for the SecurityGroupIds property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • securityGroupIds

      public final List<String> securityGroupIds()

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

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasSecurityGroupIds() method.

      Returns:
      A list of security group names to associate with this cluster.
    • maintenanceWindow

      public final String maintenanceWindow()

      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.

      Valid values for ddd are:

      • sun

      • mon

      • tue

      • wed

      • thu

      • fri

      • sat

      Example: sun:23:00-mon:01:30

      Returns:
      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.

      Valid values for ddd are:

      • sun

      • mon

      • tue

      • wed

      • thu

      • fri

      • sat

      Example: sun:23:00-mon:01:30

    • port

      public final Integer port()

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

      Returns:
      The port number on which each of the nodes accepts connections.
    • snsTopicArn

      public final String snsTopicArn()

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

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

      public final Boolean tlsEnabled()

      A flag to enable in-transit encryption on the cluster.

      Returns:
      A flag to enable in-transit encryption on the cluster.
    • kmsKeyId

      public final String kmsKeyId()

      The ID of the KMS key used to encrypt the cluster.

      Returns:
      The ID of the KMS key used to encrypt the cluster.
    • hasSnapshotArns

      public final boolean hasSnapshotArns()
      For responses, this returns true if the service returned a value for the SnapshotArns property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • snapshotArns

      public final List<String> snapshotArns()

      A list of Amazon Resource Names (ARN) that uniquely identify the RDB snapshot files stored in Amazon S3. The snapshot files are used to populate the new cluster. The Amazon S3 object name in the ARN cannot contain any commas.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasSnapshotArns() method.

      Returns:
      A list of Amazon Resource Names (ARN) that uniquely identify the RDB snapshot files stored in Amazon S3. The snapshot files are used to populate the new cluster. The Amazon S3 object name in the ARN cannot contain any commas.
    • snapshotName

      public final String snapshotName()

      The name of a snapshot from which to restore data into the new cluster. The snapshot status changes to restoring while the new cluster is being created.

      Returns:
      The name of a snapshot from which to restore data into the new cluster. The snapshot status changes to restoring while the new cluster is being created.
    • snapshotRetentionLimit

      public final Integer snapshotRetentionLimit()

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

      Returns:
      The number of days for which MemoryDB retains automatic snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot that was taken today is retained for 5 days before being deleted.
    • hasTags

      public final boolean hasTags()
      For responses, this returns true if the service returned a value for the Tags property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • tags

      public final List<Tag> tags()

      A list of tags to be added to this resource. Tags are comma-separated key,value pairs (e.g. Key=myKey, Value=myKeyValue. You can include multiple tags as shown following: Key=myKey, Value=myKeyValue Key=mySecondKey, Value=mySecondKeyValue.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasTags() method.

      Returns:
      A list of tags to be added to this resource. Tags are comma-separated key,value pairs (e.g. Key=myKey, Value=myKeyValue. You can include multiple tags as shown following: Key=myKey, Value=myKeyValue Key=mySecondKey, Value=mySecondKeyValue.
    • snapshotWindow

      public final String snapshotWindow()

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

      Example: 05:00-09:00

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

      Returns:
      The daily time range (in UTC) during which MemoryDB begins taking a daily snapshot of your shard.

      Example: 05:00-09:00

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

    • aclName

      public final String aclName()

      The name of the Access Control List to associate with the cluster.

      Returns:
      The name of the Access Control List to associate with the cluster.
    • engineVersion

      public final String engineVersion()

      The version number of the Redis engine to be used for the cluster.

      Returns:
      The version number of the Redis engine to be used for the cluster.
    • autoMinorVersionUpgrade

      public final Boolean autoMinorVersionUpgrade()

      When set to true, the cluster will automatically receive minor engine version upgrades after launch.

      Returns:
      When set to true, the cluster will automatically receive minor engine version upgrades after launch.
    • dataTiering

      public final Boolean dataTiering()

      Enables data tiering. Data tiering is only supported for clusters using the r6gd node type. This parameter must be set when using r6gd nodes. For more information, see Data tiering.

      Returns:
      Enables data tiering. Data tiering is only supported for clusters using the r6gd node type. This parameter must be set when using r6gd nodes. For more information, see Data tiering.
    • toBuilder

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

      public static CreateClusterRequest.Builder builder()
    • serializableBuilderClass

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

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

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

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

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

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

      public final String toString()
      Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
      Description copied from class: SdkRequest
      Used to retrieve the value of a field from any class that extends SdkRequest. The field name specified should match the member name from the corresponding service-2.json model specified in the codegen-resources folder for a given service. The class specifies what class to cast the returned value to. If the returned value is also a modeled class, the SdkRequest.getValueForField(String, Class) method will again be available.
      Overrides:
      getValueForField in class SdkRequest
      Parameters:
      fieldName - The name of the member to be retrieved.
      clazz - The class to cast the returned object to.
      Returns:
      Optional containing the casted return value
    • sdkFields

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