DefV-soap4r 1.5.8.2

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 (443) hide show
  1. data/bin/wsdl2ruby.rb +137 -0
  2. data/bin/xsd2ruby.rb +90 -0
  3. data/lib/soap/attachment.rb +108 -0
  4. data/lib/soap/attrproxy.rb +34 -0
  5. data/lib/soap/baseData.rb +1094 -0
  6. data/lib/soap/element.rb +277 -0
  7. data/lib/soap/encodingstyle/aspDotNetHandler.rb +207 -0
  8. data/lib/soap/encodingstyle/handler.rb +120 -0
  9. data/lib/soap/encodingstyle/literalHandler.rb +195 -0
  10. data/lib/soap/encodingstyle/soapHandler.rb +559 -0
  11. data/lib/soap/filter.rb +13 -0
  12. data/lib/soap/filter/filterchain.rb +51 -0
  13. data/lib/soap/filter/handler.rb +31 -0
  14. data/lib/soap/filter/streamhandler.rb +29 -0
  15. data/lib/soap/generator.rb +299 -0
  16. data/lib/soap/header/handler.rb +61 -0
  17. data/lib/soap/header/handlerset.rb +70 -0
  18. data/lib/soap/header/mappinghandler.rb +47 -0
  19. data/lib/soap/header/simplehandler.rb +44 -0
  20. data/lib/soap/httpconfigloader.rb +139 -0
  21. data/lib/soap/mapping.rb +12 -0
  22. data/lib/soap/mapping/encodedregistry.rb +537 -0
  23. data/lib/soap/mapping/factory.rb +388 -0
  24. data/lib/soap/mapping/literalregistry.rb +391 -0
  25. data/lib/soap/mapping/mapping.rb +577 -0
  26. data/lib/soap/mapping/registry.rb +295 -0
  27. data/lib/soap/mapping/rubytypeFactory.rb +446 -0
  28. data/lib/soap/mapping/schemadefinition.rb +170 -0
  29. data/lib/soap/mapping/typeMap.rb +106 -0
  30. data/lib/soap/mapping/wsdlencodedregistry.rb +211 -0
  31. data/lib/soap/mapping/wsdlliteralregistry.rb +248 -0
  32. data/lib/soap/marshal.rb +59 -0
  33. data/lib/soap/mimemessage.rb +241 -0
  34. data/lib/soap/nestedexception.rb +42 -0
  35. data/lib/soap/netHttpClient.rb +241 -0
  36. data/lib/soap/ns.rb +34 -0
  37. data/lib/soap/parser.rb +252 -0
  38. data/lib/soap/processor.rb +66 -0
  39. data/lib/soap/property.rb +333 -0
  40. data/lib/soap/proxy.rb +14 -0
  41. data/lib/soap/rpc/cgistub.rb +247 -0
  42. data/lib/soap/rpc/driver.rb +221 -0
  43. data/lib/soap/rpc/element.rb +374 -0
  44. data/lib/soap/rpc/element.rb.orig +374 -0
  45. data/lib/soap/rpc/httpserver.rb +142 -0
  46. data/lib/soap/rpc/methodDef.rb +68 -0
  47. data/lib/soap/rpc/proxy.rb +572 -0
  48. data/lib/soap/rpc/router.rb +662 -0
  49. data/lib/soap/rpc/rpc.rb +25 -0
  50. data/lib/soap/rpc/soaplet.rb +200 -0
  51. data/lib/soap/rpc/standaloneServer.rb +43 -0
  52. data/lib/soap/soap.rb +151 -0
  53. data/lib/soap/streamHandler.rb +301 -0
  54. data/lib/soap/wsdlDriver.rb +164 -0
  55. data/lib/wsdl/binding.rb +65 -0
  56. data/lib/wsdl/data.rb +64 -0
  57. data/lib/wsdl/definitions.rb +236 -0
  58. data/lib/wsdl/documentation.rb +32 -0
  59. data/lib/wsdl/import.rb +80 -0
  60. data/lib/wsdl/importer.rb +38 -0
  61. data/lib/wsdl/info.rb +50 -0
  62. data/lib/wsdl/message.rb +54 -0
  63. data/lib/wsdl/operation.rb +151 -0
  64. data/lib/wsdl/operationBinding.rb +240 -0
  65. data/lib/wsdl/param.rb +93 -0
  66. data/lib/wsdl/parser.rb +164 -0
  67. data/lib/wsdl/part.rb +52 -0
  68. data/lib/wsdl/port.rb +66 -0
  69. data/lib/wsdl/portType.rb +75 -0
  70. data/lib/wsdl/service.rb +61 -0
  71. data/lib/wsdl/soap/address.rb +40 -0
  72. data/lib/wsdl/soap/binding.rb +49 -0
  73. data/lib/wsdl/soap/body.rb +58 -0
  74. data/lib/wsdl/soap/cgiStubCreator.rb +92 -0
  75. data/lib/wsdl/soap/classDefCreator.rb +433 -0
  76. data/lib/wsdl/soap/classDefCreatorSupport.rb +240 -0
  77. data/lib/wsdl/soap/classNameCreator.rb +54 -0
  78. data/lib/wsdl/soap/clientSkeltonCreator.rb +104 -0
  79. data/lib/wsdl/soap/complexType.rb +173 -0
  80. data/lib/wsdl/soap/data.rb +42 -0
  81. data/lib/wsdl/soap/definitions.rb +200 -0
  82. data/lib/wsdl/soap/driverCreator.rb +118 -0
  83. data/lib/wsdl/soap/element.rb +33 -0
  84. data/lib/wsdl/soap/encodedMappingRegistryCreator.rb +73 -0
  85. data/lib/wsdl/soap/fault.rb +56 -0
  86. data/lib/wsdl/soap/header.rb +86 -0
  87. data/lib/wsdl/soap/headerfault.rb +56 -0
  88. data/lib/wsdl/soap/literalMappingRegistryCreator.rb +115 -0
  89. data/lib/wsdl/soap/mappingRegistryCreator.rb +58 -0
  90. data/lib/wsdl/soap/mappingRegistryCreatorSupport.rb +376 -0
  91. data/lib/wsdl/soap/methodDefCreator.rb +199 -0
  92. data/lib/wsdl/soap/operation.rb +112 -0
  93. data/lib/wsdl/soap/servantSkeltonCreator.rb +89 -0
  94. data/lib/wsdl/soap/servletStubCreator.rb +104 -0
  95. data/lib/wsdl/soap/standaloneServerStubCreator.rb +100 -0
  96. data/lib/wsdl/soap/wsdl2ruby.rb +217 -0
  97. data/lib/wsdl/types.rb +44 -0
  98. data/lib/wsdl/wsdl.rb +24 -0
  99. data/lib/wsdl/xmlSchema/all.rb +24 -0
  100. data/lib/wsdl/xmlSchema/annotation.rb +34 -0
  101. data/lib/wsdl/xmlSchema/any.rb +61 -0
  102. data/lib/wsdl/xmlSchema/anyAttribute.rb +48 -0
  103. data/lib/wsdl/xmlSchema/attribute.rb +104 -0
  104. data/lib/wsdl/xmlSchema/attributeGroup.rb +68 -0
  105. data/lib/wsdl/xmlSchema/choice.rb +58 -0
  106. data/lib/wsdl/xmlSchema/complexContent.rb +97 -0
  107. data/lib/wsdl/xmlSchema/complexExtension.rb +119 -0
  108. data/lib/wsdl/xmlSchema/complexRestriction.rb +104 -0
  109. data/lib/wsdl/xmlSchema/complexType.rb +193 -0
  110. data/lib/wsdl/xmlSchema/content.rb +95 -0
  111. data/lib/wsdl/xmlSchema/data.rb +116 -0
  112. data/lib/wsdl/xmlSchema/element.rb +153 -0
  113. data/lib/wsdl/xmlSchema/enumeration.rb +36 -0
  114. data/lib/wsdl/xmlSchema/fractiondigits.rb +37 -0
  115. data/lib/wsdl/xmlSchema/group.rb +100 -0
  116. data/lib/wsdl/xmlSchema/import.rb +53 -0
  117. data/lib/wsdl/xmlSchema/importHandler.rb +45 -0
  118. data/lib/wsdl/xmlSchema/importer.rb +102 -0
  119. data/lib/wsdl/xmlSchema/include.rb +48 -0
  120. data/lib/wsdl/xmlSchema/length.rb +37 -0
  121. data/lib/wsdl/xmlSchema/list.rb +48 -0
  122. data/lib/wsdl/xmlSchema/maxexclusive.rb +37 -0
  123. data/lib/wsdl/xmlSchema/maxinclusive.rb +37 -0
  124. data/lib/wsdl/xmlSchema/maxlength.rb +37 -0
  125. data/lib/wsdl/xmlSchema/minexclusive.rb +37 -0
  126. data/lib/wsdl/xmlSchema/mininclusive.rb +37 -0
  127. data/lib/wsdl/xmlSchema/minlength.rb +37 -0
  128. data/lib/wsdl/xmlSchema/parser.rb +167 -0
  129. data/lib/wsdl/xmlSchema/pattern.rb +36 -0
  130. data/lib/wsdl/xmlSchema/ref.rb +33 -0
  131. data/lib/wsdl/xmlSchema/schema.rb +178 -0
  132. data/lib/wsdl/xmlSchema/sequence.rb +54 -0
  133. data/lib/wsdl/xmlSchema/simpleContent.rb +69 -0
  134. data/lib/wsdl/xmlSchema/simpleExtension.rb +62 -0
  135. data/lib/wsdl/xmlSchema/simpleRestriction.rb +132 -0
  136. data/lib/wsdl/xmlSchema/simpleType.rb +87 -0
  137. data/lib/wsdl/xmlSchema/totaldigits.rb +37 -0
  138. data/lib/wsdl/xmlSchema/union.rb +35 -0
  139. data/lib/wsdl/xmlSchema/unique.rb +34 -0
  140. data/lib/wsdl/xmlSchema/whitespace.rb +37 -0
  141. data/lib/wsdl/xmlSchema/xsd2ruby.rb +174 -0
  142. data/lib/xsd/charset.rb +188 -0
  143. data/lib/xsd/codegen.rb +12 -0
  144. data/lib/xsd/codegen/classdef.rb +208 -0
  145. data/lib/xsd/codegen/commentdef.rb +34 -0
  146. data/lib/xsd/codegen/gensupport.rb +273 -0
  147. data/lib/xsd/codegen/methoddef.rb +70 -0
  148. data/lib/xsd/codegen/moduledef.rb +208 -0
  149. data/lib/xsd/datatypes.rb +1466 -0
  150. data/lib/xsd/datatypes1999.rb +20 -0
  151. data/lib/xsd/iconvcharset.rb +33 -0
  152. data/lib/xsd/mapping.rb +68 -0
  153. data/lib/xsd/namedelements.rb +132 -0
  154. data/lib/xsd/ns.rb +182 -0
  155. data/lib/xsd/qname.rb +79 -0
  156. data/lib/xsd/xmlparser.rb +76 -0
  157. data/lib/xsd/xmlparser.rb.orig +76 -0
  158. data/lib/xsd/xmlparser/libxmlparser.rb +119 -0
  159. data/lib/xsd/xmlparser/parser.rb +100 -0
  160. data/lib/xsd/xmlparser/rexmlparser.rb +58 -0
  161. data/lib/xsd/xmlparser/xmlparser.rb +50 -0
  162. data/lib/xsd/xmlparser/xmlscanner.rb +149 -0
  163. data/test/16runner.rb +68 -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 +288 -0
  168. data/test/interopR2/client.NetRemoting.rb +17 -0
  169. data/test/interopR2/client.rb +1234 -0
  170. data/test/interopR2/client4S4C.rb +15 -0
  171. data/test/interopR2/client4S4C2.rb +14 -0
  172. data/test/interopR2/clientASP.NET.rb +17 -0
  173. data/test/interopR2/clientApacheAxis.rb +16 -0
  174. data/test/interopR2/clientApacheSOAP.rb +17 -0
  175. data/test/interopR2/clientBEAWebLogic.rb +17 -0
  176. data/test/interopR2/clientBase.rb +1967 -0
  177. data/test/interopR2/clientCapeConnect.rb +18 -0
  178. data/test/interopR2/clientDelphi.rb +19 -0
  179. data/test/interopR2/clientEasySoap.rb +14 -0
  180. data/test/interopR2/clientFrontier.rb +25 -0
  181. data/test/interopR2/clientGLUE.rb +32 -0
  182. data/test/interopR2/clientHP.rb +13 -0
  183. data/test/interopR2/clientJAX-RPC.rb +19 -0
  184. data/test/interopR2/clientJSOAP.rb +14 -0
  185. data/test/interopR2/clientKafkaXSLT.rb +15 -0
  186. data/test/interopR2/clientMSSOAPToolkit2.0.rb +17 -0
  187. data/test/interopR2/clientMSSOAPToolkit3.0.rb +17 -0
  188. data/test/interopR2/clientNuSOAP.rb +19 -0
  189. data/test/interopR2/clientNuWave.rb +15 -0
  190. data/test/interopR2/clientOpenLink.rb +15 -0
  191. data/test/interopR2/clientOracle.rb +15 -0
  192. data/test/interopR2/clientPEAR.rb +18 -0
  193. data/test/interopR2/clientPhalanx.rb +18 -0
  194. data/test/interopR2/clientSIMACE.rb +18 -0
  195. data/test/interopR2/clientSOAP4R.rb +18 -0
  196. data/test/interopR2/clientSOAP__Lite.rb +14 -0
  197. data/test/interopR2/clientSQLData.rb +18 -0
  198. data/test/interopR2/clientSilverStream.rb +17 -0
  199. data/test/interopR2/clientSpray2001.rb +17 -0
  200. data/test/interopR2/clientSun.rb +19 -0
  201. data/test/interopR2/clientVWOpentalkSoap.rb +19 -0
  202. data/test/interopR2/clientWASP.rb +19 -0
  203. data/test/interopR2/clientWASPC.rb +18 -0
  204. data/test/interopR2/clientWebMethods.rb +15 -0
  205. data/test/interopR2/clientWhiteMesa.rb +28 -0
  206. data/test/interopR2/clientWingfoot.rb +15 -0
  207. data/test/interopR2/clientXMLBus.rb +19 -0
  208. data/test/interopR2/clientXMLRPC-EPI.rb +17 -0
  209. data/test/interopR2/clientXSOAP.rb +14 -0
  210. data/test/interopR2/clientZSI.rb +19 -0
  211. data/test/interopR2/clienteSOAP.rb +18 -0
  212. data/test/interopR2/clientgSOAP.rb +18 -0
  213. data/test/interopR2/clientkSOAP.rb +17 -0
  214. data/test/interopR2/iSimonReg.rb +112 -0
  215. data/test/interopR2/interopResultBase.rb +114 -0
  216. data/test/interopR2/interopService.rb +247 -0
  217. data/test/interopR2/rwikiInteropService.rb +105 -0
  218. data/test/interopR2/server.cgi +270 -0
  219. data/test/interopR2/server.rb +275 -0
  220. data/test/interopR2/simonReg.rb +123 -0
  221. data/test/interopR2/test.sh +49 -0
  222. data/test/interopR4/client.rb +112 -0
  223. data/test/results +4810 -0
  224. data/test/runner.rb +7 -0
  225. data/test/sm11/classDef.rb +156 -0
  226. data/test/sm11/client.rb +542 -0
  227. data/test/sm11/driver.rb +183 -0
  228. data/test/sm11/servant.rb +1067 -0
  229. data/test/sm11/server.rb +25 -0
  230. data/test/soap/asp.net/hello.wsdl +96 -0
  231. data/test/soap/asp.net/test_aspdotnet.rb +123 -0
  232. data/test/soap/auth/htdigest +2 -0
  233. data/test/soap/auth/htpasswd +2 -0
  234. data/test/soap/auth/test_basic.rb +117 -0
  235. data/test/soap/auth/test_digest.rb +118 -0
  236. data/test/soap/calc/calc.rb +17 -0
  237. data/test/soap/calc/calc2.rb +29 -0
  238. data/test/soap/calc/server.cgi +13 -0
  239. data/test/soap/calc/server.rb +17 -0
  240. data/test/soap/calc/server2.rb +20 -0
  241. data/test/soap/calc/test_calc.rb +51 -0
  242. data/test/soap/calc/test_calc2.rb +55 -0
  243. data/test/soap/calc/test_calc_cgi.rb +71 -0
  244. data/test/soap/case/test_mapping.rb +57 -0
  245. data/test/soap/fault/test_customfault.rb +60 -0
  246. data/test/soap/fault/test_fault.rb +46 -0
  247. data/test/soap/fault/test_soaparray.rb +35 -0
  248. data/test/soap/filter/test_filter.rb +146 -0
  249. data/test/soap/header/server.cgi +119 -0
  250. data/test/soap/header/session.pstoredb +0 -0
  251. data/test/soap/header/test_authheader.rb +240 -0
  252. data/test/soap/header/test_authheader_cgi.rb +121 -0
  253. data/test/soap/header/test_simplehandler.rb +116 -0
  254. data/test/soap/helloworld/hw_s.rb +16 -0
  255. data/test/soap/helloworld/test_helloworld.rb +43 -0
  256. data/test/soap/htpasswd +2 -0
  257. data/test/soap/literalArrayMapping/amazonEc.rb +4778 -0
  258. data/test/soap/literalArrayMapping/amazonEcDriver.rb +172 -0
  259. data/test/soap/literalArrayMapping/amazonresponse.xml +100 -0
  260. data/test/soap/literalArrayMapping/test_definedarray.rb +34 -0
  261. data/test/soap/marshal/marshaltestlib.rb +494 -0
  262. data/test/soap/marshal/test_digraph.rb +56 -0
  263. data/test/soap/marshal/test_marshal.rb +26 -0
  264. data/test/soap/marshal/test_struct.rb +47 -0
  265. data/test/soap/ssl/README +1 -0
  266. data/test/soap/ssl/ca.cert +23 -0
  267. data/test/soap/ssl/client.cert +19 -0
  268. data/test/soap/ssl/client.key +15 -0
  269. data/test/soap/ssl/server.cert +19 -0
  270. data/test/soap/ssl/server.key +15 -0
  271. data/test/soap/ssl/sslsvr.rb +57 -0
  272. data/test/soap/ssl/subca.cert +21 -0
  273. data/test/soap/ssl/test_ssl.rb +235 -0
  274. data/test/soap/struct/test_struct.rb +70 -0
  275. data/test/soap/styleuse/client.rb +20 -0
  276. data/test/soap/styleuse/server.rb +86 -0
  277. data/test/soap/swa/test_file.rb +75 -0
  278. data/test/soap/test_basetype.rb +1090 -0
  279. data/test/soap/test_cookie.rb +112 -0
  280. data/test/soap/test_custom_ns.rb +105 -0
  281. data/test/soap/test_custommap.rb +110 -0
  282. data/test/soap/test_empty.rb +105 -0
  283. data/test/soap/test_envelopenamespace.rb +85 -0
  284. data/test/soap/test_extraattr.rb +54 -0
  285. data/test/soap/test_generator.rb +27 -0
  286. data/test/soap/test_httpconfigloader.rb +71 -0
  287. data/test/soap/test_mapping.rb +131 -0
  288. data/test/soap/test_nestedexception.rb +56 -0
  289. data/test/soap/test_nil.rb +57 -0
  290. data/test/soap/test_no_indent.rb +88 -0
  291. data/test/soap/test_property.rb +428 -0
  292. data/test/soap/test_response_as_xml.rb +117 -0
  293. data/test/soap/test_soapelement.rb +138 -0
  294. data/test/soap/test_streamhandler.rb +270 -0
  295. data/test/soap/test_styleuse.rb +326 -0
  296. data/test/soap/wsdlDriver/README.txt +2 -0
  297. data/test/soap/wsdlDriver/calc.wsdl +126 -0
  298. data/test/soap/wsdlDriver/document.wsdl +54 -0
  299. data/test/soap/wsdlDriver/echo_version.rb +29 -0
  300. data/test/soap/wsdlDriver/simpletype.wsdl +63 -0
  301. data/test/soap/wsdlDriver/test_calc.rb +71 -0
  302. data/test/soap/wsdlDriver/test_document.rb +71 -0
  303. data/test/soap/wsdlDriver/test_simpletype.rb +80 -0
  304. data/test/testutil.rb +54 -0
  305. data/test/wsdl/abstract/abstract.wsdl +176 -0
  306. data/test/wsdl/abstract/test_abstract.rb +159 -0
  307. data/test/wsdl/anonymous/expectedClassDef.rb +128 -0
  308. data/test/wsdl/anonymous/expectedDriver.rb +59 -0
  309. data/test/wsdl/anonymous/expectedMappingRegistry.rb +176 -0
  310. data/test/wsdl/anonymous/lp.wsdl +147 -0
  311. data/test/wsdl/anonymous/test_anonymous.rb +130 -0
  312. data/test/wsdl/any/any.wsdl +114 -0
  313. data/test/wsdl/any/expectedDriver.rb +68 -0
  314. data/test/wsdl/any/expectedEcho.rb +57 -0
  315. data/test/wsdl/any/expectedMappingRegistry.rb +63 -0
  316. data/test/wsdl/any/expectedService.rb +69 -0
  317. data/test/wsdl/any/test_any.rb +193 -0
  318. data/test/wsdl/axisArray/axisArray.wsdl +87 -0
  319. data/test/wsdl/axisArray/test_axisarray.rb +124 -0
  320. data/test/wsdl/choice/choice.wsdl +167 -0
  321. data/test/wsdl/choice/test_choice.rb +310 -0
  322. data/test/wsdl/complexcontent/complexContent.wsdl +83 -0
  323. data/test/wsdl/complexcontent/test_echo.rb +90 -0
  324. data/test/wsdl/datetime/DatetimeService.rb +44 -0
  325. data/test/wsdl/datetime/datetime.rb +0 -0
  326. data/test/wsdl/datetime/datetime.wsdl +45 -0
  327. data/test/wsdl/datetime/datetimeServant.rb +22 -0
  328. data/test/wsdl/datetime/test_datetime.rb +86 -0
  329. data/test/wsdl/document/array/double.wsdl +161 -0
  330. data/test/wsdl/document/array/test_array.rb +201 -0
  331. data/test/wsdl/document/document.wsdl +76 -0
  332. data/test/wsdl/document/number.wsdl +54 -0
  333. data/test/wsdl/document/ping_nosoapaction.wsdl +66 -0
  334. data/test/wsdl/document/test_nosoapaction.rb +102 -0
  335. data/test/wsdl/document/test_number.rb +92 -0
  336. data/test/wsdl/document/test_rpc.rb +355 -0
  337. data/test/wsdl/emptycomplextype.wsdl +31 -0
  338. data/test/wsdl/fault/fault.wsdl +79 -0
  339. data/test/wsdl/fault/multifault.wsdl +96 -0
  340. data/test/wsdl/fault/test_fault.rb +119 -0
  341. data/test/wsdl/fault/test_multifault.rb +134 -0
  342. data/test/wsdl/group/expectedClassdef.rb +58 -0
  343. data/test/wsdl/group/expectedDriver.rb +51 -0
  344. data/test/wsdl/group/expectedMappingRegistry.rb +67 -0
  345. data/test/wsdl/group/group.wsdl +88 -0
  346. data/test/wsdl/group/test_rpc.rb +145 -0
  347. data/test/wsdl/list/list.wsdl +93 -0
  348. data/test/wsdl/list/test_list.rb +124 -0
  349. data/test/wsdl/map/map.wsdl +92 -0
  350. data/test/wsdl/map/map.xml +43 -0
  351. data/test/wsdl/map/test_map.rb +99 -0
  352. data/test/wsdl/marshal/Person.rb +1 -0
  353. data/test/wsdl/marshal/person.wsdl +21 -0
  354. data/test/wsdl/marshal/person_org.rb +23 -0
  355. data/test/wsdl/marshal/test_wsdlmarshal.rb +76 -0
  356. data/test/wsdl/multiplefault.wsdl +75 -0
  357. data/test/wsdl/oneway/oneway.wsdl +36 -0
  358. data/test/wsdl/oneway/test_oneway.rb +108 -0
  359. data/test/wsdl/overload/expectedClient.rb +37 -0
  360. data/test/wsdl/overload/expectedDriver.rb +61 -0
  361. data/test/wsdl/overload/expectedServant.rb +35 -0
  362. data/test/wsdl/overload/overload.wsdl +70 -0
  363. data/test/wsdl/overload/test_overload.rb +131 -0
  364. data/test/wsdl/qualified/lp.wsdl +47 -0
  365. data/test/wsdl/qualified/lp.xsd +26 -0
  366. data/test/wsdl/qualified/np.wsdl +51 -0
  367. data/test/wsdl/qualified/test_qualified.rb +137 -0
  368. data/test/wsdl/qualified/test_unqualified.rb +138 -0
  369. data/test/wsdl/raa/RAAService.rb +125 -0
  370. data/test/wsdl/raa/README.txt +8 -0
  371. data/test/wsdl/raa/expectedClassDef.rb +100 -0
  372. data/test/wsdl/raa/expectedDriver.rb +96 -0
  373. data/test/wsdl/raa/expectedMappingRegistry.rb +121 -0
  374. data/test/wsdl/raa/raa.wsdl +264 -0
  375. data/test/wsdl/raa/test_raa.rb +126 -0
  376. data/test/wsdl/ref/expectedDriver.rb +51 -0
  377. data/test/wsdl/ref/expectedProduct.rb +243 -0
  378. data/test/wsdl/ref/product.wsdl +147 -0
  379. data/test/wsdl/ref/test_ref.rb +268 -0
  380. data/test/wsdl/rpc/rpc.wsdl +109 -0
  381. data/test/wsdl/rpc/test-rpc-lit.wsdl +371 -0
  382. data/test/wsdl/rpc/test_rpc.rb +176 -0
  383. data/test/wsdl/rpc/test_rpc_lit.rb +470 -0
  384. data/test/wsdl/simplecontent/simplecontent.wsdl +84 -0
  385. data/test/wsdl/simplecontent/test_simplecontent.rb +102 -0
  386. data/test/wsdl/simpletype/rpc/echo_version.rb +1 -0
  387. data/test/wsdl/simpletype/rpc/echo_versionDriver.rb +10 -0
  388. data/test/wsdl/simpletype/rpc/echo_versionMappingRegistry.rb +4 -0
  389. data/test/wsdl/simpletype/rpc/echo_versionServant.rb +3 -0
  390. data/test/wsdl/simpletype/rpc/echo_version_service.rb +3 -0
  391. data/test/wsdl/simpletype/rpc/echo_version_serviceClient.rb +34 -0
  392. data/test/wsdl/simpletype/rpc/expectedClient.rb +34 -0
  393. data/test/wsdl/simpletype/rpc/expectedDriver.rb +58 -0
  394. data/test/wsdl/simpletype/rpc/expectedEchoVersion.rb +36 -0
  395. data/test/wsdl/simpletype/rpc/expectedMappingRegistry.rb +57 -0
  396. data/test/wsdl/simpletype/rpc/expectedServant.rb +32 -0
  397. data/test/wsdl/simpletype/rpc/expectedService.rb +55 -0
  398. data/test/wsdl/simpletype/rpc/rpc.wsdl +98 -0
  399. data/test/wsdl/simpletype/rpc/test_rpc.rb +52 -0
  400. data/test/wsdl/simpletype/simpletype.wsdl +114 -0
  401. data/test/wsdl/simpletype/test_simpletype.rb +92 -0
  402. data/test/wsdl/soap/soapbodyparts.wsdl +103 -0
  403. data/test/wsdl/soap/test_soapbodyparts.rb +79 -0
  404. data/test/wsdl/soap/wsdl2ruby/echo_version.rb +1 -0
  405. data/test/wsdl/soap/wsdl2ruby/echo_versionDriver.rb +10 -0
  406. data/test/wsdl/soap/wsdl2ruby/echo_versionMappingRegistry.rb +4 -0
  407. data/test/wsdl/soap/wsdl2ruby/echo_versionServant.rb +3 -0
  408. data/test/wsdl/soap/wsdl2ruby/echo_version_service.cgi +3 -0
  409. data/test/wsdl/soap/wsdl2ruby/echo_version_service.rb +7 -0
  410. data/test/wsdl/soap/wsdl2ruby/echo_version_serviceClient.rb +34 -0
  411. data/test/wsdl/soap/wsdl2ruby/expectedClassdef.rb +21 -0
  412. data/test/wsdl/soap/wsdl2ruby/expectedClient.rb +34 -0
  413. data/test/wsdl/soap/wsdl2ruby/expectedDriver.rb +58 -0
  414. data/test/wsdl/soap/wsdl2ruby/expectedMappingRegistry.rb +36 -0
  415. data/test/wsdl/soap/wsdl2ruby/expectedServant.rb +32 -0
  416. data/test/wsdl/soap/wsdl2ruby/expectedService.cgi +48 -0
  417. data/test/wsdl/soap/wsdl2ruby/expectedService.rb +55 -0
  418. data/test/wsdl/soap/wsdl2ruby/rpc.wsdl +80 -0
  419. data/test/wsdl/soap/wsdl2ruby/section/expectedClassdef.rb +37 -0
  420. data/test/wsdl/soap/wsdl2ruby/section/section.xsd +31 -0
  421. data/test/wsdl/soap/wsdl2ruby/section/test_section.rb +53 -0
  422. data/test/wsdl/soap/wsdl2ruby/soapenc/soapenc.wsdl +64 -0
  423. data/test/wsdl/soap/wsdl2ruby/soapenc/test_soapenc.rb +83 -0
  424. data/test/wsdl/soap/wsdl2ruby/test_wsdl2ruby.rb +102 -0
  425. data/test/wsdl/soaptype/soaptype.wsdl +61 -0
  426. data/test/wsdl/soaptype/test_soaptype.rb +178 -0
  427. data/test/wsdl/test_emptycomplextype.rb +21 -0
  428. data/test/wsdl/test_fault.rb +50 -0
  429. data/test/wsdl/test_multiplefault.rb +41 -0
  430. data/test/xsd/codegen/test_classdef.rb +244 -0
  431. data/test/xsd/noencoding.xml +4 -0
  432. data/test/xsd/test_noencoding.rb +32 -0
  433. data/test/xsd/test_ns.rb +41 -0
  434. data/test/xsd/test_xmlschemaparser.rb +22 -0
  435. data/test/xsd/test_xsd.rb +1638 -0
  436. data/test/xsd/xmllang.xml +43 -0
  437. data/test/xsd/xmlschema.xml +12 -0
  438. data/test/xsd/xsd2ruby/expected_mysample.rb +65 -0
  439. data/test/xsd/xsd2ruby/expected_mysample_mapper.rb +11 -0
  440. data/test/xsd/xsd2ruby/expected_mysample_mapping_registry.rb +51 -0
  441. data/test/xsd/xsd2ruby/section.xsd +49 -0
  442. data/test/xsd/xsd2ruby/test_xsd2ruby.rb +90 -0
  443. metadata +568 -0
@@ -0,0 +1,42 @@
1
+ # WSDL4R - WSDL SOAP binding data definitions.
2
+ # Copyright (C) 2000-2007 NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
3
+
4
+ # This program is copyrighted free software by NAKAMURA, Hiroshi. You can
5
+ # redistribute it and/or modify it under the same terms of Ruby's license;
6
+ # either the dual license version in 2003, or any later version.
7
+
8
+
9
+ require 'xsd/qname'
10
+ require 'wsdl/soap/definitions'
11
+ require 'wsdl/soap/binding'
12
+ require 'wsdl/soap/operation'
13
+ require 'wsdl/soap/body'
14
+ require 'wsdl/soap/element'
15
+ require 'wsdl/soap/header'
16
+ require 'wsdl/soap/headerfault'
17
+ require 'wsdl/soap/fault'
18
+ require 'wsdl/soap/address'
19
+ require 'wsdl/soap/complexType'
20
+
21
+
22
+ module WSDL
23
+ module SOAP
24
+
25
+
26
+ HeaderFaultName = XSD::QName.new(SOAPBindingNamespace, 'headerfault')
27
+
28
+ LocationAttrName = XSD::QName.new(nil, 'location')
29
+ StyleAttrName = XSD::QName.new(nil, 'style')
30
+ TransportAttrName = XSD::QName.new(nil, 'transport')
31
+ UseAttrName = XSD::QName.new(nil, 'use')
32
+ PartsAttrName = XSD::QName.new(nil, 'parts')
33
+ PartAttrName = XSD::QName.new(nil, 'part')
34
+ NameAttrName = XSD::QName.new(nil, 'name')
35
+ MessageAttrName = XSD::QName.new(nil, 'message')
36
+ EncodingStyleAttrName = XSD::QName.new(nil, 'encodingStyle')
37
+ NamespaceAttrName = XSD::QName.new(nil, 'namespace')
38
+ SOAPActionAttrName = XSD::QName.new(nil, 'soapAction')
39
+
40
+
41
+ end
42
+ end
@@ -0,0 +1,200 @@
1
+ # WSDL4R - WSDL additional definitions for SOAP.
2
+ # Copyright (C) 2000-2007 NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
3
+
4
+ # This program is copyrighted free software by NAKAMURA, Hiroshi. You can
5
+ # redistribute it and/or modify it under the same terms of Ruby's license;
6
+ # either the dual license version in 2003, or any later version.
7
+
8
+
9
+ require 'wsdl/info'
10
+ require 'xsd/namedelements'
11
+ require 'soap/mapping'
12
+
13
+
14
+ module WSDL
15
+
16
+
17
+ class Definitions < Info
18
+ def self.soap_rpc_complextypes
19
+ types = XSD::NamedElements.new
20
+ types << array_complextype
21
+ types << fault_complextype
22
+ types << exception_complextype
23
+ types
24
+ end
25
+
26
+ def self.array_complextype
27
+ type = XMLSchema::ComplexType.new(::SOAP::ValueArrayName)
28
+ type.complexcontent = XMLSchema::ComplexContent.new
29
+ type.complexcontent.restriction = XMLSchema::ComplexRestriction.new
30
+ type.complexcontent.restriction.base = ::SOAP::ValueArrayName
31
+ attr = XMLSchema::Attribute.new
32
+ attr.ref = ::SOAP::AttrArrayTypeName
33
+ anyarray = XSD::QName.new(
34
+ XSD::AnyTypeName.namespace,
35
+ XSD::AnyTypeName.name + '[]')
36
+ attr.arytype = anyarray
37
+ type.complexcontent.restriction.attributes << attr
38
+ type
39
+ end
40
+
41
+ =begin
42
+ <xs:complexType name="Fault" final="extension">
43
+ <xs:sequence>
44
+ <xs:element name="faultcode" type="xs:QName" />
45
+ <xs:element name="faultstring" type="xs:string" />
46
+ <xs:element name="faultactor" type="xs:anyURI" minOccurs="0" />
47
+ <xs:element name="detail" type="tns:detail" minOccurs="0" />
48
+ </xs:sequence>
49
+ </xs:complexType>
50
+ =end
51
+ def self.fault_complextype
52
+ type = XMLSchema::ComplexType.new(::SOAP::EleFaultName)
53
+ faultcode = XMLSchema::Element.new(::SOAP::EleFaultCodeName, XSD::XSDQName::Type)
54
+ faultstring = XMLSchema::Element.new(::SOAP::EleFaultStringName, XSD::XSDString::Type)
55
+ faultactor = XMLSchema::Element.new(::SOAP::EleFaultActorName, XSD::XSDAnyURI::Type)
56
+ faultactor.minoccurs = 0
57
+ detail = XMLSchema::Element.new(::SOAP::EleFaultDetailName, XSD::AnyTypeName)
58
+ detail.minoccurs = 0
59
+ type.all_elements = [faultcode, faultstring, faultactor, detail]
60
+ type.final = 'extension'
61
+ type
62
+ end
63
+
64
+ def self.exception_complextype
65
+ type = XMLSchema::ComplexType.new(XSD::QName.new(
66
+ ::SOAP::Mapping::RubyCustomTypeNamespace, 'SOAPException'))
67
+ excn_name = XMLSchema::Element.new(XSD::QName.new(nil, 'excn_type_name'), XSD::XSDString::Type)
68
+ cause = XMLSchema::Element.new(XSD::QName.new(nil, 'cause'), XSD::AnyTypeName)
69
+ backtrace = XMLSchema::Element.new(XSD::QName.new(nil, 'backtrace'), ::SOAP::ValueArrayName)
70
+ message = XMLSchema::Element.new(XSD::QName.new(nil, 'message'), XSD::XSDString::Type)
71
+ type.all_elements = [excn_name, cause, backtrace, message]
72
+ type
73
+ end
74
+
75
+ def soap_rpc_complextypes(binding)
76
+ types = rpc_operation_complextypes(binding)
77
+ types + self.class.soap_rpc_complextypes
78
+ end
79
+
80
+ def collect_faulttypes
81
+ result = []
82
+ collect_fault_messages.each do |name|
83
+ faultparts = message(name).parts
84
+ if faultparts.size != 1
85
+ raise RuntimeError.new("Expecting fault message \"#{name}\" to have ONE part")
86
+ end
87
+ fault_part = faultparts[0]
88
+ # WS-I Basic Profile Version 1.1 (R2205) requires fault message parts
89
+ # to refer to elements rather than types
90
+ faulttype = fault_part.element
91
+ if not faulttype
92
+ warn("Fault message \"#{name}\" part \"#{fault_part.name}\" must specify an \"element\" attribute")
93
+ faulttype = fault_part.type
94
+ end
95
+ if faulttype and result.index(faulttype).nil?
96
+ result << faulttype
97
+ end
98
+ end
99
+ result
100
+ end
101
+
102
+ private
103
+
104
+ def get_fault_binding(op_binding, fault_name)
105
+ op_binding.fault.each do |fault|
106
+ return fault if fault.name == fault_name
107
+ end
108
+ return nil
109
+ end
110
+
111
+ def op_binding_declares_fault(op_binding, fault_name)
112
+ return get_fault_binding(op_binding, fault_name) != nil
113
+ end
114
+
115
+ def collect_fault_messages
116
+ result = []
117
+ porttypes.each do |porttype|
118
+ port_binding = porttype.find_binding()
119
+ next unless port_binding
120
+ porttype.operations.each do |operation|
121
+ op_binding = port_binding.operations.find { |ele| ele.name == operation.name }
122
+ next unless op_binding
123
+ operation.fault.each do |fault|
124
+ # Make sure the operation fault has a name
125
+ if not fault.name
126
+ warn("Operation \"#{operation.name}\": fault must specify a \"name\" attribute")
127
+ next
128
+ end
129
+ # Make sure that portType fault has a corresponding soap:fault
130
+ # definition in binding section.
131
+ if not op_binding_declares_fault(op_binding, fault.name)
132
+ warn("Operation \"#{operation.name}\", fault \"#{fault.name}\": no corresponding wsdl:fault binding found with a matching \"name\" attribute")
133
+ next
134
+ end
135
+ fault_binding = get_fault_binding(op_binding, fault.name)
136
+ if fault_binding.soapfault.nil?
137
+ warn("WARNING: no soap:fault found for wsdl:fault \"#{fault_binding.name}\" in operation \"#{operation.name}\" \n\n")
138
+ next
139
+ end
140
+ if fault_binding.soapfault.name != fault_binding.name
141
+ warn("WARNING: name of soap:fault \"#{fault_binding.soapfault.name}\" doesn't match the name of wsdl:fault \"#{fault_binding.name}\" in operation \"#{operation.name}\" \n\n")
142
+ next
143
+ end
144
+ # According to WS-I (R2723): if in a wsdl:binding the use attribute
145
+ # on a contained soapbind:fault element is present, its value MUST
146
+ # be "literal".
147
+ if fault_binding.soapfault.use and fault_binding.soapfault.use != "literal"
148
+ warn("Operation \"#{operation.name}\", fault \"#{fault.name}\": soap:fault \"use\" attribute must be \"literal\"")
149
+ end
150
+ if result.index(fault.message).nil?
151
+ result << fault.message
152
+ end
153
+ end
154
+ end
155
+ end
156
+ result
157
+ end
158
+
159
+ def rpc_operation_complextypes(binding)
160
+ types = XSD::NamedElements.new
161
+ binding.operations.each do |op_bind|
162
+ if op_bind_rpc?(op_bind)
163
+ operation = op_bind.find_operation
164
+ if op_bind.input
165
+ type = XMLSchema::ComplexType.new(op_bind.soapoperation_name)
166
+ message = messages[operation.input.message]
167
+ type.sequence_elements = elements_from_message(message)
168
+ types << type
169
+ end
170
+ if op_bind.output
171
+ type = XMLSchema::ComplexType.new(operation.outputname)
172
+ message = messages[operation.output.message]
173
+ type.sequence_elements = elements_from_message(message)
174
+ types << type
175
+ end
176
+ end
177
+ end
178
+ types
179
+ end
180
+
181
+ def op_bind_rpc?(op_bind)
182
+ op_bind.soapoperation_style == :rpc
183
+ end
184
+
185
+ def elements_from_message(message)
186
+ message.parts.collect { |part|
187
+ if part.element
188
+ collect_elements[part.element]
189
+ elsif part.name.nil? or part.type.nil?
190
+ raise RuntimeError.new("part of a message must be an element or typed")
191
+ else
192
+ qname = XSD::QName.new(nil, part.name)
193
+ XMLSchema::Element.new(qname, part.type)
194
+ end
195
+ }
196
+ end
197
+ end
198
+
199
+
200
+ end
@@ -0,0 +1,118 @@
1
+ # WSDL4R - Creating driver code from WSDL.
2
+ # Copyright (C) 2000-2007 NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
3
+
4
+ # This program is copyrighted free software by NAKAMURA, Hiroshi. You can
5
+ # redistribute it and/or modify it under the same terms of Ruby's license;
6
+ # either the dual license version in 2003, or any later version.
7
+
8
+
9
+ require 'wsdl/info'
10
+ require 'wsdl/soap/mappingRegistryCreator'
11
+ require 'wsdl/soap/methodDefCreator'
12
+ require 'wsdl/soap/classDefCreatorSupport'
13
+ require 'xsd/codegen'
14
+
15
+
16
+ module WSDL
17
+ module SOAP
18
+
19
+
20
+ class DriverCreator
21
+ include ClassDefCreatorSupport
22
+
23
+ attr_reader :definitions
24
+ attr_accessor :drivername_postfix
25
+
26
+ def initialize(definitions, name_creator, modulepath = nil)
27
+ @definitions = definitions
28
+ @name_creator = name_creator
29
+ @modulepath = modulepath
30
+ @drivername_postfix = ''
31
+ end
32
+
33
+ def dump(porttype = nil)
34
+ result = "require 'soap/rpc/driver'\n\n"
35
+ if @modulepath
36
+ @modulepath.each do |name|
37
+ result << "module #{name}\n"
38
+ end
39
+ result << "\n"
40
+ end
41
+ if porttype.nil?
42
+ @definitions.porttypes.each do |type|
43
+ result << dump_porttype(type.name)
44
+ result << "\n"
45
+ end
46
+ else
47
+ result << dump_porttype(porttype)
48
+ end
49
+ if @modulepath
50
+ result << "\n"
51
+ @modulepath.each do |name|
52
+ result << "end\n"
53
+ end
54
+ end
55
+ result
56
+ end
57
+
58
+ private
59
+
60
+ def dump_porttype(porttype)
61
+ drivername = porttype.name + @drivername_postfix
62
+ qname = XSD::QName.new(porttype.namespace, drivername)
63
+ class_name = mapped_class_basename(qname, @modulepath)
64
+ defined_const = {}
65
+ mdcreator = MethodDefCreator.new(@definitions, @name_creator, @modulepath, defined_const)
66
+ methoddef = mdcreator.dump(porttype)
67
+ binding = @definitions.bindings.find { |item| item.type == porttype }
68
+ if binding.nil? or binding.soapbinding.nil?
69
+ # not bound or not a SOAP binding
70
+ return ''
71
+ end
72
+ address = @definitions.porttype(porttype).locations[0]
73
+
74
+ c = XSD::CodeGen::ClassDef.new(class_name, "::SOAP::RPC::Driver")
75
+ c.def_const("DefaultEndpointUrl", ndq(address))
76
+ c.def_code <<-EOD
77
+ Methods = [
78
+ #{methoddef.gsub(/^/, " ")}
79
+ ]
80
+ EOD
81
+ wsdl_name = @definitions.name ? @definitions.name.name : 'default'
82
+ mrname = safeconstname(wsdl_name + 'MappingRegistry')
83
+ c.def_method("initialize", "endpoint_url = nil") do
84
+ %Q[endpoint_url ||= DefaultEndpointUrl\n] +
85
+ %Q[super(endpoint_url, nil)\n] +
86
+ %Q[self.mapping_registry = #{mrname}::EncodedRegistry\n] +
87
+ %Q[self.literal_mapping_registry = #{mrname}::LiteralRegistry\n] +
88
+ %Q[init_methods]
89
+ end
90
+ c.def_privatemethod("init_methods") do
91
+ <<-EOD
92
+ Methods.each do |definitions|
93
+ opt = definitions.last
94
+ if opt[:request_style] == :document
95
+ add_document_operation(*definitions)
96
+ else
97
+ add_rpc_operation(*definitions)
98
+ qname = definitions[0]
99
+ name = definitions[2]
100
+ if qname.name != name and qname.name.capitalize == name.capitalize
101
+ ::SOAP::Mapping.define_singleton_method(self, qname.name) do |*arg|
102
+ __send__(name, *arg)
103
+ end
104
+ end
105
+ end
106
+ end
107
+ EOD
108
+ end
109
+ defined_const.each do |ns, tag|
110
+ c.def_const(tag, dq(ns))
111
+ end
112
+ c.dump
113
+ end
114
+ end
115
+
116
+
117
+ end
118
+ end
@@ -0,0 +1,33 @@
1
+ # WSDL4R - XMLSchema element definition for WSDL.
2
+ # Copyright (C) 2000-2007 NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
3
+
4
+ # This program is copyrighted free software by NAKAMURA, Hiroshi. You can
5
+ # redistribute it and/or modify it under the same terms of Ruby's license;
6
+ # either the dual license version in 2003, or any later version.
7
+
8
+
9
+ require 'wsdl/xmlSchema/element'
10
+
11
+
12
+ module WSDL
13
+ module XMLSchema
14
+
15
+
16
+ class Element < Info
17
+ def map_as_array?
18
+ # parent sequence / choice may be marked as maxOccurs="unbounded"
19
+ maxoccurs.nil? or maxoccurs != 1 or (parent and parent.map_as_array?)
20
+ end
21
+
22
+ def anonymous_type?
23
+ !@ref and @name and @local_complextype
24
+ end
25
+
26
+ def attributes
27
+ @local_complextype.attributes
28
+ end
29
+ end
30
+
31
+
32
+ end
33
+ end
@@ -0,0 +1,73 @@
1
+ # WSDL4R - Creating EncodedMappingRegistry code from WSDL.
2
+ # Copyright (C) 2000-2007 NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
3
+
4
+ # This program is copyrighted free software by NAKAMURA, Hiroshi. You can
5
+ # redistribute it and/or modify it under the same terms of Ruby's license;
6
+ # either the dual license version in 2003, or any later version.
7
+
8
+
9
+ require 'wsdl/info'
10
+ require 'wsdl/soap/mappingRegistryCreatorSupport'
11
+
12
+
13
+ module WSDL
14
+ module SOAP
15
+
16
+
17
+ class EncodedMappingRegistryCreator
18
+ include MappingRegistryCreatorSupport
19
+
20
+ attr_reader :definitions
21
+
22
+ def initialize(definitions, name_creator, modulepath, defined_const)
23
+ @definitions = definitions
24
+ @name_creator = name_creator
25
+ @modulepath = modulepath
26
+ @simpletypes = definitions.collect_simpletypes
27
+ @simpletypes.uniq!
28
+ @complextypes = definitions.collect_complextypes
29
+ @complextypes.uniq!
30
+ @varname = nil
31
+ @defined_const = defined_const
32
+ end
33
+
34
+ def dump(varname)
35
+ @varname = varname
36
+ result = ''
37
+ str = dump_complextype
38
+ unless str.empty?
39
+ result << "\n" unless result.empty?
40
+ result << str
41
+ end
42
+ str = dump_simpletype
43
+ unless str.empty?
44
+ result << "\n" unless result.empty?
45
+ result << str
46
+ end
47
+ result
48
+ end
49
+
50
+ private
51
+
52
+ def dump_complextype
53
+ @complextypes.collect { |type|
54
+ unless type.abstract
55
+ dump_with_inner {
56
+ dump_complextypedef(@modulepath, type.name, type, nil, :encoded => true)
57
+ }
58
+ end
59
+ }.compact.join("\n")
60
+ end
61
+
62
+ def dump_simpletype
63
+ @simpletypes.collect { |type|
64
+ dump_with_inner {
65
+ dump_simpletypedef(@modulepath, type.name, type, nil, :encoded => true)
66
+ }
67
+ }.compact.join("\n")
68
+ end
69
+ end
70
+
71
+
72
+ end
73
+ end