soap4r-sgonyea 1.5.9

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 (427) hide show
  1. data/bin/wsdl2ruby.rb +139 -0
  2. data/bin/xsd2ruby.rb +91 -0
  3. data/lib/soap/attachment.rb +109 -0
  4. data/lib/soap/attrproxy.rb +35 -0
  5. data/lib/soap/baseData.rb +1095 -0
  6. data/lib/soap/element.rb +278 -0
  7. data/lib/soap/encodingstyle/aspDotNetHandler.rb +208 -0
  8. data/lib/soap/encodingstyle/handler.rb +121 -0
  9. data/lib/soap/encodingstyle/literalHandler.rb +196 -0
  10. data/lib/soap/encodingstyle/soapHandler.rb +560 -0
  11. data/lib/soap/filter.rb +14 -0
  12. data/lib/soap/filter/filterchain.rb +52 -0
  13. data/lib/soap/filter/handler.rb +32 -0
  14. data/lib/soap/filter/streamhandler.rb +30 -0
  15. data/lib/soap/generator.rb +299 -0
  16. data/lib/soap/header/handler.rb +62 -0
  17. data/lib/soap/header/handlerset.rb +71 -0
  18. data/lib/soap/header/mappinghandler.rb +48 -0
  19. data/lib/soap/header/simplehandler.rb +45 -0
  20. data/lib/soap/httpconfigloader.rb +140 -0
  21. data/lib/soap/mapping.rb +13 -0
  22. data/lib/soap/mapping/encodedregistry.rb +539 -0
  23. data/lib/soap/mapping/factory.rb +389 -0
  24. data/lib/soap/mapping/literalregistry.rb +392 -0
  25. data/lib/soap/mapping/mapping.rb +577 -0
  26. data/lib/soap/mapping/registry.rb +296 -0
  27. data/lib/soap/mapping/rubytypeFactory.rb +446 -0
  28. data/lib/soap/mapping/schemadefinition.rb +171 -0
  29. data/lib/soap/mapping/typeMap.rb +107 -0
  30. data/lib/soap/mapping/wsdlencodedregistry.rb +212 -0
  31. data/lib/soap/mapping/wsdlliteralregistry.rb +249 -0
  32. data/lib/soap/marshal.rb +60 -0
  33. data/lib/soap/mimemessage.rb +243 -0
  34. data/lib/soap/nestedexception.rb +43 -0
  35. data/lib/soap/netHttpClient.rb +242 -0
  36. data/lib/soap/ns.rb +39 -0
  37. data/lib/soap/parser.rb +253 -0
  38. data/lib/soap/processor.rb +67 -0
  39. data/lib/soap/property.rb +340 -0
  40. data/lib/soap/proxy.rb +15 -0
  41. data/lib/soap/rpc/cgistub.rb +248 -0
  42. data/lib/soap/rpc/driver.rb +222 -0
  43. data/lib/soap/rpc/element.rb +375 -0
  44. data/lib/soap/rpc/httpserver.rb +143 -0
  45. data/lib/soap/rpc/methodDef.rb +69 -0
  46. data/lib/soap/rpc/proxy.rb +573 -0
  47. data/lib/soap/rpc/router.rb +663 -0
  48. data/lib/soap/rpc/rpc.rb +26 -0
  49. data/lib/soap/rpc/soaplet.rb +201 -0
  50. data/lib/soap/rpc/standaloneServer.rb +44 -0
  51. data/lib/soap/soap.rb +154 -0
  52. data/lib/soap/streamHandler.rb +302 -0
  53. data/lib/soap/version.rb +9 -0
  54. data/lib/soap/wsdlDriver.rb +165 -0
  55. data/lib/wsdl/binding.rb +66 -0
  56. data/lib/wsdl/data.rb +65 -0
  57. data/lib/wsdl/definitions.rb +237 -0
  58. data/lib/wsdl/documentation.rb +33 -0
  59. data/lib/wsdl/import.rb +81 -0
  60. data/lib/wsdl/importer.rb +39 -0
  61. data/lib/wsdl/info.rb +51 -0
  62. data/lib/wsdl/message.rb +55 -0
  63. data/lib/wsdl/operation.rb +152 -0
  64. data/lib/wsdl/operationBinding.rb +241 -0
  65. data/lib/wsdl/param.rb +94 -0
  66. data/lib/wsdl/parser.rb +165 -0
  67. data/lib/wsdl/part.rb +53 -0
  68. data/lib/wsdl/port.rb +67 -0
  69. data/lib/wsdl/portType.rb +76 -0
  70. data/lib/wsdl/service.rb +62 -0
  71. data/lib/wsdl/soap/address.rb +41 -0
  72. data/lib/wsdl/soap/binding.rb +50 -0
  73. data/lib/wsdl/soap/body.rb +59 -0
  74. data/lib/wsdl/soap/cgiStubCreator.rb +93 -0
  75. data/lib/wsdl/soap/classDefCreator.rb +434 -0
  76. data/lib/wsdl/soap/classDefCreatorSupport.rb +241 -0
  77. data/lib/wsdl/soap/classNameCreator.rb +55 -0
  78. data/lib/wsdl/soap/clientSkeltonCreator.rb +107 -0
  79. data/lib/wsdl/soap/complexType.rb +174 -0
  80. data/lib/wsdl/soap/data.rb +43 -0
  81. data/lib/wsdl/soap/definitions.rb +201 -0
  82. data/lib/wsdl/soap/driverCreator.rb +121 -0
  83. data/lib/wsdl/soap/element.rb +34 -0
  84. data/lib/wsdl/soap/encodedMappingRegistryCreator.rb +74 -0
  85. data/lib/wsdl/soap/fault.rb +57 -0
  86. data/lib/wsdl/soap/header.rb +87 -0
  87. data/lib/wsdl/soap/headerfault.rb +57 -0
  88. data/lib/wsdl/soap/literalMappingRegistryCreator.rb +116 -0
  89. data/lib/wsdl/soap/mappingRegistryCreator.rb +59 -0
  90. data/lib/wsdl/soap/mappingRegistryCreatorSupport.rb +377 -0
  91. data/lib/wsdl/soap/methodDefCreator.rb +200 -0
  92. data/lib/wsdl/soap/operation.rb +113 -0
  93. data/lib/wsdl/soap/servantSkeltonCreator.rb +92 -0
  94. data/lib/wsdl/soap/servletStubCreator.rb +105 -0
  95. data/lib/wsdl/soap/standaloneServerStubCreator.rb +101 -0
  96. data/lib/wsdl/soap/wsdl2ruby.rb +226 -0
  97. data/lib/wsdl/types.rb +45 -0
  98. data/lib/wsdl/wsdl.rb +25 -0
  99. data/lib/wsdl/xmlSchema/all.rb +25 -0
  100. data/lib/wsdl/xmlSchema/annotation.rb +35 -0
  101. data/lib/wsdl/xmlSchema/any.rb +62 -0
  102. data/lib/wsdl/xmlSchema/anyAttribute.rb +49 -0
  103. data/lib/wsdl/xmlSchema/attribute.rb +105 -0
  104. data/lib/wsdl/xmlSchema/attributeGroup.rb +69 -0
  105. data/lib/wsdl/xmlSchema/choice.rb +59 -0
  106. data/lib/wsdl/xmlSchema/complexContent.rb +98 -0
  107. data/lib/wsdl/xmlSchema/complexExtension.rb +120 -0
  108. data/lib/wsdl/xmlSchema/complexRestriction.rb +105 -0
  109. data/lib/wsdl/xmlSchema/complexType.rb +194 -0
  110. data/lib/wsdl/xmlSchema/content.rb +96 -0
  111. data/lib/wsdl/xmlSchema/data.rb +117 -0
  112. data/lib/wsdl/xmlSchema/element.rb +154 -0
  113. data/lib/wsdl/xmlSchema/enumeration.rb +37 -0
  114. data/lib/wsdl/xmlSchema/fractiondigits.rb +38 -0
  115. data/lib/wsdl/xmlSchema/group.rb +101 -0
  116. data/lib/wsdl/xmlSchema/import.rb +54 -0
  117. data/lib/wsdl/xmlSchema/importHandler.rb +46 -0
  118. data/lib/wsdl/xmlSchema/importer.rb +103 -0
  119. data/lib/wsdl/xmlSchema/include.rb +49 -0
  120. data/lib/wsdl/xmlSchema/length.rb +38 -0
  121. data/lib/wsdl/xmlSchema/list.rb +49 -0
  122. data/lib/wsdl/xmlSchema/maxexclusive.rb +38 -0
  123. data/lib/wsdl/xmlSchema/maxinclusive.rb +38 -0
  124. data/lib/wsdl/xmlSchema/maxlength.rb +38 -0
  125. data/lib/wsdl/xmlSchema/minexclusive.rb +38 -0
  126. data/lib/wsdl/xmlSchema/mininclusive.rb +38 -0
  127. data/lib/wsdl/xmlSchema/minlength.rb +38 -0
  128. data/lib/wsdl/xmlSchema/parser.rb +168 -0
  129. data/lib/wsdl/xmlSchema/pattern.rb +37 -0
  130. data/lib/wsdl/xmlSchema/ref.rb +34 -0
  131. data/lib/wsdl/xmlSchema/schema.rb +179 -0
  132. data/lib/wsdl/xmlSchema/sequence.rb +55 -0
  133. data/lib/wsdl/xmlSchema/simpleContent.rb +70 -0
  134. data/lib/wsdl/xmlSchema/simpleExtension.rb +63 -0
  135. data/lib/wsdl/xmlSchema/simpleRestriction.rb +133 -0
  136. data/lib/wsdl/xmlSchema/simpleType.rb +88 -0
  137. data/lib/wsdl/xmlSchema/totaldigits.rb +38 -0
  138. data/lib/wsdl/xmlSchema/union.rb +36 -0
  139. data/lib/wsdl/xmlSchema/unique.rb +35 -0
  140. data/lib/wsdl/xmlSchema/whitespace.rb +38 -0
  141. data/lib/wsdl/xmlSchema/xsd2ruby.rb +176 -0
  142. data/lib/xsd/charset.rb +190 -0
  143. data/lib/xsd/codegen.rb +13 -0
  144. data/lib/xsd/codegen/classdef.rb +209 -0
  145. data/lib/xsd/codegen/commentdef.rb +35 -0
  146. data/lib/xsd/codegen/gensupport.rb +277 -0
  147. data/lib/xsd/codegen/methoddef.rb +71 -0
  148. data/lib/xsd/codegen/moduledef.rb +209 -0
  149. data/lib/xsd/datatypes.rb +1466 -0
  150. data/lib/xsd/datatypes1999.rb +21 -0
  151. data/lib/xsd/iconvcharset.rb +34 -0
  152. data/lib/xsd/mapping.rb +69 -0
  153. data/lib/xsd/namedelements.rb +133 -0
  154. data/lib/xsd/ns.rb +183 -0
  155. data/lib/xsd/qname.rb +80 -0
  156. data/lib/xsd/xmlparser.rb +77 -0
  157. data/lib/xsd/xmlparser/libxmlparser.rb +116 -0
  158. data/lib/xsd/xmlparser/parser.rb +101 -0
  159. data/lib/xsd/xmlparser/rexmlparser.rb +59 -0
  160. data/lib/xsd/xmlparser/xmlparser.rb +51 -0
  161. data/lib/xsd/xmlparser/xmlscanner.rb +150 -0
  162. data/test/16runner.rb +69 -0
  163. data/test/helper.rb +7 -0
  164. data/test/interopR2/README.txt +2 -0
  165. data/test/interopR2/SOAPBuildersInterop_R2.wsdl +461 -0
  166. data/test/interopR2/SOAPBuildersInterop_R2GrB.wsdl +19 -0
  167. data/test/interopR2/base.rb +289 -0
  168. data/test/interopR2/client.NetRemoting.rb +18 -0
  169. data/test/interopR2/client.rb +1235 -0
  170. data/test/interopR2/client4S4C.rb +16 -0
  171. data/test/interopR2/client4S4C2.rb +15 -0
  172. data/test/interopR2/clientASP.NET.rb +18 -0
  173. data/test/interopR2/clientApacheAxis.rb +17 -0
  174. data/test/interopR2/clientApacheSOAP.rb +18 -0
  175. data/test/interopR2/clientBEAWebLogic.rb +18 -0
  176. data/test/interopR2/clientBase.rb +1968 -0
  177. data/test/interopR2/clientCapeConnect.rb +19 -0
  178. data/test/interopR2/clientDelphi.rb +20 -0
  179. data/test/interopR2/clientEasySoap.rb +15 -0
  180. data/test/interopR2/clientFrontier.rb +26 -0
  181. data/test/interopR2/clientGLUE.rb +33 -0
  182. data/test/interopR2/clientHP.rb +14 -0
  183. data/test/interopR2/clientJAX-RPC.rb +20 -0
  184. data/test/interopR2/clientJSOAP.rb +15 -0
  185. data/test/interopR2/clientKafkaXSLT.rb +16 -0
  186. data/test/interopR2/clientMSSOAPToolkit2.0.rb +18 -0
  187. data/test/interopR2/clientMSSOAPToolkit3.0.rb +18 -0
  188. data/test/interopR2/clientNuSOAP.rb +20 -0
  189. data/test/interopR2/clientNuWave.rb +16 -0
  190. data/test/interopR2/clientOpenLink.rb +16 -0
  191. data/test/interopR2/clientOracle.rb +16 -0
  192. data/test/interopR2/clientPEAR.rb +19 -0
  193. data/test/interopR2/clientPhalanx.rb +19 -0
  194. data/test/interopR2/clientSIMACE.rb +19 -0
  195. data/test/interopR2/clientSOAP4R.rb +19 -0
  196. data/test/interopR2/clientSOAP__Lite.rb +15 -0
  197. data/test/interopR2/clientSQLData.rb +19 -0
  198. data/test/interopR2/clientSilverStream.rb +18 -0
  199. data/test/interopR2/clientSpray2001.rb +18 -0
  200. data/test/interopR2/clientSun.rb +20 -0
  201. data/test/interopR2/clientVWOpentalkSoap.rb +20 -0
  202. data/test/interopR2/clientWASP.rb +20 -0
  203. data/test/interopR2/clientWASPC.rb +19 -0
  204. data/test/interopR2/clientWebMethods.rb +16 -0
  205. data/test/interopR2/clientWhiteMesa.rb +29 -0
  206. data/test/interopR2/clientWingfoot.rb +16 -0
  207. data/test/interopR2/clientXMLBus.rb +20 -0
  208. data/test/interopR2/clientXMLRPC-EPI.rb +18 -0
  209. data/test/interopR2/clientXSOAP.rb +15 -0
  210. data/test/interopR2/clientZSI.rb +20 -0
  211. data/test/interopR2/clienteSOAP.rb +19 -0
  212. data/test/interopR2/clientgSOAP.rb +19 -0
  213. data/test/interopR2/clientkSOAP.rb +18 -0
  214. data/test/interopR2/iSimonReg.rb +113 -0
  215. data/test/interopR2/interopResultBase.rb +115 -0
  216. data/test/interopR2/interopService.rb +248 -0
  217. data/test/interopR2/rwikiInteropService.rb +106 -0
  218. data/test/interopR2/server.cgi +271 -0
  219. data/test/interopR2/server.rb +276 -0
  220. data/test/interopR2/simonReg.rb +124 -0
  221. data/test/interopR2/test.sh +49 -0
  222. data/test/interopR4/client.rb +113 -0
  223. data/test/runner.rb +8 -0
  224. data/test/sm11/classDef.rb +157 -0
  225. data/test/sm11/client.rb +543 -0
  226. data/test/sm11/driver.rb +184 -0
  227. data/test/sm11/servant.rb +1068 -0
  228. data/test/sm11/server.rb +26 -0
  229. data/test/soap/asp.net/hello.wsdl +96 -0
  230. data/test/soap/asp.net/test_aspdotnet.rb +124 -0
  231. data/test/soap/auth/htdigest +2 -0
  232. data/test/soap/auth/htpasswd +2 -0
  233. data/test/soap/auth/test_basic.rb +118 -0
  234. data/test/soap/auth/test_digest.rb +119 -0
  235. data/test/soap/calc/calc.rb +18 -0
  236. data/test/soap/calc/calc2.rb +30 -0
  237. data/test/soap/calc/server.cgi +16 -0
  238. data/test/soap/calc/server.rb +18 -0
  239. data/test/soap/calc/server2.rb +21 -0
  240. data/test/soap/calc/test_calc.rb +53 -0
  241. data/test/soap/calc/test_calc2.rb +57 -0
  242. data/test/soap/calc/test_calc_cgi.rb +72 -0
  243. data/test/soap/case/test_mapping.rb +58 -0
  244. data/test/soap/fault/test_customfault.rb +61 -0
  245. data/test/soap/fault/test_fault.rb +47 -0
  246. data/test/soap/fault/test_soaparray.rb +36 -0
  247. data/test/soap/filter/test_filter.rb +147 -0
  248. data/test/soap/header/server.cgi +121 -0
  249. data/test/soap/header/test_authheader.rb +241 -0
  250. data/test/soap/header/test_authheader_cgi.rb +122 -0
  251. data/test/soap/header/test_simplehandler.rb +117 -0
  252. data/test/soap/helloworld/hw_s.rb +17 -0
  253. data/test/soap/helloworld/test_helloworld.rb +45 -0
  254. data/test/soap/htpasswd +2 -0
  255. data/test/soap/literalArrayMapping/amazonEc.rb +4779 -0
  256. data/test/soap/literalArrayMapping/amazonEcDriver.rb +173 -0
  257. data/test/soap/literalArrayMapping/amazonresponse.xml +100 -0
  258. data/test/soap/literalArrayMapping/test_definedarray.rb +35 -0
  259. data/test/soap/marshal/marshaltestlib.rb +498 -0
  260. data/test/soap/marshal/test_digraph.rb +57 -0
  261. data/test/soap/marshal/test_marshal.rb +28 -0
  262. data/test/soap/marshal/test_struct.rb +48 -0
  263. data/test/soap/ssl/README +1 -0
  264. data/test/soap/ssl/ca.cert +23 -0
  265. data/test/soap/ssl/client.cert +19 -0
  266. data/test/soap/ssl/client.key +15 -0
  267. data/test/soap/ssl/server.cert +19 -0
  268. data/test/soap/ssl/server.key +15 -0
  269. data/test/soap/ssl/sslsvr.rb +59 -0
  270. data/test/soap/ssl/subca.cert +21 -0
  271. data/test/soap/ssl/test_ssl.rb +236 -0
  272. data/test/soap/struct/test_struct.rb +71 -0
  273. data/test/soap/styleuse/client.rb +21 -0
  274. data/test/soap/styleuse/server.rb +87 -0
  275. data/test/soap/swa/test_file.rb +76 -0
  276. data/test/soap/test_basetype.rb +1091 -0
  277. data/test/soap/test_cookie.rb +113 -0
  278. data/test/soap/test_custom_ns.rb +106 -0
  279. data/test/soap/test_custommap.rb +111 -0
  280. data/test/soap/test_empty.rb +106 -0
  281. data/test/soap/test_envelopenamespace.rb +86 -0
  282. data/test/soap/test_extraattr.rb +55 -0
  283. data/test/soap/test_generator.rb +32 -0
  284. data/test/soap/test_httpconfigloader.rb +72 -0
  285. data/test/soap/test_mapping.rb +132 -0
  286. data/test/soap/test_nestedexception.rb +71 -0
  287. data/test/soap/test_nil.rb +71 -0
  288. data/test/soap/test_no_indent.rb +89 -0
  289. data/test/soap/test_property.rb +429 -0
  290. data/test/soap/test_response_as_xml.rb +118 -0
  291. data/test/soap/test_soapelement.rb +139 -0
  292. data/test/soap/test_streamhandler.rb +271 -0
  293. data/test/soap/test_styleuse.rb +327 -0
  294. data/test/soap/wsdlDriver/README.txt +2 -0
  295. data/test/soap/wsdlDriver/calc.wsdl +126 -0
  296. data/test/soap/wsdlDriver/document.wsdl +54 -0
  297. data/test/soap/wsdlDriver/echo_version.rb +30 -0
  298. data/test/soap/wsdlDriver/simpletype.wsdl +63 -0
  299. data/test/soap/wsdlDriver/test_calc.rb +72 -0
  300. data/test/soap/wsdlDriver/test_document.rb +72 -0
  301. data/test/soap/wsdlDriver/test_simpletype.rb +82 -0
  302. data/test/testutil.rb +55 -0
  303. data/test/wsdl/abstract/abstract.wsdl +176 -0
  304. data/test/wsdl/abstract/test_abstract.rb +160 -0
  305. data/test/wsdl/anonymous/expectedClassDef.rb +129 -0
  306. data/test/wsdl/anonymous/expectedDriver.rb +60 -0
  307. data/test/wsdl/anonymous/expectedMappingRegistry.rb +177 -0
  308. data/test/wsdl/anonymous/lp.wsdl +147 -0
  309. data/test/wsdl/anonymous/test_anonymous.rb +131 -0
  310. data/test/wsdl/any/any.wsdl +114 -0
  311. data/test/wsdl/any/expectedDriver.rb +69 -0
  312. data/test/wsdl/any/expectedEcho.rb +58 -0
  313. data/test/wsdl/any/expectedMappingRegistry.rb +64 -0
  314. data/test/wsdl/any/expectedService.rb +70 -0
  315. data/test/wsdl/any/test_any.rb +194 -0
  316. data/test/wsdl/axisArray/axisArray.wsdl +87 -0
  317. data/test/wsdl/axisArray/test_axisarray.rb +125 -0
  318. data/test/wsdl/choice/choice.wsdl +167 -0
  319. data/test/wsdl/choice/test_choice.rb +311 -0
  320. data/test/wsdl/complexcontent/complexContent.wsdl +83 -0
  321. data/test/wsdl/complexcontent/test_echo.rb +91 -0
  322. data/test/wsdl/datetime/DatetimeService.rb +45 -0
  323. data/test/wsdl/datetime/datetime.rb +0 -0
  324. data/test/wsdl/datetime/datetime.wsdl +45 -0
  325. data/test/wsdl/datetime/datetimeServant.rb +23 -0
  326. data/test/wsdl/datetime/test_datetime.rb +88 -0
  327. data/test/wsdl/document/array/double.wsdl +161 -0
  328. data/test/wsdl/document/array/test_array.rb +202 -0
  329. data/test/wsdl/document/document.wsdl +76 -0
  330. data/test/wsdl/document/number.wsdl +54 -0
  331. data/test/wsdl/document/ping_nosoapaction.wsdl +66 -0
  332. data/test/wsdl/document/test_nosoapaction.rb +103 -0
  333. data/test/wsdl/document/test_number.rb +93 -0
  334. data/test/wsdl/document/test_rpc.rb +356 -0
  335. data/test/wsdl/emptycomplextype.wsdl +31 -0
  336. data/test/wsdl/fault/fault.wsdl +79 -0
  337. data/test/wsdl/fault/multifault.wsdl +96 -0
  338. data/test/wsdl/fault/test_fault.rb +120 -0
  339. data/test/wsdl/fault/test_multifault.rb +135 -0
  340. data/test/wsdl/group/expectedClassdef.rb +59 -0
  341. data/test/wsdl/group/expectedDriver.rb +52 -0
  342. data/test/wsdl/group/expectedMappingRegistry.rb +68 -0
  343. data/test/wsdl/group/group.wsdl +88 -0
  344. data/test/wsdl/group/test_rpc.rb +146 -0
  345. data/test/wsdl/list/list.wsdl +93 -0
  346. data/test/wsdl/list/test_list.rb +125 -0
  347. data/test/wsdl/map/map.wsdl +92 -0
  348. data/test/wsdl/map/map.xml +43 -0
  349. data/test/wsdl/map/test_map.rb +100 -0
  350. data/test/wsdl/marshal/person.wsdl +21 -0
  351. data/test/wsdl/marshal/person_org.rb +24 -0
  352. data/test/wsdl/marshal/test_wsdlmarshal.rb +76 -0
  353. data/test/wsdl/multiplefault.wsdl +75 -0
  354. data/test/wsdl/oneway/oneway.wsdl +36 -0
  355. data/test/wsdl/oneway/test_oneway.rb +109 -0
  356. data/test/wsdl/overload/expectedClient.rb +38 -0
  357. data/test/wsdl/overload/expectedDriver.rb +62 -0
  358. data/test/wsdl/overload/expectedServant.rb +36 -0
  359. data/test/wsdl/overload/overload.wsdl +70 -0
  360. data/test/wsdl/overload/test_overload.rb +132 -0
  361. data/test/wsdl/qualified/lp.wsdl +47 -0
  362. data/test/wsdl/qualified/lp.xsd +26 -0
  363. data/test/wsdl/qualified/np.wsdl +51 -0
  364. data/test/wsdl/qualified/test_qualified.rb +138 -0
  365. data/test/wsdl/qualified/test_unqualified.rb +139 -0
  366. data/test/wsdl/raa/RAAService.rb +126 -0
  367. data/test/wsdl/raa/README.txt +8 -0
  368. data/test/wsdl/raa/expectedClassDef.rb +101 -0
  369. data/test/wsdl/raa/expectedDriver.rb +97 -0
  370. data/test/wsdl/raa/expectedMappingRegistry.rb +122 -0
  371. data/test/wsdl/raa/raa.wsdl +264 -0
  372. data/test/wsdl/raa/test_raa.rb +127 -0
  373. data/test/wsdl/ref/expectedDriver.rb +52 -0
  374. data/test/wsdl/ref/expectedProduct.rb +244 -0
  375. data/test/wsdl/ref/product.wsdl +147 -0
  376. data/test/wsdl/ref/test_ref.rb +269 -0
  377. data/test/wsdl/rpc/rpc.wsdl +109 -0
  378. data/test/wsdl/rpc/test-rpc-lit.wsdl +371 -0
  379. data/test/wsdl/rpc/test_rpc.rb +177 -0
  380. data/test/wsdl/rpc/test_rpc_lit.rb +471 -0
  381. data/test/wsdl/simplecontent/simplecontent.wsdl +84 -0
  382. data/test/wsdl/simplecontent/test_simplecontent.rb +103 -0
  383. data/test/wsdl/simpletype/rpc/expectedClient.rb +35 -0
  384. data/test/wsdl/simpletype/rpc/expectedDriver.rb +59 -0
  385. data/test/wsdl/simpletype/rpc/expectedEchoVersion.rb +37 -0
  386. data/test/wsdl/simpletype/rpc/expectedMappingRegistry.rb +58 -0
  387. data/test/wsdl/simpletype/rpc/expectedServant.rb +33 -0
  388. data/test/wsdl/simpletype/rpc/expectedService.rb +56 -0
  389. data/test/wsdl/simpletype/rpc/rpc.wsdl +98 -0
  390. data/test/wsdl/simpletype/rpc/test_rpc.rb +53 -0
  391. data/test/wsdl/simpletype/simpletype.wsdl +114 -0
  392. data/test/wsdl/simpletype/test_simpletype.rb +93 -0
  393. data/test/wsdl/soap/soapbodyparts.wsdl +103 -0
  394. data/test/wsdl/soap/test_soapbodyparts.rb +80 -0
  395. data/test/wsdl/soap/wsdl2ruby/expectedClassdef.rb +22 -0
  396. data/test/wsdl/soap/wsdl2ruby/expectedClient.rb +35 -0
  397. data/test/wsdl/soap/wsdl2ruby/expectedDriver.rb +59 -0
  398. data/test/wsdl/soap/wsdl2ruby/expectedMappingRegistry.rb +37 -0
  399. data/test/wsdl/soap/wsdl2ruby/expectedServant.rb +33 -0
  400. data/test/wsdl/soap/wsdl2ruby/expectedService.cgi +49 -0
  401. data/test/wsdl/soap/wsdl2ruby/expectedService.rb +56 -0
  402. data/test/wsdl/soap/wsdl2ruby/rpc.wsdl +80 -0
  403. data/test/wsdl/soap/wsdl2ruby/section/expectedClassdef.rb +38 -0
  404. data/test/wsdl/soap/wsdl2ruby/section/section.xsd +31 -0
  405. data/test/wsdl/soap/wsdl2ruby/section/test_section.rb +54 -0
  406. data/test/wsdl/soap/wsdl2ruby/soapenc/soapenc.wsdl +64 -0
  407. data/test/wsdl/soap/wsdl2ruby/soapenc/test_soapenc.rb +84 -0
  408. data/test/wsdl/soap/wsdl2ruby/test_wsdl2ruby.rb +103 -0
  409. data/test/wsdl/soaptype/soaptype.wsdl +61 -0
  410. data/test/wsdl/soaptype/test_soaptype.rb +179 -0
  411. data/test/wsdl/test_emptycomplextype.rb +22 -0
  412. data/test/wsdl/test_fault.rb +51 -0
  413. data/test/wsdl/test_multiplefault.rb +42 -0
  414. data/test/xsd/codegen/test_classdef.rb +245 -0
  415. data/test/xsd/noencoding.xml +4 -0
  416. data/test/xsd/test_noencoding.rb +33 -0
  417. data/test/xsd/test_ns.rb +42 -0
  418. data/test/xsd/test_xmlschemaparser.rb +23 -0
  419. data/test/xsd/test_xsd.rb +1639 -0
  420. data/test/xsd/xmllang.xml +43 -0
  421. data/test/xsd/xmlschema.xml +12 -0
  422. data/test/xsd/xsd2ruby/expected_mysample.rb +66 -0
  423. data/test/xsd/xsd2ruby/expected_mysample_mapper.rb +12 -0
  424. data/test/xsd/xsd2ruby/expected_mysample_mapping_registry.rb +52 -0
  425. data/test/xsd/xsd2ruby/section.xsd +49 -0
  426. data/test/xsd/xsd2ruby/test_xsd2ruby.rb +91 -0
  427. metadata +485 -0
@@ -0,0 +1,278 @@
1
+ # encoding: ASCII-8BIT
2
+ # SOAP4R - SOAP elements library
3
+ # Copyright (C) 2000-2007 NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
4
+
5
+ # This program is copyrighted free software by NAKAMURA, Hiroshi. You can
6
+ # redistribute it and/or modify it under the same terms of Ruby's license;
7
+ # either the dual license version in 2003, or any later version.
8
+
9
+
10
+ require 'xsd/qname'
11
+ require 'soap/baseData'
12
+
13
+
14
+ module SOAP
15
+
16
+
17
+ ###
18
+ ## SOAP elements
19
+ #
20
+ module SOAPEnvelopeElement; end
21
+
22
+ class SOAPFault < SOAPStruct
23
+ include SOAPEnvelopeElement
24
+ include SOAPCompoundtype
25
+
26
+ public
27
+
28
+ def faultcode
29
+ self['faultcode']
30
+ end
31
+
32
+ def faultstring
33
+ self['faultstring']
34
+ end
35
+
36
+ def faultactor
37
+ self['faultactor']
38
+ end
39
+
40
+ def detail
41
+ self['detail']
42
+ end
43
+
44
+ def faultcode=(rhs)
45
+ self['faultcode'] = rhs
46
+ end
47
+
48
+ def faultstring=(rhs)
49
+ self['faultstring'] = rhs
50
+ end
51
+
52
+ def faultactor=(rhs)
53
+ self['faultactor'] = rhs
54
+ end
55
+
56
+ def detail=(rhs)
57
+ self['detail'] = rhs
58
+ end
59
+
60
+ def initialize(faultcode = nil, faultstring = nil, faultactor = nil, detail = nil)
61
+ super(EleFaultName)
62
+ @elename = EleFaultName
63
+ @encodingstyle = EncodingNamespace
64
+ if faultcode
65
+ self.faultcode = faultcode
66
+ self.faultstring = faultstring
67
+ self.faultactor = faultactor
68
+ self.detail = detail
69
+ self.faultcode.elename = EleFaultCodeName if self.faultcode
70
+ self.faultstring.elename = EleFaultStringName if self.faultstring
71
+ self.faultactor.elename = EleFaultActorName if self.faultactor
72
+ self.detail.elename = EleFaultDetailName if self.detail
73
+ end
74
+ faultcode.parent = self if faultcode
75
+ faultstring.parent = self if faultstring
76
+ faultactor.parent = self if faultactor
77
+ detail.parent = self if detail
78
+ end
79
+
80
+ def encode(generator, ns, attrs = {})
81
+ Generator.assign_ns(attrs, ns, EnvelopeNamespace)
82
+ Generator.assign_ns(attrs, ns, EncodingNamespace)
83
+ attrs[ns.name(AttrEncodingStyleName)] = EncodingNamespace
84
+ name = ns.name(@elename)
85
+ generator.encode_tag(name, attrs)
86
+ yield(self.faultcode)
87
+ yield(self.faultstring)
88
+ yield(self.faultactor)
89
+ yield(self.detail) if self.detail
90
+ generator.encode_tag_end(name, true)
91
+ end
92
+ end
93
+
94
+
95
+ class SOAPBody < SOAPStruct
96
+ include SOAPEnvelopeElement
97
+
98
+ attr_reader :is_fault
99
+
100
+ def initialize(data = nil, is_fault = false)
101
+ super(nil)
102
+ @elename = EleBodyName
103
+ @encodingstyle = nil
104
+ if data
105
+ if data.respond_to?(:to_xmlpart)
106
+ data = SOAP::SOAPRawData.new(data)
107
+ elsif defined?(::REXML) and defined?(::REXML::Element) and data.is_a?(::REXML::Element)
108
+ data = SOAP::SOAPRawData.new(SOAP::SOAPREXMLElementWrap.new(data))
109
+ end
110
+ if data.respond_to?(:elename)
111
+ add(data.elename.name, data)
112
+ else
113
+ data.to_a.each do |datum|
114
+ add(datum.elename.name, datum)
115
+ end
116
+ end
117
+ end
118
+ @is_fault = is_fault
119
+ end
120
+
121
+ def encode(generator, ns, attrs = {})
122
+ name = ns.name(@elename)
123
+ generator.encode_tag(name, attrs)
124
+ @data.each do |data|
125
+ yield(data)
126
+ end
127
+ generator.encode_tag_end(name, @data.size > 0)
128
+ end
129
+
130
+ def root_node
131
+ @data.each do |node|
132
+ if node.root == 1
133
+ return node
134
+ end
135
+ end
136
+ # No specified root...
137
+ @data.each do |node|
138
+ if node.root != 0
139
+ return node
140
+ end
141
+ end
142
+ raise Parser::FormatDecodeError.new('no root element')
143
+ end
144
+ end
145
+
146
+
147
+ class SOAPHeaderItem < XSD::NSDBase
148
+ include SOAPEnvelopeElement
149
+ include SOAPCompoundtype
150
+
151
+ public
152
+
153
+ attr_accessor :element
154
+ attr_accessor :mustunderstand
155
+ attr_accessor :encodingstyle
156
+ attr_accessor :actor
157
+
158
+ def initialize(element, mustunderstand = true, encodingstyle = nil, actor = nil)
159
+ super()
160
+ @type = nil
161
+ @element = element
162
+ @mustunderstand = mustunderstand
163
+ @encodingstyle = encodingstyle
164
+ @actor = actor
165
+ element.parent = self if element
166
+ element.qualified = true
167
+ end
168
+
169
+ def encode(generator, ns, attrs = {})
170
+ attrs.each do |key, value|
171
+ @element.extraattr[key] = value
172
+ end
173
+ # to remove mustUnderstand attribute, set it to nil
174
+ unless @mustunderstand.nil?
175
+ @element.extraattr[AttrMustUnderstandName] = (@mustunderstand ? '1' : '0')
176
+ end
177
+ if @encodingstyle
178
+ @element.extraattr[AttrEncodingStyleName] = @encodingstyle
179
+ end
180
+ unless @element.encodingstyle
181
+ @element.encodingstyle = @encodingstyle
182
+ end
183
+ if @actor
184
+ @element.extraattr[AttrActorName] = @actor
185
+ end
186
+ yield(@element)
187
+ end
188
+ end
189
+
190
+
191
+ class SOAPHeader < SOAPStruct
192
+ include SOAPEnvelopeElement
193
+
194
+ attr_writer :force_encode
195
+
196
+ def initialize
197
+ super(nil)
198
+ @elename = EleHeaderName
199
+ @encodingstyle = nil
200
+ @force_encode = false
201
+ end
202
+
203
+ def encode(generator, ns, attrs = {})
204
+ name = ns.name(@elename)
205
+ generator.encode_tag(name, attrs)
206
+ @data.each do |data|
207
+ yield(data)
208
+ end
209
+ generator.encode_tag_end(name, @data.size > 0)
210
+ end
211
+
212
+ def add(name, value)
213
+ actor = value.extraattr[AttrActorName]
214
+ mu = value.extraattr[AttrMustUnderstandName]
215
+ encstyle = value.extraattr[AttrEncodingStyleName]
216
+ mu_value = mu.nil? ? nil : (mu == '1')
217
+ # to remove mustUnderstand attribute, set it to nil
218
+ item = SOAPHeaderItem.new(value, mu_value, encstyle, actor)
219
+ super(name, item)
220
+ end
221
+
222
+ def length
223
+ @data.length
224
+ end
225
+ alias size length
226
+
227
+ def encode?
228
+ @force_encode or length > 0
229
+ end
230
+ end
231
+
232
+
233
+ class SOAPEnvelope < XSD::NSDBase
234
+ include SOAPEnvelopeElement
235
+ include SOAPCompoundtype
236
+
237
+ attr_reader :header
238
+ attr_reader :body
239
+ attr_reader :external_content
240
+
241
+ def initialize(header = nil, body = nil)
242
+ super()
243
+ @type = nil
244
+ @elename = EleEnvelopeName
245
+ @encodingstyle = nil
246
+ @header = header
247
+ @body = body
248
+ @external_content = {}
249
+ header.parent = self if header
250
+ body.parent = self if body
251
+ end
252
+
253
+ def header=(header)
254
+ header.parent = self
255
+ @header = header
256
+ end
257
+
258
+ def body=(body)
259
+ body.parent = self
260
+ @body = body
261
+ end
262
+
263
+ def encode(generator, ns, attrs = {})
264
+ Generator.assign_ns(attrs, ns, elename.namespace)
265
+ name = ns.name(@elename)
266
+ generator.encode_tag(name, attrs)
267
+ yield(@header) if @header and @header.encode?
268
+ yield(@body)
269
+ generator.encode_tag_end(name, true)
270
+ end
271
+
272
+ def to_ary
273
+ [header, body]
274
+ end
275
+ end
276
+
277
+
278
+ end
@@ -0,0 +1,208 @@
1
+ # encoding: ASCII-8BIT
2
+ # SOAP4R - ASP.NET EncodingStyle handler library
3
+ # Copyright (C) 2000-2007 NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
4
+
5
+ # This program is copyrighted free software by NAKAMURA, Hiroshi. You can
6
+ # redistribute it and/or modify it under the same terms of Ruby's license;
7
+ # either the dual license version in 2003, or any later version.
8
+
9
+
10
+ require 'soap/encodingstyle/handler'
11
+
12
+
13
+ module SOAP
14
+ module EncodingStyle
15
+
16
+
17
+ class ASPDotNetHandler < Handler
18
+ Namespace = 'http://tempuri.org/ASP.NET'
19
+ add_handler
20
+
21
+ def initialize(charset = nil)
22
+ super(charset)
23
+ @textbuf = ''
24
+ @decode_typemap = nil
25
+ end
26
+
27
+
28
+ ###
29
+ ## encode interface.
30
+ #
31
+ def encode_data(generator, ns, data, parent)
32
+ attrs = {}
33
+ # ASPDotNetHandler is intended to be used for accessing an ASP.NET doc/lit
34
+ # service as an rpc/encoded service. in the situation, local elements
35
+ # should be qualified. propagate parent's namespace to children.
36
+ if data.elename.namespace.nil?
37
+ data.elename =
38
+ XSD::QName.new(parent.elename.namespace, data.elename.name)
39
+ end
40
+ name = generator.encode_name(ns, data, attrs)
41
+ case data
42
+ when SOAPRawString
43
+ generator.encode_tag(name, attrs)
44
+ generator.encode_rawstring(data.to_s)
45
+ when XSD::XSDString
46
+ generator.encode_tag(name, attrs)
47
+ generator.encode_string(@charset ?
48
+ XSD::Charset.encoding_to_xml(data.to_s, @charset) : data.to_s)
49
+ when XSD::XSDAnySimpleType
50
+ generator.encode_tag(name, attrs)
51
+ generator.encode_string(data.to_s)
52
+ when SOAPStruct
53
+ generator.encode_tag(name, attrs)
54
+ data.each do |key, value|
55
+ generator.encode_child(ns, value, data)
56
+ end
57
+ when SOAPArray
58
+ generator.encode_tag(name, attrs)
59
+ data.traverse do |child, *rank|
60
+ data.position = nil
61
+ generator.encode_child(ns, child, data)
62
+ end
63
+ else
64
+ raise EncodingStyleError.new(
65
+ "unknown object:#{data} in this encodingStyle")
66
+ end
67
+ end
68
+
69
+ def encode_data_end(generator, ns, data, parent)
70
+ name = generator.encode_name_end(ns, data)
71
+ cr = (data.is_a?(SOAPCompoundtype) and data.have_member)
72
+ generator.encode_tag_end(name, cr)
73
+ end
74
+
75
+
76
+ ###
77
+ ## decode interface.
78
+ #
79
+ class SOAPTemporalObject
80
+ attr_accessor :parent
81
+
82
+ def initialize
83
+ @parent = nil
84
+ end
85
+ end
86
+
87
+ class SOAPUnknown < SOAPTemporalObject
88
+ def initialize(handler, elename)
89
+ super()
90
+ @handler = handler
91
+ @elename = elename
92
+ end
93
+
94
+ def as_struct
95
+ o = SOAPStruct.decode(@elename, XSD::AnyTypeName)
96
+ o.parent = @parent
97
+ o.type.name = @name
98
+ @handler.decode_parent(@parent, o)
99
+ o
100
+ end
101
+
102
+ def as_string
103
+ o = SOAPString.decode(@elename)
104
+ o.parent = @parent
105
+ @handler.decode_parent(@parent, o)
106
+ o
107
+ end
108
+ end
109
+
110
+ def decode_tag(ns, elename, attrs, parent)
111
+ @textbuf = ''
112
+ o = SOAPUnknown.new(self, elename)
113
+ o.parent = parent
114
+ o
115
+ end
116
+
117
+ def decode_tag_end(ns, node)
118
+ o = node.node
119
+ if o.is_a?(SOAPUnknown)
120
+ newnode = o.as_string
121
+ # if /\A\s*\z/ =~ @textbuf
122
+ # o.as_struct
123
+ # else
124
+ # o.as_string
125
+ # end
126
+ node.replace_node(newnode)
127
+ o = node.node
128
+ end
129
+
130
+ decode_textbuf(o)
131
+ @textbuf = ''
132
+ end
133
+
134
+ def decode_text(ns, text)
135
+ # @textbuf is set at decode_tag_end.
136
+ @textbuf << text
137
+ end
138
+
139
+ def decode_prologue
140
+ end
141
+
142
+ def decode_epilogue
143
+ end
144
+
145
+ def decode_parent(parent, node)
146
+ case parent.node
147
+ when SOAPUnknown
148
+ newparent = parent.node.as_struct
149
+ node.parent = newparent
150
+ parent.replace_node(newparent)
151
+ decode_parent(parent, node)
152
+
153
+ when SOAPStruct
154
+ data = parent.node[node.elename.name]
155
+ case data
156
+ when nil
157
+ parent.node.add(node.elename.name, node)
158
+ when SOAPArray
159
+ name, type_ns = node.elename.name, node.type.namespace
160
+ data.add(node)
161
+ node.elename, node.type.namespace = name, type_ns
162
+ else
163
+ parent.node[node.elename.name] = SOAPArray.new
164
+ name, type_ns = data.elename.name, data.type.namespace
165
+ parent.node[node.elename.name].add(data)
166
+ data.elename.name, data.type.namespace = name, type_ns
167
+ name, type_ns = node.elename.name, node.type.namespace
168
+ parent.node[node.elename.name].add(node)
169
+ node.elename.name, node.type.namespace = name, type_ns
170
+ end
171
+
172
+ when SOAPArray
173
+ if node.position
174
+ parent.node[*(decode_arypos(node.position))] = node
175
+ parent.node.sparse = true
176
+ else
177
+ parent.node.add(node)
178
+ end
179
+
180
+ when SOAPBasetype
181
+ raise EncodingStyleError.new("SOAP base type must not have a child")
182
+
183
+ else
184
+ # SOAPUnknown does not have parent.
185
+ # raise EncodingStyleError.new("illegal parent: #{parent}")
186
+ end
187
+ end
188
+
189
+ private
190
+
191
+ def decode_textbuf(node)
192
+ if node.is_a?(XSD::XSDString)
193
+ if @charset
194
+ node.set(XSD::Charset.encoding_from_xml(@textbuf, @charset))
195
+ else
196
+ node.set(@textbuf)
197
+ end
198
+ else
199
+ # Nothing to do...
200
+ end
201
+ end
202
+ end
203
+
204
+ ASPDotNetHandler.new
205
+
206
+
207
+ end
208
+ end