Sha256: 351fd41f10e82d33e1cad53c8b57183c8872d58e0ffb4bf315195ff5d362ae1b

Contents?: true

Size: 1.04 KB

Versions: 1024

Compression:

Stored size: 1.04 KB

Contents

module Aws
  module Resources
    class Request

      # @option options [required, String] :method_name
      # @option options [Array<RequestParams::Param>] :params ([]) A list of
      #   request params to apply to the request when called.
      def initialize(options = {})
        @method_name = options[:method_name]
        @params = options[:params] || []
      end

      # @return [String] Name of the method called on the client when this
      #   operation is called.
      attr_reader :method_name

      # @return [Array<RequestParams::Param>]
      attr_reader :params

      # @option options [required, Resource] :resource
      # @option options [Array<Mixed>] :args
      # @return [Seahorse::Client::Response]
      def call(options)
        client(options).send(@method_name, req_params(options), &options[:block])
      end

      private

      def client(options)
        Array(options[:resource]).first.client
      end

      def req_params(options)
        RequestParams::ParamHash.new(@params).build(options)
      end

    end
  end
end

Version data entries

1,024 entries across 1,024 versions & 2 rubygems

Version Path
aws-sdk-resources-2.11.532 lib/aws-sdk-resources/request.rb
aws-sdk-resources-2.11.531 lib/aws-sdk-resources/request.rb
aws-sdk-resources-2.11.530 lib/aws-sdk-resources/request.rb
aws-sdk-resources-2.11.529 lib/aws-sdk-resources/request.rb
aws-sdk-resources-2.11.528 lib/aws-sdk-resources/request.rb
aws-sdk-resources-2.11.527 lib/aws-sdk-resources/request.rb
aws-sdk-resources-2.11.526 lib/aws-sdk-resources/request.rb
aws-sdk-resources-2.11.525 lib/aws-sdk-resources/request.rb
aws-sdk-resources-2.11.524 lib/aws-sdk-resources/request.rb
aws-sdk-resources-2.11.523 lib/aws-sdk-resources/request.rb
aws-sdk-resources-2.11.522 lib/aws-sdk-resources/request.rb
aws-sdk-resources-2.11.521 lib/aws-sdk-resources/request.rb
aws-sdk-resources-2.11.520 lib/aws-sdk-resources/request.rb
aws-sdk-resources-2.11.519 lib/aws-sdk-resources/request.rb
aws-sdk-resources-2.11.518 lib/aws-sdk-resources/request.rb
aws-sdk-resources-2.11.517 lib/aws-sdk-resources/request.rb
aws-sdk-resources-2.11.516 lib/aws-sdk-resources/request.rb
aws-sdk-resources-2.11.515 lib/aws-sdk-resources/request.rb
aws-sdk-resources-2.11.514 lib/aws-sdk-resources/request.rb
aws-sdk-resources-2.11.513 lib/aws-sdk-resources/request.rb