Class: Amazon::WebServices::Util::SOAPTransport
- Inherits:
-
Object
- Object
- Amazon::WebServices::Util::SOAPTransport
show all
- Defined in:
- lib/amazon/webservices/util/soap_transport.rb
Constant Summary
collapse
- REQUIRED_PARAMETERS =
[:Wsdl]
Class Method Summary
collapse
Instance Method Summary
collapse
Constructor Details
20
21
22
23
24
25
26
27
28
|
# File 'lib/amazon/webservices/util/soap_transport.rb', line 20
def initialize( args )
raise "SOAP version 1.5.5+ (included in Ruby 1.8.3+) required to use SOAP Transport" unless SOAPTransport::canSOAP?
missing_parameters = REQUIRED_PARAMETERS - args.keys
raise "Missing paramters: #{missing_parameters.join(',')}" unless missing_parameters.empty?
@driver = SOAP::WSDLDriverFactory.new( args[:Wsdl] ).create_rpc_driver
@driver.endpoint_url = args[:Endpoint] unless args[:Endpoint].nil?
@driver.headerhandler << SOAPTransportHeaderHandler.new('http://amazonaws.com/header', 'X-Amazon-Software', RubyAWS::agent(args[:SoftwareName]) )
end
|
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(method, *args) ⇒ Object
30
31
32
|
# File 'lib/amazon/webservices/util/soap_transport.rb', line 30
def method_missing( method, *args )
SOAPSimplifier.simplify @driver.send( method, *args )
end
|
Class Method Details
.canSOAP? ⇒ Boolean
16
17
18
|
# File 'lib/amazon/webservices/util/soap_transport.rb', line 16
def self.canSOAP?
SOAP::Version >= "1.5.5"
end
|