Sha256: 6ab18e22da75ade4b6e80ca797e1d97163a70c2338ea9f2a69b401bd019dd4ae

Contents?: true

Size: 1.99 KB

Versions: 65

Compression:

Stored size: 1.99 KB

Contents

module Aws
  module Resources
    class Documenter
      class WaiterOperationDocumenter < BaseOperationDocumenter

        def docstring
          super + ' ' + <<-DOCSTRING.lstrip
Waits until this #{resource_class_name} is #{state}. This method
waits by polling {Client##{api_request_name}} until successful. An error is
raised after a configurable number of failed checks.

This waiter uses the following defaults:

| Configuration   | Default                |
|-----------------|------------------------|
| `#delay`        | #{waiter.delay}        |
| `#max_attempts` | #{waiter.max_attempts} |

You can modify defaults and register callbacks by passing a block argument.
@yieldparam [Waiters::Waiter] waiter
@raise [Waiters::Errors::WaiterFailed]
@see Client#wait_until
          DOCSTRING
        end

        def return_tag
          tag("@return [#{resource_class_name}] #{return_message}")
        end

        def return_message
          if @operation.path
            "Returns a copy of this #{resource_class_name} with loaded data."
          else
            "Returns a copy of this #{resource_class_name} that is not loaded."
          end
        end

        def state
          operation_name.to_s.sub('wait_until_', '')
        end

        def waiter
          @resource_class.client_class.waiters.waiter(@operation.waiter_name)
        end

        def api_request
          @resource_class.client_class.api.operation(api_request_name)
        end

        def api_request_name
          waiter.poller.operation_name
        end

        def option_tags
          []
        end

        def example_tags
          example = <<-EXAMPLE.strip
@example Basic usage
  #{variable_name}.#{operation_name}

@example Modify default configuration
  #{variable_name}.#{operation_name} do |w|
     w.interval = 10
     w.max_attempts = 100
     w.before_attempt { |count| ... }
     w.before_wait do { |count, prev_resp| ... }
  end
          EXAMPLE
          super + [tag(example)]
        end

      end
    end
  end
end

Version data entries

65 entries across 65 versions & 1 rubygems

Version Path
aws-sdk-resources-2.2.29 lib/aws-sdk-resources/documenter/waiter_operation_documenter.rb
aws-sdk-resources-2.2.28 lib/aws-sdk-resources/documenter/waiter_operation_documenter.rb
aws-sdk-resources-2.2.27 lib/aws-sdk-resources/documenter/waiter_operation_documenter.rb
aws-sdk-resources-2.2.26 lib/aws-sdk-resources/documenter/waiter_operation_documenter.rb
aws-sdk-resources-2.2.25 lib/aws-sdk-resources/documenter/waiter_operation_documenter.rb
aws-sdk-resources-2.2.24 lib/aws-sdk-resources/documenter/waiter_operation_documenter.rb
aws-sdk-resources-2.2.23 lib/aws-sdk-resources/documenter/waiter_operation_documenter.rb
aws-sdk-resources-2.2.22 lib/aws-sdk-resources/documenter/waiter_operation_documenter.rb
aws-sdk-resources-2.2.20 lib/aws-sdk-resources/documenter/waiter_operation_documenter.rb
aws-sdk-resources-2.2.19 lib/aws-sdk-resources/documenter/waiter_operation_documenter.rb
aws-sdk-resources-2.2.18 lib/aws-sdk-resources/documenter/waiter_operation_documenter.rb
aws-sdk-resources-2.2.17 lib/aws-sdk-resources/documenter/waiter_operation_documenter.rb
aws-sdk-resources-2.2.16 lib/aws-sdk-resources/documenter/waiter_operation_documenter.rb
aws-sdk-resources-2.2.15 lib/aws-sdk-resources/documenter/waiter_operation_documenter.rb
aws-sdk-resources-2.2.14 lib/aws-sdk-resources/documenter/waiter_operation_documenter.rb
aws-sdk-resources-2.2.13 lib/aws-sdk-resources/documenter/waiter_operation_documenter.rb
aws-sdk-resources-2.2.12 lib/aws-sdk-resources/documenter/waiter_operation_documenter.rb
aws-sdk-resources-2.2.11 lib/aws-sdk-resources/documenter/waiter_operation_documenter.rb
aws-sdk-resources-2.2.10 lib/aws-sdk-resources/documenter/waiter_operation_documenter.rb
aws-sdk-resources-2.2.9 lib/aws-sdk-resources/documenter/waiter_operation_documenter.rb