class SoapEnumerator::Bindings::Binding::Operation

Operation class is struct class for wsdl:operation elements (each element is an Operation object)

Attributes

attributes[R]

@!attribute attributes

documentation[R]

@!attribute documentation

input[R]

@!attribute input

output[R]

@!attribute output

soap_action[R]

@!attribute soap_action

style[R]

@!attribute style

Public Class Methods

new(ops_doc) click to toggle source
# File lib/soap_enumerator/bindings/operation.rb, line 22
def initialize(ops_doc)
  @attributes    = attributes_2_methods(ops_doc)
  @input         = get_operation(ops_doc, 'input')
  @output        = get_operation(ops_doc, 'output')
  @documentation = get_documentation(ops_doc)
  get_soap_operation(ops_doc)
end

Private Instance Methods

get_documentation(doc) click to toggle source
# File lib/soap_enumerator/bindings/operation.rb, line 32
def get_documentation(doc)
  doc.search('documentation').text
end
get_operation(doc, operation) click to toggle source
# File lib/soap_enumerator/bindings/operation.rb, line 43
def get_operation(doc, operation)
  doc.elements
     .select {|ops| ops.name.include?(operation)}[0]
     .elements.map {|e| attributes_2_hashes(e.attributes) }.flatten
end
get_soap_operation(ops_doc) click to toggle source

get_soap_operation gets soapAction and style

# File lib/soap_enumerator/bindings/operation.rb, line 37
def get_soap_operation(ops_doc)
  ops_doc.search('./soap:operation').map do |sa|
    attributes_2_methods(sa)
  end.flatten
end