Class: Aws::ElastiCache::Waiters::CacheClusterAvailable

Inherits:
Object
  • Object
show all
Defined in:
lib/aws-sdk-elasticache/waiters.rb

Overview

Wait until ElastiCache cluster is available.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options) ⇒ CacheClusterAvailable

Returns a new instance of CacheClusterAvailable.

Parameters:

  • options (Hash)

Options Hash (options):

  • :client (required, Client)
  • :max_attempts (Integer) — default: 40
  • :delay (Integer) — default: 15
  • :before_attempt (Proc)
  • :before_wait (Proc)


22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
# File 'lib/aws-sdk-elasticache/waiters.rb', line 22

def initialize(options)
  @client = options.fetch(:client)
  @waiter = Aws::Waiters::Waiter.new({
    max_attempts: 40,
    delay: 15,
    poller: Aws::Waiters::Poller.new(
      operation_name: :describe_cache_clusters,
      acceptors: [
        {
          "argument" => "cache_clusters[].cache_cluster_status",
          "expected" => "available",
          "matcher" => "pathAll",
          "state" => "success"
        },
        {
          "argument" => "cache_clusters[].cache_cluster_status",
          "expected" => "deleted",
          "matcher" => "pathAny",
          "state" => "failure"
        },
        {
          "argument" => "cache_clusters[].cache_cluster_status",
          "expected" => "deleting",
          "matcher" => "pathAny",
          "state" => "failure"
        },
        {
          "argument" => "cache_clusters[].cache_cluster_status",
          "expected" => "incompatible-network",
          "matcher" => "pathAny",
          "state" => "failure"
        },
        {
          "argument" => "cache_clusters[].cache_cluster_status",
          "expected" => "restore-failed",
          "matcher" => "pathAny",
          "state" => "failure"
        }
      ]
    )
  }.merge(options))
end

Instance Attribute Details

#waiterObject (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



72
73
74
# File 'lib/aws-sdk-elasticache/waiters.rb', line 72

def waiter
  @waiter
end

Instance Method Details

#wait(params = {}) ⇒ Types::CacheClusterMessage

Returns a response object which responds to the following methods:

Options Hash (params):

  • :cache_cluster_id (String)

    The user-supplied cluster identifier. If this parameter is specified, only information about that specific cluster is returned. This parameter isn’t case sensitive.

  • :max_records (Integer)

    The maximum number of records to include in the response. If more records exist than the specified ‘MaxRecords` value, a marker is included in the response so that the remaining results can be retrieved.

    Default: 100

    Constraints: minimum 20; maximum 100.

  • :marker (String)

    An optional marker returned from a prior request. Use this marker for pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by ‘MaxRecords`.

  • :show_cache_node_info (Boolean)

    An optional flag that can be included in the ‘DescribeCacheCluster` request to retrieve information about the individual cache nodes.

  • :show_cache_clusters_not_in_replication_groups (Boolean)

    An optional flag that can be included in the ‘DescribeCacheCluster` request to show only nodes (API/CLI: clusters) that are not members of a replication group. In practice, this mean Memcached and single node Redis clusters.

Returns:



67
68
69
# File 'lib/aws-sdk-elasticache/waiters.rb', line 67

def wait(params = {})
  @waiter.wait(client: @client, params: params)
end