Apricot eats Gorilla

Apricot eats Gorilla is a SOAP communication helper. It translates between SOAP messages (XML) and Ruby Hashes and comes with some additional helpers for working with SOAP services.

Install

The gem for Apricot eats Gorilla is in the gemcutter repository. Please follow the steps on their website to set up your rubygems installation. Afterwards you can install the gem like this:

$ gem install apricoteatsgorilla

Dependencies

hpricot 0.8.2 (JRuby-compatible version)

Translate an XML String into a Ruby Hash

xml = '<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <ns2:authenticateResponse xmlns:ns2="http://v1_0.ws.example.com/">
      <return>
        <apricot>
          <eats>Gorilla</eats>
        </apricot>
      </return>
    </ns2:authenticateResponse>
  </soap:Body>
</soap:Envelope>'

ApricotEatsGorilla[xml, "//return"]
# => { :apricot => { :eats => "Gorilla" } }

Translate a Ruby Hash into an XML String

hash = { :apricot => { :eats => "Gorilla" } }

ApricotEatsGorilla[hash]
# => "<apricot><eats>Gorilla</eats></apricot>"

Build a SOAP request envelope

ApricotEatsGorilla.soap_envelope { "<apricot><eats>Gorilla</eats></apricot>" }

# => '<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
# =>    <env:Body>
# =>      <apricot><eats>Gorilla</eats></apricot>
# =>    </env:Body>
# =>  </env:Envelope>'

Read more

For more detailed information, please take a look at the GitHub Wiki.