Class WSDL::Port
In: lib/wsdl/port.rb
Parent: Info

Methods

Attributes

binding  [R] 
name  [R] 
soap_address  [R] 

Public Class methods

[Source]

    # File lib/wsdl/port.rb, line 20
20:   def initialize
21:     super
22:     @name = nil
23:     @binding = nil
24:     @soap_address = nil
25:   end

Public Instance methods

[Source]

    # File lib/wsdl/port.rb, line 35
35:   def find_binding
36:     root.binding(@binding) or raise RuntimeError.new("#{@binding} not found")
37:   end

[Source]

    # File lib/wsdl/port.rb, line 39
39:   def inputoperation_map
40:     result = {}
41:     find_binding.operations.each do |op_bind|
42:       op_info = op_bind.soapoperation.input_info
43:       result[op_info.op_name] = op_info
44:     end
45:     result
46:   end

[Source]

    # File lib/wsdl/port.rb, line 48
48:   def outputoperation_map
49:     result = {}
50:     find_binding.operations.each do |op_bind|
51:       op_info = op_bind.soapoperation.output_info
52:       result[op_info.op_name] = op_info
53:     end
54:     result
55:   end

[Source]

    # File lib/wsdl/port.rb, line 71
71:   def parse_attr(attr, value)
72:     case attr
73:     when NameAttrName
74:       @name = XSD::QName.new(targetnamespace, value.source)
75:     when BindingAttrName
76:       @binding = value
77:     else
78:       nil
79:     end
80:   end

[Source]

    # File lib/wsdl/port.rb, line 57
57:   def parse_element(element)
58:     case element
59:     when SOAPAddressName
60:       o = WSDL::SOAP::Address.new
61:       @soap_address = o
62:       o
63:     when DocumentationName
64:       o = Documentation.new
65:       o
66:     else
67:       nil
68:     end
69:   end

[Source]

    # File lib/wsdl/port.rb, line 31
31:   def porttype
32:     root.porttype(find_binding.type)
33:   end

[Source]

    # File lib/wsdl/port.rb, line 27
27:   def targetnamespace
28:     parent.targetnamespace
29:   end

[Validate]