soap4r 1.5.7 → 1.5.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (199) hide show
  1. data/bin/wsdl2ruby.rb +8 -2
  2. data/lib/soap/baseData.rb +93 -43
  3. data/lib/soap/element.rb +11 -8
  4. data/lib/soap/encodingstyle/handler.rb +15 -4
  5. data/lib/soap/encodingstyle/literalHandler.rb +18 -24
  6. data/lib/soap/encodingstyle/soapHandler.rb +34 -77
  7. data/lib/soap/generator.rb +74 -48
  8. data/lib/soap/header/handler.rb +1 -1
  9. data/lib/soap/header/mappinghandler.rb +47 -0
  10. data/lib/soap/mapping/encodedregistry.rb +19 -13
  11. data/lib/soap/mapping/factory.rb +19 -3
  12. data/lib/soap/mapping/literalregistry.rb +47 -35
  13. data/lib/soap/mapping/mapping.rb +92 -24
  14. data/lib/soap/mapping/registry.rb +34 -18
  15. data/lib/soap/mapping/schemadefinition.rb +8 -1
  16. data/lib/soap/mapping/typeMap.rb +18 -0
  17. data/lib/soap/mapping/wsdlencodedregistry.rb +8 -50
  18. data/lib/soap/mapping/wsdlliteralregistry.rb +45 -39
  19. data/lib/soap/nestedexception.rb +42 -0
  20. data/lib/soap/netHttpClient.rb +1 -0
  21. data/lib/soap/ns.rb +34 -0
  22. data/lib/soap/parser.rb +32 -29
  23. data/lib/soap/processor.rb +1 -1
  24. data/lib/soap/rpc/driver.rb +1 -0
  25. data/lib/soap/rpc/element.rb +18 -6
  26. data/lib/soap/rpc/httpserver.rb +38 -24
  27. data/lib/soap/rpc/proxy.rb +14 -11
  28. data/lib/soap/rpc/router.rb +4 -1
  29. data/lib/soap/soap.rb +7 -6
  30. data/lib/soap/wsdlDriver.rb +29 -8
  31. data/lib/tags +5690 -0
  32. data/lib/wsdl/definitions.rb +26 -40
  33. data/lib/wsdl/info.rb +11 -0
  34. data/lib/wsdl/parser.rb +2 -2
  35. data/lib/wsdl/soap/cgiStubCreator.rb +10 -5
  36. data/lib/wsdl/soap/classDefCreator.rb +140 -113
  37. data/lib/wsdl/soap/classDefCreatorSupport.rb +94 -12
  38. data/lib/wsdl/soap/classNameCreator.rb +54 -0
  39. data/lib/wsdl/soap/clientSkeltonCreator.rb +6 -5
  40. data/lib/wsdl/soap/complexType.rb +10 -1
  41. data/lib/wsdl/soap/definitions.rb +4 -0
  42. data/lib/wsdl/soap/driverCreator.rb +14 -6
  43. data/lib/wsdl/soap/element.rb +4 -0
  44. data/lib/wsdl/soap/encodedMappingRegistryCreator.rb +11 -55
  45. data/lib/wsdl/soap/literalMappingRegistryCreator.rb +28 -126
  46. data/lib/wsdl/soap/mappingRegistryCreator.rb +9 -3
  47. data/lib/wsdl/soap/mappingRegistryCreatorSupport.rb +209 -94
  48. data/lib/wsdl/soap/methodDefCreator.rb +12 -16
  49. data/lib/wsdl/soap/servantSkeltonCreator.rb +3 -2
  50. data/lib/wsdl/soap/servletStubCreator.rb +107 -0
  51. data/lib/wsdl/soap/standaloneServerStubCreator.rb +10 -5
  52. data/lib/wsdl/soap/wsdl2ruby.rb +28 -13
  53. data/lib/wsdl/wsdl.rb +2 -1
  54. data/lib/wsdl/xmlSchema/anyAttribute.rb +48 -0
  55. data/lib/wsdl/xmlSchema/attributeGroup.rb +86 -0
  56. data/lib/wsdl/xmlSchema/choice.rb +4 -1
  57. data/lib/wsdl/xmlSchema/complexContent.rb +1 -1
  58. data/lib/wsdl/xmlSchema/complexExtension.rb +9 -1
  59. data/lib/wsdl/xmlSchema/complexRestriction.rb +8 -0
  60. data/lib/wsdl/xmlSchema/complexType.rb +38 -5
  61. data/lib/wsdl/xmlSchema/data.rb +30 -7
  62. data/lib/wsdl/xmlSchema/element.rb +10 -2
  63. data/lib/wsdl/xmlSchema/fractiondigits.rb +37 -0
  64. data/lib/wsdl/xmlSchema/group.rb +118 -0
  65. data/lib/wsdl/xmlSchema/import.rb +11 -23
  66. data/lib/wsdl/xmlSchema/importHandler.rb +45 -0
  67. data/lib/wsdl/xmlSchema/include.rb +11 -17
  68. data/lib/wsdl/xmlSchema/length.rb +3 -1
  69. data/lib/wsdl/xmlSchema/maxexclusive.rb +37 -0
  70. data/lib/wsdl/xmlSchema/maxinclusive.rb +37 -0
  71. data/lib/wsdl/xmlSchema/maxlength.rb +3 -1
  72. data/lib/wsdl/xmlSchema/minexclusive.rb +37 -0
  73. data/lib/wsdl/xmlSchema/mininclusive.rb +37 -0
  74. data/lib/wsdl/xmlSchema/minlength.rb +3 -1
  75. data/lib/wsdl/xmlSchema/schema.rb +34 -0
  76. data/lib/wsdl/xmlSchema/sequence.rb +4 -1
  77. data/lib/wsdl/xmlSchema/simpleExtension.rb +8 -0
  78. data/lib/wsdl/xmlSchema/simpleRestriction.rb +49 -8
  79. data/lib/wsdl/xmlSchema/totaldigits.rb +37 -0
  80. data/lib/wsdl/xmlSchema/whitespace.rb +37 -0
  81. data/lib/wsdl/xmlSchema/xsd2ruby.rb +13 -4
  82. data/lib/xsd/charset.rb +8 -6
  83. data/lib/xsd/codegen/classdef.rb +5 -0
  84. data/lib/xsd/codegen/moduledef.rb +17 -0
  85. data/lib/xsd/datatypes.rb +165 -20
  86. data/lib/xsd/mapping.rb +13 -5
  87. data/lib/xsd/namedelements.rb +8 -0
  88. data/lib/xsd/ns.rb +50 -14
  89. data/lib/xsd/qname.rb +3 -2
  90. data/lib/xsd/xmlparser.rb +4 -3
  91. data/test/soap/asp.net/test_aspdotnet.rb +1 -1
  92. data/test/soap/auth/test_basic.rb +4 -3
  93. data/test/soap/auth/test_digest.rb +4 -3
  94. data/test/soap/calc/test_calc.rb +6 -4
  95. data/test/soap/calc/test_calc2.rb +6 -4
  96. data/test/soap/calc/test_calc_cgi.rb +6 -4
  97. data/test/soap/fault/test_customfault.rb +6 -4
  98. data/test/soap/fault/test_soaparray.rb +35 -0
  99. data/test/soap/filter/test_filter.rb +2 -2
  100. data/test/soap/header/test_authheader.rb +2 -2
  101. data/test/soap/header/test_authheader_cgi.rb +3 -3
  102. data/test/soap/header/test_simplehandler.rb +2 -2
  103. data/test/soap/helloworld/test_helloworld.rb +6 -4
  104. data/test/soap/ssl/test_ssl.rb +1 -1
  105. data/test/soap/struct/test_struct.rb +2 -2
  106. data/test/soap/swa/test_file.rb +6 -4
  107. data/test/soap/test_basetype.rb +4 -4
  108. data/test/soap/test_cookie.rb +2 -2
  109. data/test/soap/test_custom_ns.rb +50 -8
  110. data/test/soap/test_custommap.rb +6 -4
  111. data/test/soap/test_empty.rb +6 -4
  112. data/test/soap/test_envelopenamespace.rb +2 -2
  113. data/test/soap/test_extraattr.rb +6 -7
  114. data/test/soap/test_generator.rb +27 -0
  115. data/test/soap/test_mapping.rb +10 -0
  116. data/test/soap/test_nestedexception.rb +56 -0
  117. data/test/soap/test_nil.rb +6 -4
  118. data/test/soap/test_no_indent.rb +6 -4
  119. data/test/soap/test_response_as_xml.rb +2 -2
  120. data/test/soap/test_streamhandler.rb +6 -3
  121. data/test/soap/test_styleuse.rb +2 -2
  122. data/test/soap/wsdlDriver/test_calc.rb +2 -2
  123. data/test/soap/wsdlDriver/test_document.rb +2 -2
  124. data/test/soap/wsdlDriver/test_simpletype.rb +2 -2
  125. data/test/wsdl/abstract/test_abstract.rb +1 -1
  126. data/test/wsdl/anonymous/expectedClassDef.rb +128 -0
  127. data/test/wsdl/anonymous/expectedDriver.rb +59 -0
  128. data/test/wsdl/anonymous/expectedMappingRegistry.rb +176 -0
  129. data/test/wsdl/anonymous/lp.wsdl +147 -0
  130. data/test/wsdl/anonymous/test_anonymous.rb +130 -0
  131. data/test/wsdl/any/expectedDriver.rb +3 -2
  132. data/test/wsdl/any/expectedEcho.rb +22 -2
  133. data/test/wsdl/any/expectedMappingRegistry.rb +63 -0
  134. data/test/wsdl/any/expectedService.rb +3 -1
  135. data/test/wsdl/any/test_any.rb +2 -7
  136. data/test/wsdl/axisArray/axisArray.wsdl +31 -4
  137. data/test/wsdl/axisArray/test_axisarray.rb +58 -3
  138. data/test/wsdl/choice/choice.wsdl +39 -0
  139. data/test/wsdl/choice/test_choice.rb +134 -7
  140. data/test/wsdl/complexcontent/test_echo.rb +1 -1
  141. data/test/wsdl/datetime/test_datetime.rb +2 -2
  142. data/test/wsdl/document/array/double.wsdl +45 -6
  143. data/test/wsdl/document/array/test_array.rb +68 -1
  144. data/test/wsdl/document/document.wsdl +2 -0
  145. data/test/wsdl/document/test_nosoapaction.rb +1 -1
  146. data/test/wsdl/document/test_number.rb +1 -1
  147. data/test/wsdl/document/test_rpc.rb +78 -9
  148. data/test/wsdl/fault/test_fault.rb +1 -1
  149. data/test/wsdl/fault/test_multifault.rb +1 -1
  150. data/test/wsdl/group/expectedClassdef.rb +58 -0
  151. data/test/wsdl/group/expectedDriver.rb +51 -0
  152. data/test/wsdl/group/expectedMappingRegistry.rb +67 -0
  153. data/test/wsdl/group/group.wsdl +88 -0
  154. data/test/wsdl/group/test_rpc.rb +145 -0
  155. data/test/wsdl/list/test_list.rb +1 -1
  156. data/test/wsdl/map/test_map.rb +2 -2
  157. data/test/wsdl/marshal/person_org.rb +5 -0
  158. data/test/wsdl/multiplefault.wsdl +11 -4
  159. data/test/wsdl/oneway/test_oneway.rb +1 -1
  160. data/test/wsdl/overload/test_overload.rb +1 -1
  161. data/test/wsdl/qualified/test_qualified.rb +1 -1
  162. data/test/wsdl/qualified/test_unqualified.rb +1 -1
  163. data/test/wsdl/raa/RAAService.rb +62 -57
  164. data/test/wsdl/raa/expectedClassDef.rb +100 -0
  165. data/test/wsdl/raa/expectedDriver.rb +96 -0
  166. data/test/wsdl/raa/expectedMappingRegistry.rb +121 -0
  167. data/test/wsdl/raa/test_raa.rb +54 -19
  168. data/test/wsdl/ref/expectedDriver.rb +1 -1
  169. data/test/wsdl/ref/expectedProduct.rb +101 -16
  170. data/test/wsdl/ref/test_ref.rb +2 -1
  171. data/test/wsdl/rpc/test_rpc.rb +1 -2
  172. data/test/wsdl/rpc/test_rpc_lit.rb +13 -13
  173. data/test/wsdl/simplecontent/test_simplecontent.rb +5 -5
  174. data/test/wsdl/simpletype/rpc/expectedDriver.rb +3 -2
  175. data/test/wsdl/simpletype/rpc/expectedEchoVersion.rb +2 -0
  176. data/test/wsdl/simpletype/rpc/expectedMappingRegistry.rb +10 -17
  177. data/test/wsdl/simpletype/rpc/expectedService.rb +4 -2
  178. data/test/wsdl/simpletype/test_simpletype.rb +2 -2
  179. data/test/wsdl/soap/test_soapbodyparts.rb +2 -2
  180. data/test/wsdl/soap/wsdl2ruby/expectedClassdef.rb +2 -0
  181. data/test/wsdl/soap/wsdl2ruby/expectedDriver.rb +3 -2
  182. data/test/wsdl/soap/wsdl2ruby/expectedMappingRegistry.rb +5 -9
  183. data/test/wsdl/soap/wsdl2ruby/expectedService.cgi +4 -2
  184. data/test/wsdl/soap/wsdl2ruby/expectedService.rb +4 -2
  185. data/test/wsdl/soap/wsdl2ruby/section/expectedClassdef.rb +6 -0
  186. data/test/wsdl/soap/wsdl2ruby/soapenc/test_soapenc.rb +1 -1
  187. data/test/wsdl/soaptype/test_soaptype.rb +1 -1
  188. data/test/wsdl/test_multiplefault.rb +3 -1
  189. data/test/xsd/codegen/test_classdef.rb +30 -0
  190. data/test/xsd/test_ns.rb +21 -0
  191. data/test/xsd/test_xsd.rb +5 -4
  192. data/test/xsd/xsd2ruby/expected_mysample.rb +13 -2
  193. data/test/xsd/xsd2ruby/expected_mysample_mapping_registry.rb +5 -11
  194. data/test/xsd/xsd2ruby/section.xsd +8 -0
  195. metadata +40 -8
  196. data/test/wsdl/axisArray/itemList.rb +0 -14
  197. data/test/wsdl/raa/RAA.rb +0 -120
  198. data/test/wsdl/raa/RAAServant.rb +0 -107
  199. data/test/wsdl/raa/server.rb +0 -103
@@ -231,8 +231,8 @@ class TestStyleUse < Test::Unit::TestCase
231
231
  end
232
232
 
233
233
  def teardown
234
- teardown_server
235
- teardown_client
234
+ teardown_server if @server
235
+ teardown_client if @client
236
236
  end
237
237
 
238
238
  def teardown_server
@@ -42,8 +42,8 @@ class TestCalc < Test::Unit::TestCase
42
42
  end
43
43
 
44
44
  def teardown
45
- teardown_server
46
- teardown_client
45
+ teardown_server if @server
46
+ teardown_client if @client
47
47
  end
48
48
 
49
49
  def teardown_server
@@ -43,8 +43,8 @@ class TestDocument < Test::Unit::TestCase
43
43
  end
44
44
 
45
45
  def teardown
46
- teardown_server
47
- teardown_client
46
+ teardown_server if @server
47
+ teardown_client if @client
48
48
  end
49
49
 
50
50
  def teardown_server
@@ -49,8 +49,8 @@ class TestSimpleType < Test::Unit::TestCase
49
49
  end
50
50
 
51
51
  def teardown
52
- teardown_server
53
- teardown_client
52
+ teardown_server if @server
53
+ teardown_client if @client
54
54
  end
55
55
 
56
56
  def teardown_server
@@ -52,7 +52,7 @@ class TestAbstract < Test::Unit::TestCase
52
52
  end
53
53
 
54
54
  def teardown
55
- teardown_server
55
+ teardown_server if @server
56
56
  unless $DEBUG
57
57
  File.unlink(pathname('abstract.rb'))
58
58
  File.unlink(pathname('abstractMappingRegistry.rb'))
@@ -0,0 +1,128 @@
1
+ require 'xsd/qname'
2
+
3
+ module WSDL; module Anonymous
4
+
5
+
6
+ # {urn:lp}Header
7
+ # header3 - SOAP::SOAPString
8
+ class Header
9
+ attr_accessor :header3
10
+
11
+ def initialize(header3 = nil)
12
+ @header3 = header3
13
+ end
14
+ end
15
+
16
+ # {urn:lp}ExtraInfo
17
+ class ExtraInfo < ::Array
18
+
19
+ # {}Entry
20
+ # key - SOAP::SOAPString
21
+ # value - SOAP::SOAPString
22
+ class Entry
23
+ attr_accessor :key
24
+ attr_accessor :value
25
+
26
+ def initialize(key = nil, value = nil)
27
+ @key = key
28
+ @value = value
29
+ end
30
+ end
31
+ end
32
+
33
+ # {urn:lp}loginResponse
34
+ # loginResult - WSDL::Anonymous::LoginResponse::LoginResult
35
+ class LoginResponse
36
+
37
+ # inner class for member: loginResult
38
+ # {}loginResult
39
+ # sessionID - SOAP::SOAPString
40
+ class LoginResult
41
+ attr_accessor :sessionID
42
+
43
+ def initialize(sessionID = nil)
44
+ @sessionID = sessionID
45
+ end
46
+ end
47
+
48
+ attr_accessor :loginResult
49
+
50
+ def initialize(loginResult = nil)
51
+ @loginResult = loginResult
52
+ end
53
+ end
54
+
55
+ # {urn:lp}Pack
56
+ # header - WSDL::Anonymous::Pack::Header
57
+ class Pack
58
+
59
+ # inner class for member: Header
60
+ # {}Header
61
+ # header1 - SOAP::SOAPString
62
+ class Header
63
+ attr_accessor :header1
64
+
65
+ def initialize(header1 = nil)
66
+ @header1 = header1
67
+ end
68
+ end
69
+
70
+ attr_accessor :header
71
+
72
+ def initialize(header = nil)
73
+ @header = header
74
+ end
75
+ end
76
+
77
+ # {urn:lp}Envelope
78
+ # header - WSDL::Anonymous::Envelope::Header
79
+ class Envelope
80
+
81
+ # inner class for member: Header
82
+ # {}Header
83
+ # header2 - SOAP::SOAPString
84
+ class Header
85
+ attr_accessor :header2
86
+
87
+ def initialize(header2 = nil)
88
+ @header2 = header2
89
+ end
90
+ end
91
+
92
+ attr_accessor :header
93
+
94
+ def initialize(header = nil)
95
+ @header = header
96
+ end
97
+ end
98
+
99
+ # {urn:lp}login
100
+ # loginRequest - WSDL::Anonymous::Login::LoginRequest
101
+ class Login
102
+
103
+ # inner class for member: loginRequest
104
+ # {}loginRequest
105
+ # username - SOAP::SOAPString
106
+ # password - SOAP::SOAPString
107
+ # timezone - SOAP::SOAPString
108
+ class LoginRequest
109
+ attr_accessor :username
110
+ attr_accessor :password
111
+ attr_accessor :timezone
112
+
113
+ def initialize(username = nil, password = nil, timezone = nil)
114
+ @username = username
115
+ @password = password
116
+ @timezone = timezone
117
+ end
118
+ end
119
+
120
+ attr_accessor :loginRequest
121
+
122
+ def initialize(loginRequest = nil)
123
+ @loginRequest = loginRequest
124
+ end
125
+ end
126
+
127
+
128
+ end; end
@@ -0,0 +1,59 @@
1
+ require 'lp.rb'
2
+ require 'lpMappingRegistry.rb'
3
+ require 'soap/rpc/driver'
4
+
5
+ module WSDL::Anonymous
6
+
7
+ class Lp_porttype < ::SOAP::RPC::Driver
8
+ DefaultEndpointUrl = "http://localhost:17171/"
9
+
10
+ Methods = [
11
+ [ "urn:lp:login",
12
+ "login",
13
+ [ ["in", "parameters", ["::SOAP::SOAPElement", "urn:lp", "login"]],
14
+ ["out", "parameters", ["::SOAP::SOAPElement", "urn:lp", "loginResponse"]] ],
15
+ { :request_style => :document, :request_use => :literal,
16
+ :response_style => :document, :response_use => :literal,
17
+ :faults => {} }
18
+ ],
19
+ [ "urn:lp:echo",
20
+ "echo",
21
+ [ ["in", "parameters", ["::SOAP::SOAPElement", "urn:lp", "Pack"]],
22
+ ["out", "parameters", ["::SOAP::SOAPElement", "urn:lp", "Envelope"]] ],
23
+ { :request_style => :document, :request_use => :literal,
24
+ :response_style => :document, :response_use => :literal,
25
+ :faults => {} }
26
+ ]
27
+ ]
28
+
29
+ def initialize(endpoint_url = nil)
30
+ endpoint_url ||= DefaultEndpointUrl
31
+ super(endpoint_url, nil)
32
+ self.mapping_registry = LpMappingRegistry::EncodedRegistry
33
+ self.literal_mapping_registry = LpMappingRegistry::LiteralRegistry
34
+ init_methods
35
+ end
36
+
37
+ private
38
+
39
+ def init_methods
40
+ Methods.each do |definitions|
41
+ opt = definitions.last
42
+ if opt[:request_style] == :document
43
+ add_document_operation(*definitions)
44
+ else
45
+ add_rpc_operation(*definitions)
46
+ qname = definitions[0]
47
+ name = definitions[2]
48
+ if qname.name != name and qname.name.capitalize == name.capitalize
49
+ ::SOAP::Mapping.define_singleton_method(self, qname.name) do |*arg|
50
+ __send__(name, *arg)
51
+ end
52
+ end
53
+ end
54
+ end
55
+ end
56
+ end
57
+
58
+
59
+ end
@@ -0,0 +1,176 @@
1
+ require 'lp.rb'
2
+ require 'soap/mapping'
3
+
4
+ module WSDL; module Anonymous
5
+
6
+ module LpMappingRegistry
7
+ EncodedRegistry = ::SOAP::Mapping::EncodedRegistry.new
8
+ LiteralRegistry = ::SOAP::Mapping::LiteralRegistry.new
9
+ NsLp = "urn:lp"
10
+
11
+ EncodedRegistry.register(
12
+ :class => WSDL::Anonymous::Header,
13
+ :schema_type => XSD::QName.new(NsLp, "Header"),
14
+ :schema_element => [
15
+ ["header3", ["SOAP::SOAPString", XSD::QName.new(nil, "Header3")]]
16
+ ]
17
+ )
18
+
19
+ EncodedRegistry.register(
20
+ :class => WSDL::Anonymous::ExtraInfo,
21
+ :schema_type => XSD::QName.new(NsLp, "ExtraInfo"),
22
+ :schema_element => [
23
+ ["entry", ["WSDL::Anonymous::ExtraInfo::Entry[]", XSD::QName.new(nil, "Entry")], [1, nil]]
24
+ ]
25
+ )
26
+
27
+ EncodedRegistry.register(
28
+ :class => WSDL::Anonymous::ExtraInfo::Entry,
29
+ :schema_name => XSD::QName.new(nil, "Entry"),
30
+ :is_anonymous => true,
31
+ :schema_qualified => false,
32
+ :schema_element => [
33
+ ["key", ["SOAP::SOAPString", XSD::QName.new(nil, "Key")]],
34
+ ["value", ["SOAP::SOAPString", XSD::QName.new(nil, "Value")]]
35
+ ]
36
+ )
37
+
38
+ EncodedRegistry.register(
39
+ :class => WSDL::Anonymous::LoginResponse,
40
+ :schema_type => XSD::QName.new(NsLp, "loginResponse"),
41
+ :schema_element => [
42
+ ["loginResult", ["WSDL::Anonymous::LoginResponse::LoginResult", XSD::QName.new(nil, "loginResult")]]
43
+ ]
44
+ )
45
+
46
+ EncodedRegistry.register(
47
+ :class => WSDL::Anonymous::LoginResponse::LoginResult,
48
+ :schema_name => XSD::QName.new(nil, "loginResult"),
49
+ :is_anonymous => true,
50
+ :schema_qualified => false,
51
+ :schema_element => [
52
+ ["sessionID", "SOAP::SOAPString"]
53
+ ]
54
+ )
55
+
56
+ LiteralRegistry.register(
57
+ :class => WSDL::Anonymous::Header,
58
+ :schema_type => XSD::QName.new(NsLp, "Header"),
59
+ :schema_element => [
60
+ ["header3", ["SOAP::SOAPString", XSD::QName.new(nil, "Header3")]]
61
+ ]
62
+ )
63
+
64
+ LiteralRegistry.register(
65
+ :class => WSDL::Anonymous::ExtraInfo,
66
+ :schema_type => XSD::QName.new(NsLp, "ExtraInfo"),
67
+ :schema_element => [
68
+ ["entry", ["WSDL::Anonymous::ExtraInfo::Entry[]", XSD::QName.new(nil, "Entry")], [1, nil]]
69
+ ]
70
+ )
71
+
72
+ LiteralRegistry.register(
73
+ :class => WSDL::Anonymous::ExtraInfo::Entry,
74
+ :schema_name => XSD::QName.new(nil, "Entry"),
75
+ :is_anonymous => true,
76
+ :schema_qualified => false,
77
+ :schema_element => [
78
+ ["key", ["SOAP::SOAPString", XSD::QName.new(nil, "Key")]],
79
+ ["value", ["SOAP::SOAPString", XSD::QName.new(nil, "Value")]]
80
+ ]
81
+ )
82
+
83
+ LiteralRegistry.register(
84
+ :class => WSDL::Anonymous::LoginResponse,
85
+ :schema_type => XSD::QName.new(NsLp, "loginResponse"),
86
+ :schema_element => [
87
+ ["loginResult", ["WSDL::Anonymous::LoginResponse::LoginResult", XSD::QName.new(nil, "loginResult")]]
88
+ ]
89
+ )
90
+
91
+ LiteralRegistry.register(
92
+ :class => WSDL::Anonymous::LoginResponse::LoginResult,
93
+ :schema_name => XSD::QName.new(nil, "loginResult"),
94
+ :is_anonymous => true,
95
+ :schema_qualified => false,
96
+ :schema_element => [
97
+ ["sessionID", "SOAP::SOAPString"]
98
+ ]
99
+ )
100
+
101
+ LiteralRegistry.register(
102
+ :class => WSDL::Anonymous::Pack,
103
+ :schema_name => XSD::QName.new(NsLp, "Pack"),
104
+ :schema_element => [
105
+ ["header", ["WSDL::Anonymous::Pack::Header", XSD::QName.new(nil, "Header")]]
106
+ ]
107
+ )
108
+
109
+ LiteralRegistry.register(
110
+ :class => WSDL::Anonymous::Pack::Header,
111
+ :schema_name => XSD::QName.new(nil, "Header"),
112
+ :is_anonymous => true,
113
+ :schema_qualified => false,
114
+ :schema_element => [
115
+ ["header1", ["SOAP::SOAPString", XSD::QName.new(nil, "Header1")]]
116
+ ]
117
+ )
118
+
119
+ LiteralRegistry.register(
120
+ :class => WSDL::Anonymous::Envelope,
121
+ :schema_name => XSD::QName.new(NsLp, "Envelope"),
122
+ :schema_element => [
123
+ ["header", ["WSDL::Anonymous::Envelope::Header", XSD::QName.new(nil, "Header")]]
124
+ ]
125
+ )
126
+
127
+ LiteralRegistry.register(
128
+ :class => WSDL::Anonymous::Envelope::Header,
129
+ :schema_name => XSD::QName.new(nil, "Header"),
130
+ :is_anonymous => true,
131
+ :schema_qualified => false,
132
+ :schema_element => [
133
+ ["header2", ["SOAP::SOAPString", XSD::QName.new(nil, "Header2")]]
134
+ ]
135
+ )
136
+
137
+ LiteralRegistry.register(
138
+ :class => WSDL::Anonymous::Login,
139
+ :schema_name => XSD::QName.new(NsLp, "login"),
140
+ :schema_element => [
141
+ ["loginRequest", ["WSDL::Anonymous::Login::LoginRequest", XSD::QName.new(nil, "loginRequest")]]
142
+ ]
143
+ )
144
+
145
+ LiteralRegistry.register(
146
+ :class => WSDL::Anonymous::Login::LoginRequest,
147
+ :schema_name => XSD::QName.new(nil, "loginRequest"),
148
+ :is_anonymous => true,
149
+ :schema_qualified => false,
150
+ :schema_element => [
151
+ ["username", "SOAP::SOAPString"],
152
+ ["password", "SOAP::SOAPString"],
153
+ ["timezone", "SOAP::SOAPString", [0, 1]]
154
+ ]
155
+ )
156
+
157
+ LiteralRegistry.register(
158
+ :class => WSDL::Anonymous::LoginResponse,
159
+ :schema_name => XSD::QName.new(NsLp, "loginResponse"),
160
+ :schema_element => [
161
+ ["loginResult", ["WSDL::Anonymous::LoginResponse::LoginResult", XSD::QName.new(nil, "loginResult")]]
162
+ ]
163
+ )
164
+
165
+ LiteralRegistry.register(
166
+ :class => WSDL::Anonymous::LoginResponse::LoginResult,
167
+ :schema_name => XSD::QName.new(nil, "loginResult"),
168
+ :is_anonymous => true,
169
+ :schema_qualified => false,
170
+ :schema_element => [
171
+ ["sessionID", "SOAP::SOAPString"]
172
+ ]
173
+ )
174
+ end
175
+
176
+ end; end
@@ -0,0 +1,147 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <definitions
3
+ name="lp"
4
+ targetNamespace="urn:lp"
5
+ xmlns:tns="urn:lp"
6
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
7
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
8
+ xmlns="http://schemas.xmlsoap.org/wsdl/">
9
+ <types>
10
+ <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:lp">
11
+ <element name="Pack">
12
+ <complexType>
13
+ <sequence>
14
+ <element name="Header">
15
+ <complexType>
16
+ <sequence>
17
+ <element name="Header1" type="xsd:string"/>
18
+ </sequence>
19
+ </complexType>
20
+ </element>
21
+ </sequence>
22
+ </complexType>
23
+ </element>
24
+
25
+ <element name="Envelope">
26
+ <complexType>
27
+ <sequence>
28
+ <element name="Header">
29
+ <complexType>
30
+ <sequence>
31
+ <element name="Header2" type="xsd:string"/>
32
+ </sequence>
33
+ </complexType>
34
+ </element>
35
+ </sequence>
36
+ </complexType>
37
+ </element>
38
+
39
+ <complexType name="Header">
40
+ <sequence>
41
+ <element name="Header3" type="xsd:string"/>
42
+ </sequence>
43
+ </complexType>
44
+
45
+ <complexType name="ExtraInfo">
46
+ <annotation>
47
+ <documentation>Service specific information.</documentation>
48
+ </annotation>
49
+ <sequence>
50
+ <element maxOccurs="unbounded" name="Entry">
51
+ <complexType>
52
+ <sequence>
53
+ <element name="Key" type="xsd:string"/>
54
+ <element name="Value" type="xsd:string"/>
55
+ </sequence>
56
+ </complexType>
57
+ </element>
58
+ </sequence>
59
+ </complexType>
60
+
61
+ <element name="login">
62
+ <complexType>
63
+ <sequence>
64
+ <element name="loginRequest">
65
+ <complexType>
66
+ <sequence>
67
+ <element name="username" type="xsd:string"/>
68
+ <element name="password" type="xsd:string"/>
69
+ <element name="timezone" type="xsd:string" minOccurs="0" maxOccurs="1"/>
70
+ </sequence>
71
+ </complexType>
72
+ </element>
73
+ </sequence>
74
+ </complexType>
75
+ </element>
76
+
77
+ <complexType name="loginResponse">
78
+ <sequence>
79
+ <element name="loginResult">
80
+ <complexType>
81
+ <sequence>
82
+ <element name="sessionID" type="xsd:string"/>
83
+ </sequence>
84
+ </complexType>
85
+ </element>
86
+ </sequence>
87
+ </complexType>
88
+
89
+ <element name="loginResponse" type="tns:loginResponse"/>
90
+ </schema>
91
+ </types>
92
+
93
+ <message name="login_in">
94
+ <part name="parameters" element="tns:login" />
95
+ </message>
96
+ <message name="login_out">
97
+ <part name="parameters" element="tns:loginResponse" />
98
+ </message>
99
+
100
+ <message name="echo_in">
101
+ <part name="parameters" element="tns:Pack" />
102
+ </message>
103
+ <message name="echo_out">
104
+ <part name="parameters" element="tns:Envelope" />
105
+ </message>
106
+
107
+ <portType name="lp_porttype">
108
+ <operation name="login">
109
+ <input message="tns:login_in" />
110
+ <output message="tns:login_out" />
111
+ </operation>
112
+
113
+ <operation name="echo">
114
+ <input message="tns:echo_in" />
115
+ <output message="tns:echo_out" />
116
+ </operation>
117
+ </portType>
118
+
119
+ <binding name="lp_binding" type="tns:lp_porttype">
120
+ <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />
121
+ <operation name="login">
122
+ <soap:operation soapAction="urn:lp:login" style="document" />
123
+ <input>
124
+ <soap:body use="literal" />
125
+ </input>
126
+ <output>
127
+ <soap:body use="literal" />
128
+ </output>
129
+ </operation>
130
+
131
+ <operation name="echo">
132
+ <soap:operation soapAction="urn:lp:echo" style="document" />
133
+ <input>
134
+ <soap:body use="literal" />
135
+ </input>
136
+ <output>
137
+ <soap:body use="literal" />
138
+ </output>
139
+ </operation>
140
+ </binding>
141
+
142
+ <service name="lp_service">
143
+ <port name="lp_service_port" binding="tns:lp_binding">
144
+ <soap:address location="http://localhost:17171/" />
145
+ </port>
146
+ </service>
147
+ </definitions>