Class Cluster

    • Method Detail

      • clusterIdentifier

        public final String clusterIdentifier()

        The unique identifier of the cluster.

        Returns:
        The unique identifier of the cluster.
      • nodeType

        public final String nodeType()

        The node type for the nodes in the cluster.

        Returns:
        The node type for the nodes in the cluster.
      • clusterStatus

        public final String clusterStatus()

        The current state of the cluster. Possible values are the following:

        • available

        • available, prep-for-resize

        • available, resize-cleanup

        • cancelling-resize

        • creating

        • deleting

        • final-snapshot

        • hardware-failure

        • incompatible-hsm

        • incompatible-network

        • incompatible-parameters

        • incompatible-restore

        • modifying

        • paused

        • rebooting

        • renaming

        • resizing

        • rotating-keys

        • storage-full

        • updating-hsm

        Returns:
        The current state of the cluster. Possible values are the following:

        • available

        • available, prep-for-resize

        • available, resize-cleanup

        • cancelling-resize

        • creating

        • deleting

        • final-snapshot

        • hardware-failure

        • incompatible-hsm

        • incompatible-network

        • incompatible-parameters

        • incompatible-restore

        • modifying

        • paused

        • rebooting

        • renaming

        • resizing

        • rotating-keys

        • storage-full

        • updating-hsm

      • clusterAvailabilityStatus

        public final String clusterAvailabilityStatus()

        The availability status of the cluster for queries. Possible values are the following:

        • Available - The cluster is available for queries.

        • Unavailable - The cluster is not available for queries.

        • Maintenance - The cluster is intermittently available for queries due to maintenance activities.

        • Modifying - The cluster is intermittently available for queries due to changes that modify the cluster.

        • Failed - The cluster failed and is not available for queries.

        Returns:
        The availability status of the cluster for queries. Possible values are the following:

        • Available - The cluster is available for queries.

        • Unavailable - The cluster is not available for queries.

        • Maintenance - The cluster is intermittently available for queries due to maintenance activities.

        • Modifying - The cluster is intermittently available for queries due to changes that modify the cluster.

        • Failed - The cluster failed and is not available for queries.

      • modifyStatus

        public final String modifyStatus()

        The status of a modify operation, if any, initiated for the cluster.

        Returns:
        The status of a modify operation, if any, initiated for the cluster.
      • masterUsername

        public final String masterUsername()

        The admin user name for the cluster. This name is used to connect to the database that is specified in the DBName parameter.

        Returns:
        The admin user name for the cluster. This name is used to connect to the database that is specified in the DBName parameter.
      • dbName

        public final String dbName()

        The name of the initial database that was created when the cluster was created. This same name is returned for the life of the cluster. If an initial database was not specified, a database named devdev was created by default.

        Returns:
        The name of the initial database that was created when the cluster was created. This same name is returned for the life of the cluster. If an initial database was not specified, a database named devdev was created by default.
      • endpoint

        public final Endpoint endpoint()

        The connection endpoint.

        Returns:
        The connection endpoint.
      • clusterCreateTime

        public final Instant clusterCreateTime()

        The date and time that the cluster was created.

        Returns:
        The date and time that the cluster was created.
      • automatedSnapshotRetentionPeriod

        public final Integer automatedSnapshotRetentionPeriod()

        The number of days that automatic cluster snapshots are retained.

        Returns:
        The number of days that automatic cluster snapshots are retained.
      • manualSnapshotRetentionPeriod

        public final Integer manualSnapshotRetentionPeriod()

        The default number of days to retain a manual snapshot. If the value is -1, the snapshot is retained indefinitely. This setting doesn't change the retention period of existing snapshots.

        The value must be either -1 or an integer between 1 and 3,653.

        Returns:
        The default number of days to retain a manual snapshot. If the value is -1, the snapshot is retained indefinitely. This setting doesn't change the retention period of existing snapshots.

        The value must be either -1 or an integer between 1 and 3,653.

      • hasClusterSecurityGroups

        public final boolean hasClusterSecurityGroups()
        For responses, this returns true if the service returned a value for the ClusterSecurityGroups 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.
      • clusterSecurityGroups

        public final List<ClusterSecurityGroupMembership> clusterSecurityGroups()

        A list of cluster security group that are associated with the cluster. Each security group is represented by an element that contains ClusterSecurityGroup.Name and ClusterSecurityGroup.Status subelements.

        Cluster security groups are used when the cluster is not created in an Amazon Virtual Private Cloud (VPC). Clusters that are created in a VPC use VPC security groups, which are listed by the VpcSecurityGroups parameter.

        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 hasClusterSecurityGroups() method.

        Returns:
        A list of cluster security group that are associated with the cluster. Each security group is represented by an element that contains ClusterSecurityGroup.Name and ClusterSecurityGroup.Status subelements.

        Cluster security groups are used when the cluster is not created in an Amazon Virtual Private Cloud (VPC). Clusters that are created in a VPC use VPC security groups, which are listed by the VpcSecurityGroups parameter.

      • hasVpcSecurityGroups

        public final boolean hasVpcSecurityGroups()
        For responses, this returns true if the service returned a value for the VpcSecurityGroups 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.
      • vpcSecurityGroups

        public final List<VpcSecurityGroupMembership> vpcSecurityGroups()

        A list of Amazon Virtual Private Cloud (Amazon VPC) security groups that are associated with the cluster. This parameter is returned only if the cluster is in a VPC.

        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 hasVpcSecurityGroups() method.

        Returns:
        A list of Amazon Virtual Private Cloud (Amazon VPC) security groups that are associated with the cluster. This parameter is returned only if the cluster is in a VPC.
      • hasClusterParameterGroups

        public final boolean hasClusterParameterGroups()
        For responses, this returns true if the service returned a value for the ClusterParameterGroups 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.
      • clusterParameterGroups

        public final List<ClusterParameterGroupStatus> clusterParameterGroups()

        The list of cluster parameter groups that are associated with this cluster. Each parameter group in the list is returned with its status.

        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 hasClusterParameterGroups() method.

        Returns:
        The list of cluster parameter groups that are associated with this cluster. Each parameter group in the list is returned with its status.
      • clusterSubnetGroupName

        public final String clusterSubnetGroupName()

        The name of the subnet group that is associated with the cluster. This parameter is valid only when the cluster is in a VPC.

        Returns:
        The name of the subnet group that is associated with the cluster. This parameter is valid only when the cluster is in a VPC.
      • vpcId

        public final String vpcId()

        The identifier of the VPC the cluster is in, if the cluster is in a VPC.

        Returns:
        The identifier of the VPC the cluster is in, if the cluster is in a VPC.
      • availabilityZone

        public final String availabilityZone()

        The name of the Availability Zone in which the cluster is located.

        Returns:
        The name of the Availability Zone in which the cluster is located.
      • preferredMaintenanceWindow

        public final String preferredMaintenanceWindow()

        The weekly time range, in Universal Coordinated Time (UTC), during which system maintenance can occur.

        Returns:
        The weekly time range, in Universal Coordinated Time (UTC), during which system maintenance can occur.
      • pendingModifiedValues

        public final PendingModifiedValues pendingModifiedValues()

        A value that, if present, indicates that changes to the cluster are pending. Specific pending changes are identified by subelements.

        Returns:
        A value that, if present, indicates that changes to the cluster are pending. Specific pending changes are identified by subelements.
      • clusterVersion

        public final String clusterVersion()

        The version ID of the Amazon Redshift engine that is running on the cluster.

        Returns:
        The version ID of the Amazon Redshift engine that is running on the cluster.
      • allowVersionUpgrade

        public final Boolean allowVersionUpgrade()

        A boolean value that, if true, indicates that major version upgrades will be applied automatically to the cluster during the maintenance window.

        Returns:
        A boolean value that, if true, indicates that major version upgrades will be applied automatically to the cluster during the maintenance window.
      • numberOfNodes

        public final Integer numberOfNodes()

        The number of compute nodes in the cluster.

        Returns:
        The number of compute nodes in the cluster.
      • publiclyAccessible

        public final Boolean publiclyAccessible()

        A boolean value that, if true, indicates that the cluster can be accessed from a public network.

        Default: false

        Returns:
        A boolean value that, if true, indicates that the cluster can be accessed from a public network.

        Default: false

      • encrypted

        public final Boolean encrypted()

        A boolean value that, if true, indicates that data in the cluster is encrypted at rest.

        Returns:
        A boolean value that, if true, indicates that data in the cluster is encrypted at rest.
      • restoreStatus

        public final RestoreStatus restoreStatus()

        A value that describes the status of a cluster restore action. This parameter returns null if the cluster was not created by restoring a snapshot.

        Returns:
        A value that describes the status of a cluster restore action. This parameter returns null if the cluster was not created by restoring a snapshot.
      • hsmStatus

        public final HsmStatus hsmStatus()

        A value that reports whether the Amazon Redshift cluster has finished applying any hardware security module (HSM) settings changes specified in a modify cluster command.

        Values: active, applying

        Returns:
        A value that reports whether the Amazon Redshift cluster has finished applying any hardware security module (HSM) settings changes specified in a modify cluster command.

        Values: active, applying

      • clusterSnapshotCopyStatus

        public final ClusterSnapshotCopyStatus clusterSnapshotCopyStatus()

        A value that returns the destination region and retention period that are configured for cross-region snapshot copy.

        Returns:
        A value that returns the destination region and retention period that are configured for cross-region snapshot copy.
      • clusterPublicKey

        public final String clusterPublicKey()

        The public key for the cluster.

        Returns:
        The public key for the cluster.
      • hasClusterNodes

        public final boolean hasClusterNodes()
        For responses, this returns true if the service returned a value for the ClusterNodes 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.
      • clusterNodes

        public final List<ClusterNode> clusterNodes()

        The nodes in the 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 hasClusterNodes() method.

        Returns:
        The nodes in the cluster.
      • elasticIpStatus

        public final ElasticIpStatus elasticIpStatus()

        The status of the elastic IP (EIP) address.

        Returns:
        The status of the elastic IP (EIP) address.
      • clusterRevisionNumber

        public final String clusterRevisionNumber()

        The specific revision number of the database in the cluster.

        Returns:
        The specific revision number of the database in the cluster.
      • 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()

        The list of tags for the 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 hasTags() method.

        Returns:
        The list of tags for the cluster.
      • kmsKeyId

        public final String kmsKeyId()

        The Key Management Service (KMS) key ID of the encryption key used to encrypt data in the cluster.

        Returns:
        The Key Management Service (KMS) key ID of the encryption key used to encrypt data in the cluster.
      • enhancedVpcRouting

        public final Boolean enhancedVpcRouting()

        An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a cluster that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing in the Amazon Redshift Cluster Management Guide.

        If this option is true, enhanced VPC routing is enabled.

        Default: false

        Returns:
        An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a cluster that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing in the Amazon Redshift Cluster Management Guide.

        If this option is true, enhanced VPC routing is enabled.

        Default: false

      • hasIamRoles

        public final boolean hasIamRoles()
        For responses, this returns true if the service returned a value for the IamRoles 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.
      • iamRoles

        public final List<ClusterIamRole> iamRoles()

        A list of Identity and Access Management (IAM) roles that can be used by the cluster to access other Amazon Web Services services.

        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 hasIamRoles() method.

        Returns:
        A list of Identity and Access Management (IAM) roles that can be used by the cluster to access other Amazon Web Services services.
      • hasPendingActions

        public final boolean hasPendingActions()
        For responses, this returns true if the service returned a value for the PendingActions 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.
      • pendingActions

        public final List<String> pendingActions()

        Cluster operations that are waiting to be started.

        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 hasPendingActions() method.

        Returns:
        Cluster operations that are waiting to be started.
      • maintenanceTrackName

        public final String maintenanceTrackName()

        The name of the maintenance track for the cluster.

        Returns:
        The name of the maintenance track for the cluster.
      • elasticResizeNumberOfNodeOptions

        public final String elasticResizeNumberOfNodeOptions()

        The number of nodes that you can resize the cluster to with the elastic resize method.

        Returns:
        The number of nodes that you can resize the cluster to with the elastic resize method.
      • hasDeferredMaintenanceWindows

        public final boolean hasDeferredMaintenanceWindows()
        For responses, this returns true if the service returned a value for the DeferredMaintenanceWindows 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.
      • deferredMaintenanceWindows

        public final List<DeferredMaintenanceWindow> deferredMaintenanceWindows()

        Describes a group of DeferredMaintenanceWindow objects.

        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 hasDeferredMaintenanceWindows() method.

        Returns:
        Describes a group of DeferredMaintenanceWindow objects.
      • snapshotScheduleIdentifier

        public final String snapshotScheduleIdentifier()

        A unique identifier for the cluster snapshot schedule.

        Returns:
        A unique identifier for the cluster snapshot schedule.
      • snapshotScheduleStateAsString

        public final String snapshotScheduleStateAsString()

        The current state of the cluster snapshot schedule.

        If the service returns an enum value that is not available in the current SDK version, snapshotScheduleState will return ScheduleState.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from snapshotScheduleStateAsString().

        Returns:
        The current state of the cluster snapshot schedule.
        See Also:
        ScheduleState
      • expectedNextSnapshotScheduleTime

        public final Instant expectedNextSnapshotScheduleTime()

        The date and time when the next snapshot is expected to be taken for clusters with a valid snapshot schedule and backups enabled.

        Returns:
        The date and time when the next snapshot is expected to be taken for clusters with a valid snapshot schedule and backups enabled.
      • expectedNextSnapshotScheduleTimeStatus

        public final String expectedNextSnapshotScheduleTimeStatus()

        The status of next expected snapshot for clusters having a valid snapshot schedule and backups enabled. Possible values are the following:

        • OnTrack - The next snapshot is expected to be taken on time.

        • Pending - The next snapshot is pending to be taken.

        Returns:
        The status of next expected snapshot for clusters having a valid snapshot schedule and backups enabled. Possible values are the following:

        • OnTrack - The next snapshot is expected to be taken on time.

        • Pending - The next snapshot is pending to be taken.

      • nextMaintenanceWindowStartTime

        public final Instant nextMaintenanceWindowStartTime()

        The date and time in UTC when system maintenance can begin.

        Returns:
        The date and time in UTC when system maintenance can begin.
      • resizeInfo

        public final ResizeInfo resizeInfo()

        Returns the following:

        • AllowCancelResize: a boolean value indicating if the resize operation can be cancelled.

        • ResizeType: Returns ClassicResize

        Returns:
        Returns the following:

        • AllowCancelResize: a boolean value indicating if the resize operation can be cancelled.

        • ResizeType: Returns ClassicResize

      • availabilityZoneRelocationStatus

        public final String availabilityZoneRelocationStatus()

        Describes the status of the Availability Zone relocation operation.

        Returns:
        Describes the status of the Availability Zone relocation operation.
      • clusterNamespaceArn

        public final String clusterNamespaceArn()

        The namespace Amazon Resource Name (ARN) of the cluster.

        Returns:
        The namespace Amazon Resource Name (ARN) of the cluster.
      • totalStorageCapacityInMegaBytes

        public final Long totalStorageCapacityInMegaBytes()

        The total storage capacity of the cluster in megabytes.

        Returns:
        The total storage capacity of the cluster in megabytes.
      • aquaConfiguration

        public final AquaConfiguration aquaConfiguration()

        This field is retired. Amazon Redshift automatically determines whether to use AQUA (Advanced Query Accelerator).

        Returns:
        This field is retired. Amazon Redshift automatically determines whether to use AQUA (Advanced Query Accelerator).
      • defaultIamRoleArn

        public final String defaultIamRoleArn()

        The Amazon Resource Name (ARN) for the IAM role set as default for the cluster.

        Returns:
        The Amazon Resource Name (ARN) for the IAM role set as default for the cluster.
      • reservedNodeExchangeStatus

        public final ReservedNodeExchangeStatus reservedNodeExchangeStatus()

        The status of the reserved-node exchange request. Statuses include in-progress and requested.

        Returns:
        The status of the reserved-node exchange request. Statuses include in-progress and requested.
      • customDomainName

        public final String customDomainName()

        The custom domain name associated with the cluster.

        Returns:
        The custom domain name associated with the cluster.
      • customDomainCertificateArn

        public final String customDomainCertificateArn()

        The certificate Amazon Resource Name (ARN) for the custom domain name.

        Returns:
        The certificate Amazon Resource Name (ARN) for the custom domain name.
      • customDomainCertificateExpiryDate

        public final Instant customDomainCertificateExpiryDate()

        The expiration date for the certificate associated with the custom domain name.

        Returns:
        The expiration date for the certificate associated with the custom domain name.
      • masterPasswordSecretArn

        public final String masterPasswordSecretArn()

        The Amazon Resource Name (ARN) for the cluster's admin user credentials secret.

        Returns:
        The Amazon Resource Name (ARN) for the cluster's admin user credentials secret.
      • masterPasswordSecretKmsKeyId

        public final String masterPasswordSecretKmsKeyId()

        The ID of the Key Management Service (KMS) key used to encrypt and store the cluster's admin credentials secret.

        Returns:
        The ID of the Key Management Service (KMS) key used to encrypt and store the cluster's admin credentials secret.
      • ipAddressType

        public final String ipAddressType()

        The IP address type for the cluster. Possible values are ipv4 and dualstack.

        Returns:
        The IP address type for the cluster. Possible values are ipv4 and dualstack.
      • multiAZ

        public final String multiAZ()

        A boolean value that, if true, indicates that the cluster is deployed in two Availability Zones.

        Returns:
        A boolean value that, if true, indicates that the cluster is deployed in two Availability Zones.
      • multiAZSecondary

        public final SecondaryClusterInfo multiAZSecondary()

        The secondary compute unit of a cluster, if Multi-AZ deployment is turned on.

        Returns:
        The secondary compute unit of a cluster, if Multi-AZ deployment is turned on.
      • serializableBuilderClass

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

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

        public final boolean equals​(Object obj)
        Overrides:
        equals in class Object
      • 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)