rtiss_soap4r 1.6.0

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/filterchain.rb +52 -0
  12. data/lib/soap/filter/handler.rb +32 -0
  13. data/lib/soap/filter/streamhandler.rb +30 -0
  14. data/lib/soap/filter.rb +14 -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/encodedregistry.rb +539 -0
  22. data/lib/soap/mapping/factory.rb +389 -0
  23. data/lib/soap/mapping/literalregistry.rb +392 -0
  24. data/lib/soap/mapping/mapping.rb +577 -0
  25. data/lib/soap/mapping/registry.rb +296 -0
  26. data/lib/soap/mapping/rubytypeFactory.rb +446 -0
  27. data/lib/soap/mapping/schemadefinition.rb +171 -0
  28. data/lib/soap/mapping/typeMap.rb +107 -0
  29. data/lib/soap/mapping/wsdlencodedregistry.rb +212 -0
  30. data/lib/soap/mapping/wsdlliteralregistry.rb +249 -0
  31. data/lib/soap/mapping.rb +13 -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 +306 -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/classdef.rb +209 -0
  144. data/lib/xsd/codegen/commentdef.rb +35 -0
  145. data/lib/xsd/codegen/gensupport.rb +277 -0
  146. data/lib/xsd/codegen/methoddef.rb +71 -0
  147. data/lib/xsd/codegen/moduledef.rb +209 -0
  148. data/lib/xsd/codegen.rb +13 -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/libxmlparser.rb +116 -0
  157. data/lib/xsd/xmlparser/parser.rb +101 -0
  158. data/lib/xsd/xmlparser/rexmlparser.rb +59 -0
  159. data/lib/xsd/xmlparser/xmlparser.rb +51 -0
  160. data/lib/xsd/xmlparser/xmlscanner.rb +150 -0
  161. data/lib/xsd/xmlparser.rb +77 -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 +489 -0
@@ -0,0 +1,243 @@
1
+ # encoding: ASCII-8BIT
2
+ # SOAP4R - MIME Message implementation.
3
+ # Copyright (C) 2002 Jamie Herre.
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/attachment'
11
+
12
+
13
+ module SOAP
14
+
15
+
16
+ # Classes for MIME message handling. Should be put somewhere else!
17
+ # Tried using the 'tmail' module but found that I needed something
18
+ # lighter in weight.
19
+
20
+
21
+ class MIMEMessage
22
+ class MIMEMessageError < StandardError; end
23
+
24
+ MultipartContentType = 'multipart/\w+'
25
+
26
+ class Header
27
+ attr_accessor :str, :key, :root
28
+
29
+ def initialize
30
+ @attrs = {}
31
+ end
32
+
33
+ def [](key)
34
+ @attrs[key]
35
+ end
36
+
37
+ def []=(key, value)
38
+ @attrs[key] = value
39
+ end
40
+
41
+ def to_s
42
+ @key + ": " + @str
43
+ end
44
+ end
45
+
46
+ class Headers < Hash
47
+ def self.parse(str)
48
+ new.parse(str)
49
+ end
50
+
51
+ def parse(str)
52
+ header_cache = nil
53
+ str = str.lines if str.respond_to?(:lines) # RubyJedi: compatible with Ruby 1.8.6 and above
54
+ str.each do |line|
55
+ case line
56
+ when /^\A[^\: \t]+:\s*.+$/
57
+ parse_line(header_cache) if header_cache
58
+ header_cache = line.sub(/\r?\n\z/, '')
59
+ when /^\A\s+(.*)$/
60
+ # a continuous line at the beginning line crashes here.
61
+ header_cache << line
62
+ else
63
+ raise RuntimeError.new("unexpected header: #{line.inspect}")
64
+ end
65
+ end
66
+ parse_line(header_cache) if header_cache
67
+ self
68
+ end
69
+
70
+ def parse_line(line)
71
+ if /^\A([^\: \t]+):\s*(.+)\z/ =~ line
72
+ header = parse_rhs($2.strip)
73
+ header.key = $1.strip
74
+ self[header.key.downcase] = header
75
+ else
76
+ raise RuntimeError.new("unexpected header line: #{line.inspect}")
77
+ end
78
+ end
79
+
80
+ def parse_rhs(str)
81
+ a = str.split(/;+\s+/)
82
+ header = Header.new
83
+ header.str = str
84
+ header.root = a.shift
85
+ a.each do |pair|
86
+ if pair =~ /(\w+)\s*=\s*"?([^"]+)"?/
87
+ header[$1.downcase] = $2
88
+ else
89
+ raise RuntimeError.new("unexpected header component: #{pair.inspect}")
90
+ end
91
+ end
92
+ header
93
+ end
94
+
95
+ def add(key, value)
96
+ if key != nil and value != nil
97
+ header = parse_rhs(value)
98
+ header.key = key
99
+ self[key.downcase] = header
100
+ end
101
+ end
102
+
103
+ def to_s
104
+ self.values.collect { |hdr|
105
+ hdr.to_s
106
+ }.join("\r\n")
107
+ end
108
+ end
109
+
110
+ class Part
111
+ attr_accessor :headers, :body
112
+
113
+ def initialize
114
+ @headers = Headers.new
115
+ @headers.add("Content-Transfer-Encoding", "8bit")
116
+ @body = nil
117
+ @contentid = nil
118
+ end
119
+
120
+ def self.parse(str)
121
+ new.parse(str)
122
+ end
123
+
124
+ def parse(str)
125
+ headers, body = str.split(/\r\n\r\n/, 2)
126
+ if headers != nil and body != nil
127
+ @headers = Headers.parse(headers)
128
+ @body = body.sub(/\r\n\z/, '')
129
+ else
130
+ raise RuntimeError.new("unexpected part: #{str.inspect}")
131
+ end
132
+ self
133
+ end
134
+
135
+ def contentid
136
+ if @contentid == nil and @headers.key?('content-id')
137
+ @contentid = @headers['content-id'].str
138
+ @contentid = $1 if @contentid =~ /^<(.+)>$/
139
+ end
140
+ @contentid
141
+ end
142
+
143
+ alias content body
144
+
145
+ def to_s
146
+ @headers.to_s + "\r\n\r\n" + @body
147
+ end
148
+ end
149
+
150
+ def initialize
151
+ @parts = []
152
+ @headers = Headers.new
153
+ @root = nil
154
+ @boundary = nil
155
+ end
156
+
157
+ def self.parse(head, str)
158
+ new.parse(head, str)
159
+ end
160
+
161
+ attr_reader :parts, :headers
162
+
163
+ def close
164
+ @headers.add(
165
+ "Content-Type",
166
+ "multipart/related; type=\"text/xml\"; boundary=\"#{boundary}\"; start=\"#{@parts[0].contentid}\""
167
+ )
168
+ end
169
+
170
+ def parse(head, str)
171
+ @headers = Headers.parse(head + "\r\n" + "From: jfh\r\n")
172
+ boundary = @headers['content-type']['boundary']
173
+ if boundary != nil
174
+ parts = str.split(/--#{Regexp.quote(boundary)}\s*(?:\r\n|--\r\n)/)
175
+ part = parts.shift # preamble must be ignored.
176
+ @parts = parts.collect { |part| Part.parse(part) }
177
+ else
178
+ @parts = [Part.parse(str)]
179
+ end
180
+ if @parts.length < 1
181
+ raise MIMEMessageError.new("This message contains no valid parts!")
182
+ end
183
+ self
184
+ end
185
+
186
+ def root
187
+ if @root == nil
188
+ start = @headers['content-type']['start']
189
+ @root = (start && @parts.find { |prt| prt.contentid == start }) ||
190
+ @parts[0]
191
+ end
192
+ @root
193
+ end
194
+
195
+ def boundary
196
+ if @boundary == nil
197
+ @boundary = "----=Part_" + __id__.to_s + rand.to_s
198
+ end
199
+ @boundary
200
+ end
201
+
202
+ def add_part(content)
203
+ part = Part.new
204
+ part.headers.add("Content-Type",
205
+ "text/xml; charset=" + XSD::Charset.xml_encoding_label)
206
+ part.headers.add("Content-ID", Attachment.contentid(part))
207
+ part.body = content
208
+ @parts.unshift(part)
209
+ end
210
+
211
+ def add_attachment(attach)
212
+ part = Part.new
213
+ part.headers.add("Content-Type", attach.contenttype)
214
+ part.headers.add("Content-ID", attach.mime_contentid)
215
+ part.body = attach.content
216
+ @parts.unshift(part)
217
+ end
218
+
219
+ def has_parts?
220
+ (@parts.length > 0)
221
+ end
222
+
223
+ def headers_str
224
+ @headers.to_s
225
+ end
226
+
227
+ def content_str
228
+ str = ''
229
+ @parts.each do |prt|
230
+ str << "--" + boundary + "\r\n"
231
+ str << prt.to_s + "\r\n"
232
+ end
233
+ str << '--' + boundary + "--\r\n"
234
+ str
235
+ end
236
+
237
+ def to_s
238
+ str = headers_str + "\r\n\r\n" + conent_str
239
+ end
240
+ end
241
+
242
+
243
+ end
@@ -0,0 +1,43 @@
1
+ # encoding: ASCII-8BIT
2
+ # SOAP4R - Nested exception implementation
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
+ module SOAP
11
+
12
+
13
+ module NestedException
14
+ attr_reader :cause
15
+ attr_reader :original_backtraace
16
+
17
+ def initialize(msg = nil, cause = nil)
18
+ super(msg)
19
+ @cause = cause
20
+ @original_backtrace = nil
21
+ end
22
+
23
+ def set_backtrace(backtrace)
24
+ if defined?(@cause) and @cause.respond_to?(:backtrace)
25
+ @original_backtrace = backtrace
26
+ =begin
27
+ # for agressive backtrace abstraction: 'here' only should not be good
28
+ here = @original_backtrace[0]
29
+ backtrace = Array[*@cause.backtrace]
30
+ backtrace[0] = "#{backtrace[0]}: #{@cause} (#{@cause.class})"
31
+ backtrace.unshift(here)
32
+ =end
33
+ # just join the nested backtrace at the tail of backtrace
34
+ caused = Array[*@cause.backtrace]
35
+ caused[0] = "#{caused[0]}: #{@cause} (#{@cause.class}) [NESTED]"
36
+ backtrace += caused
37
+ end
38
+ super(backtrace)
39
+ end
40
+ end
41
+
42
+
43
+ end
@@ -0,0 +1,242 @@
1
+ # encoding: ASCII-8BIT
2
+ # SOAP4R - net/http wrapper
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 'net/http'
11
+ require 'soap/filter/filterchain'
12
+
13
+
14
+ module SOAP
15
+
16
+
17
+ class NetHttpClient
18
+
19
+ SSLEnabled = begin
20
+ require 'net/https'
21
+ true
22
+ rescue LoadError
23
+ false
24
+ end
25
+
26
+ attr_reader :proxy
27
+ attr_accessor :no_proxy
28
+ attr_accessor :debug_dev
29
+ attr_accessor :ssl_config # ignored for now.
30
+ attr_accessor :protocol_version # ignored for now.
31
+ attr_accessor :connect_timeout
32
+ attr_accessor :send_timeout # ignored for now.
33
+ attr_accessor :receive_timeout
34
+ attr_reader :test_loopback_response
35
+ attr_reader :request_filter # ignored for now.
36
+
37
+ def initialize(proxy = nil, agent = nil)
38
+ @proxy = proxy ? URI.parse(proxy) : nil
39
+ @agent = agent
40
+ @debug_dev = nil
41
+ @test_loopback_response = []
42
+ @request_filter = Filter::FilterChain.new
43
+ @session_manager = SessionManager.new
44
+ @no_proxy = @ssl_config = @protocol_version = nil
45
+ @connect_timeout = @send_timeout = @receive_timeout = nil
46
+ end
47
+
48
+ def proxy=(proxy)
49
+ if proxy.nil?
50
+ @proxy = nil
51
+ else
52
+ if proxy.is_a?(URI)
53
+ @proxy = proxy
54
+ else
55
+ @proxy = URI.parse(proxy)
56
+ end
57
+ if @proxy.scheme == nil or @proxy.scheme.downcase != 'http' or
58
+ @proxy.host == nil or @proxy.port == nil
59
+ raise ArgumentError.new("unsupported proxy `#{proxy}'")
60
+ end
61
+ end
62
+ reset_all
63
+ @proxy
64
+ end
65
+
66
+ def set_auth(uri, user_id, passwd)
67
+ raise NotImplementedError.new("auth is not supported under soap4r + net/http.")
68
+ end
69
+
70
+ def set_basic_auth(uri, user_id, passwd)
71
+ # net/http does not handle url.
72
+ @basic_auth = [user_id, passwd]
73
+ raise NotImplementedError.new("basic_auth is not supported under soap4r + net/http.")
74
+ end
75
+
76
+ def set_cookie_store(filename)
77
+ raise NotImplementedError.new
78
+ end
79
+
80
+ def save_cookie_store(filename)
81
+ raise NotImplementedError.new
82
+ end
83
+
84
+ def reset(url)
85
+ # no persistent connection. ignored.
86
+ end
87
+
88
+ def reset_all
89
+ # no persistent connection. ignored.
90
+ end
91
+
92
+ def post(url, req_body, header = {})
93
+ post_redirect(url, req_body, header, 10)
94
+ end
95
+
96
+ def get_content(url, header = {})
97
+ if str = @test_loopback_response.shift
98
+ return str
99
+ end
100
+ unless url.is_a?(URI)
101
+ url = URI.parse(url)
102
+ end
103
+ extra = header.dup
104
+ extra['User-Agent'] = @agent if @agent
105
+ res = start(url) { |http|
106
+ http.get(url.request_uri, extra)
107
+ }
108
+ res.body
109
+ end
110
+
111
+ private
112
+
113
+ def post_redirect(url, req_body, header, redirect_count)
114
+ if str = @test_loopback_response.shift
115
+ if @debug_dev
116
+ @debug_dev << "= Request\n\n"
117
+ @debug_dev << req_body
118
+ @debug_dev << "\n\n= Response\n\n"
119
+ @debug_dev << str
120
+ end
121
+ status = 200
122
+ reason = nil
123
+ contenttype = 'text/xml'
124
+ content = str
125
+ return Response.new(status, reason, contenttype, content)
126
+ return str
127
+ end
128
+ unless url.is_a?(URI)
129
+ url = URI.parse(url)
130
+ end
131
+ extra = header.dup
132
+ extra['User-Agent'] = @agent if @agent
133
+ res = start(url) { |http|
134
+ if @debug_dev
135
+ @debug_dev << "= Request\n\n"
136
+ @debug_dev << req_body << "\n"
137
+ end
138
+ http.post(url.request_uri, req_body, extra)
139
+ }
140
+ case res
141
+ when Net::HTTPRedirection
142
+ if redirect_count > 0
143
+ post_redirect(res['location'], req_body, header,
144
+ redirect_count - 1)
145
+ else
146
+ raise ArgumentError.new("Too many redirects")
147
+ end
148
+ else
149
+ Response.from_httpresponse(res)
150
+ end
151
+ end
152
+
153
+ def start(url)
154
+ http = create_connection(url)
155
+ response = nil
156
+ http.start { |worker|
157
+ response = yield(worker)
158
+ worker.finish
159
+ }
160
+ if @debug_dev
161
+ @debug_dev << "\n\n= Response\n\n"
162
+ @debug_dev << response.body << "\n"
163
+ end
164
+ response
165
+ end
166
+
167
+ def create_connection(url)
168
+ proxy_host = proxy_port = nil
169
+ unless no_proxy?(url)
170
+ proxy_host = @proxy.host
171
+ proxy_port = @proxy.port
172
+ end
173
+ http = Net::HTTP::Proxy(proxy_host, proxy_port).new(url.host, url.port)
174
+ if http.respond_to?(:set_debug_output)
175
+ http.set_debug_output(@debug_dev)
176
+ end
177
+ http.open_timeout = @connect_timeout if @connect_timeout
178
+ http.read_timeout = @receive_timeout if @receive_timeout
179
+ case url
180
+ when URI::HTTPS
181
+ if SSLEnabled
182
+ http.use_ssl = true
183
+ else
184
+ raise RuntimeError.new("Cannot connect to #{url} (OpenSSL is not installed.)")
185
+ end
186
+ when URI::HTTP
187
+ # OK
188
+ else
189
+ raise RuntimeError.new("Cannot connect to #{url} (Not HTTP.)")
190
+ end
191
+ http
192
+ end
193
+
194
+ NO_PROXY_HOSTS = ['localhost']
195
+
196
+ def no_proxy?(uri)
197
+ if !@proxy or NO_PROXY_HOSTS.include?(uri.host)
198
+ return true
199
+ end
200
+ unless @no_proxy
201
+ return false
202
+ end
203
+ @no_proxy.scan(/([^:,]+)(?::(\d+))?/) do |host, port|
204
+ if /(\A|\.)#{Regexp.quote(host)}\z/i =~ uri.host &&
205
+ (!port || uri.port == port.to_i)
206
+ return true
207
+ end
208
+ end
209
+ false
210
+ end
211
+
212
+ class SessionManager
213
+ attr_accessor :connect_timeout
214
+ attr_accessor :send_timeout
215
+ attr_accessor :receive_timeout
216
+ end
217
+
218
+ class Response
219
+ attr_reader :status
220
+ attr_reader :reason
221
+ attr_reader :contenttype
222
+ attr_reader :content
223
+
224
+ def initialize(status, reason, contenttype, content)
225
+ @status = status
226
+ @reason = reason
227
+ @contenttype = contenttype
228
+ @content = content
229
+ end
230
+
231
+ def self.from_httpresponse(res)
232
+ status = res.code.to_i
233
+ reason = res.message
234
+ contenttype = res['content-type']
235
+ content = res.body
236
+ new(status, reason, contenttype, content)
237
+ end
238
+ end
239
+ end
240
+
241
+
242
+ end
data/lib/soap/ns.rb ADDED
@@ -0,0 +1,39 @@
1
+ # encoding: ASCII-8BIT
2
+ # SOAP4R - SOAP Namespace 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/datatypes'
11
+ require 'xsd/ns'
12
+ require 'soap/soap'
13
+
14
+
15
+ module SOAP
16
+
17
+ ## Rubyjedi: Provide these (deprecated) constants for backward compatibility with older ActionWebService
18
+ SOAPNamespaceTag = 'env'
19
+ XSDNamespaceTag = 'xsd'
20
+ XSINamespaceTag = 'xsi'
21
+
22
+ class NS < XSD::NS
23
+ KNOWN_TAG = XSD::NS::KNOWN_TAG.dup.update(
24
+ SOAP::EnvelopeNamespace => 'env'
25
+ )
26
+
27
+ def initialize(tag2ns = nil)
28
+ super(tag2ns)
29
+ end
30
+
31
+ private
32
+
33
+ def default_known_tag
34
+ KNOWN_TAG
35
+ end
36
+ end
37
+
38
+
39
+ end