class Sekken::WSDL::DocumentCollection

Public Class Methods

new() click to toggle source
# File lib/sekken/wsdl/document_collection.rb, line 8
def initialize
  @documents = []
end

Public Instance Methods

<<(document) click to toggle source
# File lib/sekken/wsdl/document_collection.rb, line 12
def <<(document)
  @documents << document
end
bindings() click to toggle source
# File lib/sekken/wsdl/document_collection.rb, line 32
def bindings
  @bindings ||= collect_sections { |document| document.bindings }
end
each(&block) click to toggle source
# File lib/sekken/wsdl/document_collection.rb, line 16
def each(&block)
  @documents.each(&block)
end
messages() click to toggle source
# File lib/sekken/wsdl/document_collection.rb, line 24
def messages
  @messages ||= collect_sections { |document| document.messages }
end
port_types() click to toggle source
# File lib/sekken/wsdl/document_collection.rb, line 28
def port_types
  @port_types ||= collect_sections { |document| document.port_types }
end
service_name() click to toggle source
# File lib/sekken/wsdl/document_collection.rb, line 20
def service_name
  @service_name ||= first.service_name
end
service_port(service_name, port_name) click to toggle source

Public: Returns a port by service and port name.

# File lib/sekken/wsdl/document_collection.rb, line 41
def service_port(service_name, port_name)
  service = services.fetch(service_name)
  service.ports.fetch(port_name)
end
services() click to toggle source
# File lib/sekken/wsdl/document_collection.rb, line 36
def services
  @services ||= collect_sections { |document| document.services }
end

Private Instance Methods

collect_sections() { |document| ... } click to toggle source
# File lib/sekken/wsdl/document_collection.rb, line 48
def collect_sections
  result = {}

  each do |document|
    sections = yield document
    result.merge! sections
  end

  result
end