Class: Savon::SOAP::Request

Inherits:
Object
  • Object
show all
Defined in:
lib/savon/soap/request.rb

Overview

= Savon::SOAP::Request

Executes SOAP requests.

Constant Summary collapse

ContentType =

Content-Types by SOAP version.

{ 1 => "text/xml;charset=UTF-8", 2 => "application/soap+xml;charset=UTF-8" }

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(http, soap) ⇒ Request

Expects an HTTPI::Request and a Savon::SOAP::XML object.



22
23
24
25
# File 'lib/savon/soap/request.rb', line 22

def initialize(http, soap)
  self.soap = soap
  self.http = configure(http)
end

Instance Attribute Details

#httpObject

Returns the value of attribute http.



27
28
29
# File 'lib/savon/soap/request.rb', line 27

def http
  @http
end

#soapObject

Returns the value of attribute soap.



27
28
29
# File 'lib/savon/soap/request.rb', line 27

def soap
  @soap
end

Class Method Details

.execute(http, soap) ⇒ Object

Expects an HTTPI::Request and a Savon::SOAP::XML object to execute a SOAP request and returns the response.



17
18
19
# File 'lib/savon/soap/request.rb', line 17

def self.execute(http, soap)
  new(http, soap).response
end

Instance Method Details

#responseObject

Executes the request and returns the response.



30
31
32
33
34
# File 'lib/savon/soap/request.rb', line 30

def response
  @response ||= SOAP::Response.new(
    Savon.hooks.select(:soap_request).call(self) || with_logging { HTTPI.post(http) }
  )
end