Class Cluster

    • Method Detail

      • clusterArn

        public final String clusterArn()

        The Amazon Resource Name (ARN) that identifies the cluster. For more information about the ARN format, see Amazon Resource Name (ARN) in the Amazon ECS Developer Guide.

        Returns:
        The Amazon Resource Name (ARN) that identifies the cluster. For more information about the ARN format, see Amazon Resource Name (ARN) in the Amazon ECS Developer Guide.
      • clusterName

        public final String clusterName()

        A user-generated string that you use to identify your cluster.

        Returns:
        A user-generated string that you use to identify your cluster.
      • configuration

        public final ClusterConfiguration configuration()

        The execute command configuration for the cluster.

        Returns:
        The execute command configuration for the cluster.
      • status

        public final String status()

        The status of the cluster. The following are the possible states that are returned.

        ACTIVE

        The cluster is ready to accept tasks and if applicable you can register container instances with the cluster.

        PROVISIONING

        The cluster has capacity providers that are associated with it and the resources needed for the capacity provider are being created.

        DEPROVISIONING

        The cluster has capacity providers that are associated with it and the resources needed for the capacity provider are being deleted.

        FAILED

        The cluster has capacity providers that are associated with it and the resources needed for the capacity provider have failed to create.

        INACTIVE

        The cluster has been deleted. Clusters with an INACTIVE status may remain discoverable in your account for a period of time. However, this behavior is subject to change in the future. We don't recommend that you rely on INACTIVE clusters persisting.

        Returns:
        The status of the cluster. The following are the possible states that are returned.

        ACTIVE

        The cluster is ready to accept tasks and if applicable you can register container instances with the cluster.

        PROVISIONING

        The cluster has capacity providers that are associated with it and the resources needed for the capacity provider are being created.

        DEPROVISIONING

        The cluster has capacity providers that are associated with it and the resources needed for the capacity provider are being deleted.

        FAILED

        The cluster has capacity providers that are associated with it and the resources needed for the capacity provider have failed to create.

        INACTIVE

        The cluster has been deleted. Clusters with an INACTIVE status may remain discoverable in your account for a period of time. However, this behavior is subject to change in the future. We don't recommend that you rely on INACTIVE clusters persisting.

      • registeredContainerInstancesCount

        public final Integer registeredContainerInstancesCount()

        The number of container instances registered into the cluster. This includes container instances in both ACTIVE and DRAINING status.

        Returns:
        The number of container instances registered into the cluster. This includes container instances in both ACTIVE and DRAINING status.
      • runningTasksCount

        public final Integer runningTasksCount()

        The number of tasks in the cluster that are in the RUNNING state.

        Returns:
        The number of tasks in the cluster that are in the RUNNING state.
      • pendingTasksCount

        public final Integer pendingTasksCount()

        The number of tasks in the cluster that are in the PENDING state.

        Returns:
        The number of tasks in the cluster that are in the PENDING state.
      • activeServicesCount

        public final Integer activeServicesCount()

        The number of services that are running on the cluster in an ACTIVE state. You can view these services with PListServices.

        Returns:
        The number of services that are running on the cluster in an ACTIVE state. You can view these services with PListServices.
      • hasStatistics

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

        public final List<KeyValuePair> statistics()

        Additional information about your clusters that are separated by launch type. They include the following:

        • runningEC2TasksCount

        • RunningFargateTasksCount

        • pendingEC2TasksCount

        • pendingFargateTasksCount

        • activeEC2ServiceCount

        • activeFargateServiceCount

        • drainingEC2ServiceCount

        • drainingFargateServiceCount

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

        Returns:
        Additional information about your clusters that are separated by launch type. They include the following:

        • runningEC2TasksCount

        • RunningFargateTasksCount

        • pendingEC2TasksCount

        • pendingFargateTasksCount

        • activeEC2ServiceCount

        • activeFargateServiceCount

        • drainingEC2ServiceCount

        • drainingFargateServiceCount

      • 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 metadata that you apply to the cluster to help you categorize and organize them. Each tag consists of a key and an optional value. You define both.

        The following basic restrictions apply to tags:

        • Maximum number of tags per resource - 50

        • For each resource, each tag key must be unique, and each tag key can have only one value.

        • Maximum key length - 128 Unicode characters in UTF-8

        • Maximum value length - 256 Unicode characters in UTF-8

        • If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @.

        • Tag keys and values are case-sensitive.

        • Do not use aws:, AWS:, or any upper or lowercase combination of such as a prefix for either keys or values as it is reserved for Amazon Web Services use. You cannot edit or delete tag keys or values with this prefix. Tags with this prefix do not count against your tags per resource limit.

        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 metadata that you apply to the cluster to help you categorize and organize them. Each tag consists of a key and an optional value. You define both.

        The following basic restrictions apply to tags:

        • Maximum number of tags per resource - 50

        • For each resource, each tag key must be unique, and each tag key can have only one value.

        • Maximum key length - 128 Unicode characters in UTF-8

        • Maximum value length - 256 Unicode characters in UTF-8

        • If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @.

        • Tag keys and values are case-sensitive.

        • Do not use aws:, AWS:, or any upper or lowercase combination of such as a prefix for either keys or values as it is reserved for Amazon Web Services use. You cannot edit or delete tag keys or values with this prefix. Tags with this prefix do not count against your tags per resource limit.

      • hasSettings

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

        public final List<ClusterSetting> settings()

        The settings for the cluster. This parameter indicates whether CloudWatch Container Insights is on or off for a 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 hasSettings() method.

        Returns:
        The settings for the cluster. This parameter indicates whether CloudWatch Container Insights is on or off for a cluster.
      • hasCapacityProviders

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

        public final List<String> capacityProviders()

        The capacity providers associated with 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 hasCapacityProviders() method.

        Returns:
        The capacity providers associated with the cluster.
      • hasDefaultCapacityProviderStrategy

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

        public final List<CapacityProviderStrategyItem> defaultCapacityProviderStrategy()

        The default capacity provider strategy for the cluster. When services or tasks are run in the cluster with no launch type or capacity provider strategy specified, the default capacity provider strategy is used.

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

        Returns:
        The default capacity provider strategy for the cluster. When services or tasks are run in the cluster with no launch type or capacity provider strategy specified, the default capacity provider strategy is used.
      • hasAttachments

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

        public final List<Attachment> attachments()

        The resources attached to a cluster. When using a capacity provider with a cluster, the capacity provider and associated resources are returned as cluster attachments.

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

        Returns:
        The resources attached to a cluster. When using a capacity provider with a cluster, the capacity provider and associated resources are returned as cluster attachments.
      • attachmentsStatus

        public final String attachmentsStatus()

        The status of the capacity providers associated with the cluster. The following are the states that are returned.

        UPDATE_IN_PROGRESS

        The available capacity providers for the cluster are updating.

        UPDATE_COMPLETE

        The capacity providers have successfully updated.

        UPDATE_FAILED

        The capacity provider updates failed.

        Returns:
        The status of the capacity providers associated with the cluster. The following are the states that are returned.

        UPDATE_IN_PROGRESS

        The available capacity providers for the cluster are updating.

        UPDATE_COMPLETE

        The capacity providers have successfully updated.

        UPDATE_FAILED

        The capacity provider updates failed.

      • serviceConnectDefaults

        public final ClusterServiceConnectDefaults serviceConnectDefaults()

        Use this parameter to set a default Service Connect namespace. After you set a default Service Connect namespace, any new services with Service Connect turned on that are created in the cluster are added as client services in the namespace. This setting only applies to new services that set the enabled parameter to true in the ServiceConnectConfiguration. You can set the namespace of each service individually in the ServiceConnectConfiguration to override this default parameter.

        Tasks that run in a namespace can use short names to connect to services in the namespace. Tasks can connect to services across all of the clusters in the namespace. Tasks connect through a managed proxy container that collects logs and metrics for increased visibility. Only the tasks that Amazon ECS services create are supported with Service Connect. For more information, see Service Connect in the Amazon Elastic Container Service Developer Guide.

        Returns:
        Use this parameter to set a default Service Connect namespace. After you set a default Service Connect namespace, any new services with Service Connect turned on that are created in the cluster are added as client services in the namespace. This setting only applies to new services that set the enabled parameter to true in the ServiceConnectConfiguration. You can set the namespace of each service individually in the ServiceConnectConfiguration to override this default parameter.

        Tasks that run in a namespace can use short names to connect to services in the namespace. Tasks can connect to services across all of the clusters in the namespace. Tasks connect through a managed proxy container that collects logs and metrics for increased visibility. Only the tasks that Amazon ECS services create are supported with Service Connect. For more information, see Service Connect in the Amazon Elastic Container Service Developer Guide.

      • 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)