Class: AWS::Core::Client::ClientRequestMethodBuilder
- Inherits:
-
Object
- Object
- AWS::Core::Client::ClientRequestMethodBuilder
- Defined in:
- lib/aws/core/client.rb
Instance Method Summary collapse
- #configure_request(options = {}, &block) ⇒ Object
-
#initialize(client_class, method_name, &block) ⇒ ClientRequestMethodBuilder
constructor
A new instance of ClientRequestMethodBuilder.
- #process_response(&block) ⇒ Object
- #simulate_response(&block) ⇒ Object
Constructor Details
#initialize(client_class, method_name, &block) ⇒ ClientRequestMethodBuilder
Returns a new instance of ClientRequestMethodBuilder.
504 505 506 507 508 509 510 511 |
# File 'lib/aws/core/client.rb', line 504 def initialize client_class, method_name, &block @client_class = client_class @method_name = method_name configure_request {|request, |} process_response {|response|} simulate_response {|response|} instance_eval(&block) end |
Instance Method Details
#configure_request(options = {}, &block) ⇒ Object
513 514 515 516 517 518 519 520 521 522 523 524 525 |
# File 'lib/aws/core/client.rb', line 513 def configure_request = {}, &block name = "configure_#{@method_name}_request" MetaUtils.class_extend_method(@client_class, name, &block) if block.arity == 3 m = Module.new m.module_eval(<<-END) def #{name}(req, options, &block) super(req, options, block) end END @client_class.send(:include, m) end end |
#process_response(&block) ⇒ Object
527 528 529 530 |
# File 'lib/aws/core/client.rb', line 527 def process_response &block name = "process_#{@method_name}_response" MetaUtils.class_extend_method(@client_class, name, &block) end |
#simulate_response(&block) ⇒ Object
532 533 534 535 |
# File 'lib/aws/core/client.rb', line 532 def simulate_response &block name = "simulate_#{@method_name}_response" MetaUtils.class_extend_method(@client_class, name, &block) end |