wsdl-mapper 0.0.7

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 (617) hide show
  1. checksums.yaml +7 -0
  2. data/.codeclimate.yml +21 -0
  3. data/.gitignore +13 -0
  4. data/.rubocop.yml +1156 -0
  5. data/.ruby-version +1 -0
  6. data/.travis.yml +7 -0
  7. data/.yardopts +3 -0
  8. data/Gemfile +4 -0
  9. data/Guardfile +49 -0
  10. data/LICENSE +21 -0
  11. data/README.md +76 -0
  12. data/Rakefile +18 -0
  13. data/bin/wsdl-mapper +7 -0
  14. data/doc/WsdlMapper.html +129 -0
  15. data/doc/WsdlMapper/Cli.html +124 -0
  16. data/doc/WsdlMapper/Cli/Cli.html +132 -0
  17. data/doc/WsdlMapper/Cli/Generate.html +482 -0
  18. data/doc/WsdlMapper/CoreExt.html +115 -0
  19. data/doc/WsdlMapper/CoreExt/TimeDuration.html +1476 -0
  20. data/doc/WsdlMapper/D10rGeneration.html +117 -0
  21. data/doc/WsdlMapper/D10rGeneration/D10rGenerator.html +473 -0
  22. data/doc/WsdlMapper/D10rGeneration/Facade.html +208 -0
  23. data/doc/WsdlMapper/Deserializers.html +119 -0
  24. data/doc/WsdlMapper/Deserializers/AttrMapping.html +617 -0
  25. data/doc/WsdlMapper/Deserializers/ClassMapping.html +1157 -0
  26. data/doc/WsdlMapper/Deserializers/ClassMapping/Delegate.html +303 -0
  27. data/doc/WsdlMapper/Deserializers/Deserializer.html +760 -0
  28. data/doc/WsdlMapper/Deserializers/ElementDirectory.html +554 -0
  29. data/doc/WsdlMapper/Deserializers/ElementDirectory/ElementItem.html +541 -0
  30. data/doc/WsdlMapper/Deserializers/Errors.html +115 -0
  31. data/doc/WsdlMapper/Deserializers/Errors/UnknownAttributeError.html +147 -0
  32. data/doc/WsdlMapper/Deserializers/Errors/UnknownElementError.html +147 -0
  33. data/doc/WsdlMapper/Deserializers/Errors/UnknownError.html +415 -0
  34. data/doc/WsdlMapper/Deserializers/Errors/UnknownTypeError.html +147 -0
  35. data/doc/WsdlMapper/Deserializers/Frame.html +1038 -0
  36. data/doc/WsdlMapper/Deserializers/LazyLoadingDeserializer.html +287 -0
  37. data/doc/WsdlMapper/Deserializers/PropMapping.html +365 -0
  38. data/doc/WsdlMapper/Deserializers/SaxDocument.html +773 -0
  39. data/doc/WsdlMapper/Deserializers/SoapArrayMapping.html +452 -0
  40. data/doc/WsdlMapper/Deserializers/TypeDirectory.html +386 -0
  41. data/doc/WsdlMapper/Dom.html +123 -0
  42. data/doc/WsdlMapper/Dom/Attribute.html +1156 -0
  43. data/doc/WsdlMapper/Dom/Attribute/Ref.html +222 -0
  44. data/doc/WsdlMapper/Dom/Bounds.html +472 -0
  45. data/doc/WsdlMapper/Dom/Builder.html +696 -0
  46. data/doc/WsdlMapper/Dom/BuiltinType.html +246 -0
  47. data/doc/WsdlMapper/Dom/ComplexType.html +1448 -0
  48. data/doc/WsdlMapper/Dom/Directory.html +735 -0
  49. data/doc/WsdlMapper/Dom/Documentation.html +428 -0
  50. data/doc/WsdlMapper/Dom/Element.html +486 -0
  51. data/doc/WsdlMapper/Dom/EnumerationValue.html +213 -0
  52. data/doc/WsdlMapper/Dom/Name.html +908 -0
  53. data/doc/WsdlMapper/Dom/Namespaces.html +618 -0
  54. data/doc/WsdlMapper/Dom/Property.html +1372 -0
  55. data/doc/WsdlMapper/Dom/Property/Ref.html +724 -0
  56. data/doc/WsdlMapper/Dom/Schema.html +1480 -0
  57. data/doc/WsdlMapper/Dom/ShallowSchema.html +499 -0
  58. data/doc/WsdlMapper/Dom/SimpleType.html +1254 -0
  59. data/doc/WsdlMapper/Dom/SoapEncodingType.html +177 -0
  60. data/doc/WsdlMapper/Dom/TypeBase.html +605 -0
  61. data/doc/WsdlMapper/Dom/Validator.html +334 -0
  62. data/doc/WsdlMapper/Dom/Validator/Error.html +352 -0
  63. data/doc/WsdlMapper/DomGeneration.html +117 -0
  64. data/doc/WsdlMapper/DomGeneration/DefaultClassGenerator.html +251 -0
  65. data/doc/WsdlMapper/DomGeneration/DefaultCtrGenerator.html +404 -0
  66. data/doc/WsdlMapper/DomGeneration/DefaultEnumGenerator.html +321 -0
  67. data/doc/WsdlMapper/DomGeneration/DefaultValueDefaultsGenerator.html +368 -0
  68. data/doc/WsdlMapper/DomGeneration/DefaultValueGenerator.html +811 -0
  69. data/doc/WsdlMapper/DomGeneration/DefaultWrappingTypeGenerator.html +249 -0
  70. data/doc/WsdlMapper/DomGeneration/DocumentedClassGenerator.html +165 -0
  71. data/doc/WsdlMapper/DomGeneration/DocumentedCtrGenerator.html +336 -0
  72. data/doc/WsdlMapper/DomGeneration/DocumentedEnumGenerator.html +171 -0
  73. data/doc/WsdlMapper/DomGeneration/DocumentedSchemaGenerator.html +327 -0
  74. data/doc/WsdlMapper/DomGeneration/DocumentedWrappingTypeGenerator.html +165 -0
  75. data/doc/WsdlMapper/DomGeneration/Facade.html +260 -0
  76. data/doc/WsdlMapper/DomGeneration/GeneratorBase.html +234 -0
  77. data/doc/WsdlMapper/DomGeneration/NullCtrGenerator.html +356 -0
  78. data/doc/WsdlMapper/DomGeneration/SchemaGenerator.html +1407 -0
  79. data/doc/WsdlMapper/DomParsing.html +119 -0
  80. data/doc/WsdlMapper/DomParsing/AbstractResolver.html +228 -0
  81. data/doc/WsdlMapper/DomParsing/AnnotationParser.html +331 -0
  82. data/doc/WsdlMapper/DomParsing/AttributeParser.html +395 -0
  83. data/doc/WsdlMapper/DomParsing/ComplexTypeParser.html +1267 -0
  84. data/doc/WsdlMapper/DomParsing/DefaultResolver.html +278 -0
  85. data/doc/WsdlMapper/DomParsing/ElementParser.html +303 -0
  86. data/doc/WsdlMapper/DomParsing/ImportParser.html +341 -0
  87. data/doc/WsdlMapper/DomParsing/Linker.html +292 -0
  88. data/doc/WsdlMapper/DomParsing/LocalFileResolver.html +270 -0
  89. data/doc/WsdlMapper/DomParsing/Parser.html +1009 -0
  90. data/doc/WsdlMapper/DomParsing/Parser/InvalidNsException.html +131 -0
  91. data/doc/WsdlMapper/DomParsing/Parser/InvalidRootException.html +131 -0
  92. data/doc/WsdlMapper/DomParsing/Parser/ParserException.html +127 -0
  93. data/doc/WsdlMapper/DomParsing/ParserBase.html +190 -0
  94. data/doc/WsdlMapper/DomParsing/SimpleTypeParser.html +275 -0
  95. data/doc/WsdlMapper/DomParsing/UrlResolver.html +199 -0
  96. data/doc/WsdlMapper/DomParsing/Xsd.html +279 -0
  97. data/doc/WsdlMapper/Generation.html +121 -0
  98. data/doc/WsdlMapper/Generation/AbstractFormatter.html +2143 -0
  99. data/doc/WsdlMapper/Generation/Base.html +707 -0
  100. data/doc/WsdlMapper/Generation/Context.html +430 -0
  101. data/doc/WsdlMapper/Generation/DefaultFormatter.html +1803 -0
  102. data/doc/WsdlMapper/Generation/DefaultModuleGenerator.html +295 -0
  103. data/doc/WsdlMapper/Generation/Facade.html +379 -0
  104. data/doc/WsdlMapper/Generation/Result.html +749 -0
  105. data/doc/WsdlMapper/Generation/Result/ModuleTreeNode.html +432 -0
  106. data/doc/WsdlMapper/Generation/TypeToGenerate.html +352 -0
  107. data/doc/WsdlMapper/Generation/YardDocFormatter.html +902 -0
  108. data/doc/WsdlMapper/Naming.html +119 -0
  109. data/doc/WsdlMapper/Naming/AbstractNamer.html +890 -0
  110. data/doc/WsdlMapper/Naming/AbstractServiceNamer.html +2148 -0
  111. data/doc/WsdlMapper/Naming/DefaultNamer.html +1512 -0
  112. data/doc/WsdlMapper/Naming/DefaultNamer/InlineType.html +218 -0
  113. data/doc/WsdlMapper/Naming/DefaultServiceNamer.html +1605 -0
  114. data/doc/WsdlMapper/Naming/EnumerationValueName.html +397 -0
  115. data/doc/WsdlMapper/Naming/Inflector.html +408 -0
  116. data/doc/WsdlMapper/Naming/NamerBase.html +373 -0
  117. data/doc/WsdlMapper/Naming/PropertyName.html +397 -0
  118. data/doc/WsdlMapper/Naming/SeparatingNamer.html +376 -0
  119. data/doc/WsdlMapper/Naming/TypeName.html +1040 -0
  120. data/doc/WsdlMapper/Parsing.html +119 -0
  121. data/doc/WsdlMapper/Parsing/Base.html +359 -0
  122. data/doc/WsdlMapper/Parsing/Logging.html +305 -0
  123. data/doc/WsdlMapper/Parsing/Logging/LogMsg.html +264 -0
  124. data/doc/WsdlMapper/Runtime.html +119 -0
  125. data/doc/WsdlMapper/Runtime/Api.html +628 -0
  126. data/doc/WsdlMapper/Runtime/AsyncHttpBackend.html +674 -0
  127. data/doc/WsdlMapper/Runtime/BackendBase.html +351 -0
  128. data/doc/WsdlMapper/Runtime/Body.html +209 -0
  129. data/doc/WsdlMapper/Runtime/Errors.html +119 -0
  130. data/doc/WsdlMapper/Runtime/Errors/Error.html +289 -0
  131. data/doc/WsdlMapper/Runtime/Errors/HTTPError.html +370 -0
  132. data/doc/WsdlMapper/Runtime/Errors/SoapFault.html +298 -0
  133. data/doc/WsdlMapper/Runtime/Errors/TransportError.html +298 -0
  134. data/doc/WsdlMapper/Runtime/Header.html +120 -0
  135. data/doc/WsdlMapper/Runtime/InputS8r.html +139 -0
  136. data/doc/WsdlMapper/Runtime/Message.html +488 -0
  137. data/doc/WsdlMapper/Runtime/MiddlewareStack.html +1266 -0
  138. data/doc/WsdlMapper/Runtime/Middlewares.html +149 -0
  139. data/doc/WsdlMapper/Runtime/Middlewares/AbstractLogger.html +206 -0
  140. data/doc/WsdlMapper/Runtime/Middlewares/AsyncDispatcher.html +270 -0
  141. data/doc/WsdlMapper/Runtime/Middlewares/AsyncMessageFactory.html +205 -0
  142. data/doc/WsdlMapper/Runtime/Middlewares/AsyncRequestFactory.html +205 -0
  143. data/doc/WsdlMapper/Runtime/Middlewares/AsyncRequestLogger.html +224 -0
  144. data/doc/WsdlMapper/Runtime/Middlewares/AsyncResponseFactory.html +205 -0
  145. data/doc/WsdlMapper/Runtime/Middlewares/AsyncResponseLogger.html +224 -0
  146. data/doc/WsdlMapper/Runtime/Middlewares/Noop.html +189 -0
  147. data/doc/WsdlMapper/Runtime/Middlewares/SimpleDispatcher.html +628 -0
  148. data/doc/WsdlMapper/Runtime/Middlewares/SimpleMessageFactory.html +263 -0
  149. data/doc/WsdlMapper/Runtime/Middlewares/SimpleRequestFactory.html +254 -0
  150. data/doc/WsdlMapper/Runtime/Middlewares/SimpleRequestLogger.html +222 -0
  151. data/doc/WsdlMapper/Runtime/Middlewares/SimpleResponseFactory.html +250 -0
  152. data/doc/WsdlMapper/Runtime/Middlewares/SimpleResponseLogger.html +218 -0
  153. data/doc/WsdlMapper/Runtime/Operation.html +1231 -0
  154. data/doc/WsdlMapper/Runtime/OutputS8r.html +139 -0
  155. data/doc/WsdlMapper/Runtime/Port.html +504 -0
  156. data/doc/WsdlMapper/Runtime/Proxy.html +228 -0
  157. data/doc/WsdlMapper/Runtime/Request.html +736 -0
  158. data/doc/WsdlMapper/Runtime/Response.html +585 -0
  159. data/doc/WsdlMapper/Runtime/S8rBase.html +753 -0
  160. data/doc/WsdlMapper/Runtime/Service.html +396 -0
  161. data/doc/WsdlMapper/Runtime/SimpleHttpBackend.html +260 -0
  162. data/doc/WsdlMapper/Runtime/SimplerInspect.html +205 -0
  163. data/doc/WsdlMapper/S8rGeneration.html +117 -0
  164. data/doc/WsdlMapper/S8rGeneration/Facade.html +208 -0
  165. data/doc/WsdlMapper/S8rGeneration/S8rGenerator.html +415 -0
  166. data/doc/WsdlMapper/Serializers.html +117 -0
  167. data/doc/WsdlMapper/Serializers/AbstractResolver.html +224 -0
  168. data/doc/WsdlMapper/Serializers/SerializerCore.html +710 -0
  169. data/doc/WsdlMapper/Serializers/SerializerFactory.html +326 -0
  170. data/doc/WsdlMapper/Serializers/TypeDirectory.html +556 -0
  171. data/doc/WsdlMapper/Serializers/TypeDirectory/TypeItem.html +388 -0
  172. data/doc/WsdlMapper/SvcDesc.html +158 -0
  173. data/doc/WsdlMapper/SvcDesc/Envelope.html +348 -0
  174. data/doc/WsdlMapper/SvcDesc/Fault.html +580 -0
  175. data/doc/WsdlMapper/SvcDesc/Wsdl11.html +121 -0
  176. data/doc/WsdlMapper/SvcDesc/Wsdl11/Base.html +352 -0
  177. data/doc/WsdlMapper/SvcDesc/Wsdl11/Binding.html +873 -0
  178. data/doc/WsdlMapper/SvcDesc/Wsdl11/Binding/Body.html +708 -0
  179. data/doc/WsdlMapper/SvcDesc/Wsdl11/Binding/Fault.html +358 -0
  180. data/doc/WsdlMapper/SvcDesc/Wsdl11/Binding/Header.html +408 -0
  181. data/doc/WsdlMapper/SvcDesc/Wsdl11/Binding/HeaderBase.html +775 -0
  182. data/doc/WsdlMapper/SvcDesc/Wsdl11/Binding/HeaderFault.html +138 -0
  183. data/doc/WsdlMapper/SvcDesc/Wsdl11/Binding/InputOutput.html +539 -0
  184. data/doc/WsdlMapper/SvcDesc/Wsdl11/Binding/Operation.html +727 -0
  185. data/doc/WsdlMapper/SvcDesc/Wsdl11/Binding/SoapFault.html +387 -0
  186. data/doc/WsdlMapper/SvcDesc/Wsdl11/Description.html +1272 -0
  187. data/doc/WsdlMapper/SvcDesc/Wsdl11/Message.html +467 -0
  188. data/doc/WsdlMapper/SvcDesc/Wsdl11/Message/Part.html +426 -0
  189. data/doc/WsdlMapper/SvcDesc/Wsdl11/PortType.html +499 -0
  190. data/doc/WsdlMapper/SvcDesc/Wsdl11/PortType/InputOutput.html +290 -0
  191. data/doc/WsdlMapper/SvcDesc/Wsdl11/PortType/Operation.html +659 -0
  192. data/doc/WsdlMapper/SvcDesc/Wsdl11/Service.html +335 -0
  193. data/doc/WsdlMapper/SvcDesc/Wsdl11/Service/Port.html +358 -0
  194. data/doc/WsdlMapper/SvcDescParsing.html +119 -0
  195. data/doc/WsdlMapper/SvcDescParsing/BindingParser.html +1271 -0
  196. data/doc/WsdlMapper/SvcDescParsing/Linker.html +308 -0
  197. data/doc/WsdlMapper/SvcDescParsing/MessageParser.html +419 -0
  198. data/doc/WsdlMapper/SvcDescParsing/Parser.html +972 -0
  199. data/doc/WsdlMapper/SvcDescParsing/ParserBase.html +215 -0
  200. data/doc/WsdlMapper/SvcDescParsing/PortTypeParser.html +757 -0
  201. data/doc/WsdlMapper/SvcDescParsing/ServiceParser.html +541 -0
  202. data/doc/WsdlMapper/SvcDescParsing/Soap.html +162 -0
  203. data/doc/WsdlMapper/SvcDescParsing/SoapEnc.html +137 -0
  204. data/doc/WsdlMapper/SvcDescParsing/SoapHttp.html +127 -0
  205. data/doc/WsdlMapper/SvcDescParsing/TypesParser.html +397 -0
  206. data/doc/WsdlMapper/SvcDescParsing/Wsdl11.html +201 -0
  207. data/doc/WsdlMapper/SvcGeneration.html +117 -0
  208. data/doc/WsdlMapper/SvcGeneration/DocumentedOperationGenerator.html +828 -0
  209. data/doc/WsdlMapper/SvcGeneration/DocumentedPortGenerator.html +256 -0
  210. data/doc/WsdlMapper/SvcGeneration/DocumentedProxyGenerator.html +332 -0
  211. data/doc/WsdlMapper/SvcGeneration/DocumentedServiceGenerator.html +258 -0
  212. data/doc/WsdlMapper/SvcGeneration/DocumentedSvcGenerator.html +331 -0
  213. data/doc/WsdlMapper/SvcGeneration/Facade.html +814 -0
  214. data/doc/WsdlMapper/SvcGeneration/GeneratorBase.html +239 -0
  215. data/doc/WsdlMapper/SvcGeneration/GeneratorBase/HeaderToGenerate.html +123 -0
  216. data/doc/WsdlMapper/SvcGeneration/GeneratorBase/PartToGenerate.html +123 -0
  217. data/doc/WsdlMapper/SvcGeneration/OperationD10rGenerator.html +1327 -0
  218. data/doc/WsdlMapper/SvcGeneration/OperationGenerator.html +1487 -0
  219. data/doc/WsdlMapper/SvcGeneration/OperationGeneratorBase.html +162 -0
  220. data/doc/WsdlMapper/SvcGeneration/OperationS8rGenerator.html +2247 -0
  221. data/doc/WsdlMapper/SvcGeneration/PortGenerator.html +453 -0
  222. data/doc/WsdlMapper/SvcGeneration/ProxyGenerator.html +487 -0
  223. data/doc/WsdlMapper/SvcGeneration/ServiceGenerator.html +437 -0
  224. data/doc/WsdlMapper/SvcGeneration/SvcGenerator.html +2055 -0
  225. data/doc/WsdlMapper/SvcGeneration/TypeToGenerate.html +388 -0
  226. data/doc/WsdlMapper/TypeMapping.html +543 -0
  227. data/doc/WsdlMapper/TypeMapping/Base.html +706 -0
  228. data/doc/WsdlMapper/TypeMapping/DateParts.html +209 -0
  229. data/doc/WsdlMapper/TypeMapping/DateParts/Base.html +265 -0
  230. data/doc/WsdlMapper/TypeMapping/MappingSet.html +770 -0
  231. data/doc/WsdlMapperTesting.html +119 -0
  232. data/doc/WsdlMapperTesting/FakeD10r.html +310 -0
  233. data/doc/WsdlMapperTesting/FakeOperation.html +706 -0
  234. data/doc/WsdlMapperTesting/FakeS8r.html +310 -0
  235. data/doc/WsdlMapperTesting/GenerationTest.html +646 -0
  236. data/doc/WsdlMapperTesting/ImplementationTest.html +221 -0
  237. data/doc/WsdlMapperTesting/Middlewares.html +117 -0
  238. data/doc/WsdlMapperTesting/Middlewares/FakeDispatcher.html +310 -0
  239. data/doc/WsdlMapperTesting/Middlewares/FakeMessageFactory.html +414 -0
  240. data/doc/WsdlMapperTesting/Middlewares/FakeRequestFactory.html +271 -0
  241. data/doc/WsdlMapperTesting/Middlewares/FakeResponseFactory.html +271 -0
  242. data/doc/WsdlMapperTesting/SchemaTest.html +209 -0
  243. data/doc/WsdlMapperTesting/StubConnection.html +547 -0
  244. data/doc/WsdlMapperTesting/Test.html +200 -0
  245. data/doc/WsdlMapperTesting/TestHelper.html +394 -0
  246. data/doc/WsdlMapperTesting/TmpPath.html +364 -0
  247. data/doc/WsdlMapperTesting/Vcr.html +196 -0
  248. data/doc/_index.html +1913 -0
  249. data/doc/class_list.html +58 -0
  250. data/doc/concepts/wrapping_types.md +3 -0
  251. data/doc/css/common.css +1 -0
  252. data/doc/css/full_list.css +57 -0
  253. data/doc/css/style.css +339 -0
  254. data/doc/diag/async_backend.gliffy +1 -0
  255. data/doc/diag/async_backend.png +0 -0
  256. data/doc/diag/simple_http_backend.gliffy +1 -0
  257. data/doc/diag/simple_http_backend.md +1 -0
  258. data/doc/diag/simple_http_backend.png +0 -0
  259. data/doc/file.README.html +151 -0
  260. data/doc/file_list.html +60 -0
  261. data/doc/frames.html +26 -0
  262. data/doc/index.html +151 -0
  263. data/doc/js/app.js +219 -0
  264. data/doc/js/full_list.js +181 -0
  265. data/doc/js/jquery.js +4 -0
  266. data/doc/method_list.html +6561 -0
  267. data/doc/top-level-namespace.html +112 -0
  268. data/examples/blz_service/.gitignore +3 -0
  269. data/examples/blz_service/Gemfile +4 -0
  270. data/examples/blz_service/README.md +11 -0
  271. data/examples/blz_service/blz_service.wsdl +86 -0
  272. data/examples/blz_service/example.rb +28 -0
  273. data/examples/calculator/.gitignore +3 -0
  274. data/examples/calculator/Gemfile +4 -0
  275. data/examples/calculator/README.md +11 -0
  276. data/examples/calculator/calculator.wsdl +196 -0
  277. data/examples/calculator/example.rb +25 -0
  278. data/lib/wsdl-mapper.rb +1 -0
  279. data/lib/wsdl_mapper.rb +4 -0
  280. data/lib/wsdl_mapper/cli/cli.rb +90 -0
  281. data/lib/wsdl_mapper/core_ext/time_duration.rb +112 -0
  282. data/lib/wsdl_mapper/d10r_generation/d10r_generator.rb +195 -0
  283. data/lib/wsdl_mapper/d10r_generation/facade.rb +12 -0
  284. data/lib/wsdl_mapper/deserializers/attr_mapping.rb +21 -0
  285. data/lib/wsdl_mapper/deserializers/class_mapping.rb +122 -0
  286. data/lib/wsdl_mapper/deserializers/deserializer.rb +83 -0
  287. data/lib/wsdl_mapper/deserializers/element_directory.rb +66 -0
  288. data/lib/wsdl_mapper/deserializers/errors.rb +28 -0
  289. data/lib/wsdl_mapper/deserializers/frame.rb +31 -0
  290. data/lib/wsdl_mapper/deserializers/lazy_loading_deserializer.rb +39 -0
  291. data/lib/wsdl_mapper/deserializers/prop_mapping.rb +26 -0
  292. data/lib/wsdl_mapper/deserializers/sax_document.rb +156 -0
  293. data/lib/wsdl_mapper/deserializers/soap_array_mapping.rb +34 -0
  294. data/lib/wsdl_mapper/deserializers/type_directory.rb +39 -0
  295. data/lib/wsdl_mapper/dom/attribute.rb +42 -0
  296. data/lib/wsdl_mapper/dom/bounds.rb +15 -0
  297. data/lib/wsdl_mapper/dom/builder.rb +77 -0
  298. data/lib/wsdl_mapper/dom/builtin_type.rb +17 -0
  299. data/lib/wsdl_mapper/dom/complex_type.rb +63 -0
  300. data/lib/wsdl_mapper/dom/directory.rb +74 -0
  301. data/lib/wsdl_mapper/dom/documentation.rb +16 -0
  302. data/lib/wsdl_mapper/dom/element.rb +15 -0
  303. data/lib/wsdl_mapper/dom/enumeration_value.rb +11 -0
  304. data/lib/wsdl_mapper/dom/name.rb +69 -0
  305. data/lib/wsdl_mapper/dom/namespaces.rb +88 -0
  306. data/lib/wsdl_mapper/dom/property.rb +56 -0
  307. data/lib/wsdl_mapper/dom/schema.rb +120 -0
  308. data/lib/wsdl_mapper/dom/shallow_schema.rb +34 -0
  309. data/lib/wsdl_mapper/dom/simple_type.rb +28 -0
  310. data/lib/wsdl_mapper/dom/soap_encoding_type.rb +13 -0
  311. data/lib/wsdl_mapper/dom/type_base.rb +31 -0
  312. data/lib/wsdl_mapper/dom/validator.rb +36 -0
  313. data/lib/wsdl_mapper/dom_generation/default_class_generator.rb +78 -0
  314. data/lib/wsdl_mapper/dom_generation/default_ctr_generator.rb +99 -0
  315. data/lib/wsdl_mapper/dom_generation/default_enum_generator.rb +59 -0
  316. data/lib/wsdl_mapper/dom_generation/default_value_defaults_generator.rb +52 -0
  317. data/lib/wsdl_mapper/dom_generation/default_value_generator.rb +82 -0
  318. data/lib/wsdl_mapper/dom_generation/default_wrapping_type_generator.rb +44 -0
  319. data/lib/wsdl_mapper/dom_generation/documented_class_generator.rb +58 -0
  320. data/lib/wsdl_mapper/dom_generation/documented_ctr_generator.rb +54 -0
  321. data/lib/wsdl_mapper/dom_generation/documented_enum_generator.rb +30 -0
  322. data/lib/wsdl_mapper/dom_generation/documented_schema_generator.rb +51 -0
  323. data/lib/wsdl_mapper/dom_generation/documented_wrapping_type_generator.rb +17 -0
  324. data/lib/wsdl_mapper/dom_generation/facade.rb +18 -0
  325. data/lib/wsdl_mapper/dom_generation/generator_base.rb +66 -0
  326. data/lib/wsdl_mapper/dom_generation/null_ctr_generator.rb +20 -0
  327. data/lib/wsdl_mapper/dom_generation/schema_generator.rb +134 -0
  328. data/lib/wsdl_mapper/dom_parsing/abstract_resolver.rb +10 -0
  329. data/lib/wsdl_mapper/dom_parsing/annotation_parser.rb +25 -0
  330. data/lib/wsdl_mapper/dom_parsing/attribute_parser.rb +47 -0
  331. data/lib/wsdl_mapper/dom_parsing/complex_type_parser.rb +213 -0
  332. data/lib/wsdl_mapper/dom_parsing/default_resolver.rb +30 -0
  333. data/lib/wsdl_mapper/dom_parsing/element_parser.rb +43 -0
  334. data/lib/wsdl_mapper/dom_parsing/import_parser.rb +31 -0
  335. data/lib/wsdl_mapper/dom_parsing/linker.rb +108 -0
  336. data/lib/wsdl_mapper/dom_parsing/local_file_resolver.rb +19 -0
  337. data/lib/wsdl_mapper/dom_parsing/parser.rb +127 -0
  338. data/lib/wsdl_mapper/dom_parsing/parser_base.rb +41 -0
  339. data/lib/wsdl_mapper/dom_parsing/simple_type_parser.rb +99 -0
  340. data/lib/wsdl_mapper/dom_parsing/url_resolver.rb +16 -0
  341. data/lib/wsdl_mapper/dom_parsing/xsd.rb +47 -0
  342. data/lib/wsdl_mapper/generation/abstract_formatter.rb +115 -0
  343. data/lib/wsdl_mapper/generation/base.rb +69 -0
  344. data/lib/wsdl_mapper/generation/context.rb +35 -0
  345. data/lib/wsdl_mapper/generation/default_formatter.rb +237 -0
  346. data/lib/wsdl_mapper/generation/default_module_generator.rb +32 -0
  347. data/lib/wsdl_mapper/generation/facade.rb +59 -0
  348. data/lib/wsdl_mapper/generation/result.rb +61 -0
  349. data/lib/wsdl_mapper/generation/type_to_generate.rb +12 -0
  350. data/lib/wsdl_mapper/generation/yard_doc_formatter.rb +105 -0
  351. data/lib/wsdl_mapper/naming/abstract_namer.rb +53 -0
  352. data/lib/wsdl_mapper/naming/abstract_service_namer.rb +115 -0
  353. data/lib/wsdl_mapper/naming/default_namer.rb +183 -0
  354. data/lib/wsdl_mapper/naming/default_service_namer.rb +147 -0
  355. data/lib/wsdl_mapper/naming/enumeration_value_name.rb +16 -0
  356. data/lib/wsdl_mapper/naming/inflector.rb +42 -0
  357. data/lib/wsdl_mapper/naming/namer_base.rb +115 -0
  358. data/lib/wsdl_mapper/naming/property_name.rb +16 -0
  359. data/lib/wsdl_mapper/naming/separating_namer.rb +122 -0
  360. data/lib/wsdl_mapper/naming/type_name.rb +77 -0
  361. data/lib/wsdl_mapper/parsing/base.rb +148 -0
  362. data/lib/wsdl_mapper/parsing/logging.rb +33 -0
  363. data/lib/wsdl_mapper/runtime.rb +4 -0
  364. data/lib/wsdl_mapper/runtime/api.rb +42 -0
  365. data/lib/wsdl_mapper/runtime/async_http_backend.rb +72 -0
  366. data/lib/wsdl_mapper/runtime/backend_base.rb +21 -0
  367. data/lib/wsdl_mapper/runtime/body.rb +10 -0
  368. data/lib/wsdl_mapper/runtime/errors.rb +42 -0
  369. data/lib/wsdl_mapper/runtime/header.rb +6 -0
  370. data/lib/wsdl_mapper/runtime/input_s8r.rb +8 -0
  371. data/lib/wsdl_mapper/runtime/message.rb +23 -0
  372. data/lib/wsdl_mapper/runtime/middleware_stack.rb +104 -0
  373. data/lib/wsdl_mapper/runtime/middlewares.rb +19 -0
  374. data/lib/wsdl_mapper/runtime/middlewares/abstract_logger.rb +19 -0
  375. data/lib/wsdl_mapper/runtime/middlewares/async_dispatcher.rb +21 -0
  376. data/lib/wsdl_mapper/runtime/middlewares/async_message_factory.rb +17 -0
  377. data/lib/wsdl_mapper/runtime/middlewares/async_request_factory.rb +17 -0
  378. data/lib/wsdl_mapper/runtime/middlewares/async_request_logger.rb +17 -0
  379. data/lib/wsdl_mapper/runtime/middlewares/async_response_factory.rb +17 -0
  380. data/lib/wsdl_mapper/runtime/middlewares/async_response_logger.rb +17 -0
  381. data/lib/wsdl_mapper/runtime/middlewares/noop.rb +11 -0
  382. data/lib/wsdl_mapper/runtime/middlewares/simple_dispatcher.rb +69 -0
  383. data/lib/wsdl_mapper/runtime/middlewares/simple_message_factory.rb +19 -0
  384. data/lib/wsdl_mapper/runtime/middlewares/simple_request_factory.rb +37 -0
  385. data/lib/wsdl_mapper/runtime/middlewares/simple_request_logger.rb +18 -0
  386. data/lib/wsdl_mapper/runtime/middlewares/simple_response_factory.rb +26 -0
  387. data/lib/wsdl_mapper/runtime/middlewares/simple_response_logger.rb +16 -0
  388. data/lib/wsdl_mapper/runtime/operation.rb +90 -0
  389. data/lib/wsdl_mapper/runtime/output_s8r.rb +9 -0
  390. data/lib/wsdl_mapper/runtime/port.rb +30 -0
  391. data/lib/wsdl_mapper/runtime/proxy.rb +12 -0
  392. data/lib/wsdl_mapper/runtime/request.rb +35 -0
  393. data/lib/wsdl_mapper/runtime/response.rb +27 -0
  394. data/lib/wsdl_mapper/runtime/s8r_base.rb +57 -0
  395. data/lib/wsdl_mapper/runtime/service.rb +25 -0
  396. data/lib/wsdl_mapper/runtime/simple_http_backend.rb +34 -0
  397. data/lib/wsdl_mapper/runtime/simpler_inspect.rb +19 -0
  398. data/lib/wsdl_mapper/s8r_generation/facade.rb +12 -0
  399. data/lib/wsdl_mapper/s8r_generation/s8r_generator.rb +276 -0
  400. data/lib/wsdl_mapper/serializers/abstract_resolver.rb +11 -0
  401. data/lib/wsdl_mapper/serializers/serializer_core.rb +111 -0
  402. data/lib/wsdl_mapper/serializers/serializer_factory.rb +27 -0
  403. data/lib/wsdl_mapper/serializers/type_directory.rb +75 -0
  404. data/lib/wsdl_mapper/svc_desc/envelope.rb +12 -0
  405. data/lib/wsdl_mapper/svc_desc/fault.rb +27 -0
  406. data/lib/wsdl_mapper/svc_desc/soap_element_directory.rb +13 -0
  407. data/lib/wsdl_mapper/svc_desc/soap_type_directory.rb +21 -0
  408. data/lib/wsdl_mapper/svc_desc/wsdl11/base.rb +16 -0
  409. data/lib/wsdl_mapper/svc_desc/wsdl11/binding.rb +148 -0
  410. data/lib/wsdl_mapper/svc_desc/wsdl11/description.rb +86 -0
  411. data/lib/wsdl_mapper/svc_desc/wsdl11/message.rb +32 -0
  412. data/lib/wsdl_mapper/svc_desc/wsdl11/port_type.rb +63 -0
  413. data/lib/wsdl_mapper/svc_desc/wsdl11/service.rb +27 -0
  414. data/lib/wsdl_mapper/svc_desc_parsing/binding_parser.rb +198 -0
  415. data/lib/wsdl_mapper/svc_desc_parsing/http.rb +14 -0
  416. data/lib/wsdl_mapper/svc_desc_parsing/linker.rb +126 -0
  417. data/lib/wsdl_mapper/svc_desc_parsing/message_parser.rb +42 -0
  418. data/lib/wsdl_mapper/svc_desc_parsing/parser.rb +94 -0
  419. data/lib/wsdl_mapper/svc_desc_parsing/parser_base.rb +24 -0
  420. data/lib/wsdl_mapper/svc_desc_parsing/port_type_parser.rb +101 -0
  421. data/lib/wsdl_mapper/svc_desc_parsing/service_parser.rb +66 -0
  422. data/lib/wsdl_mapper/svc_desc_parsing/soap.rb +18 -0
  423. data/lib/wsdl_mapper/svc_desc_parsing/soap12.rb +18 -0
  424. data/lib/wsdl_mapper/svc_desc_parsing/soap_enc.rb +13 -0
  425. data/lib/wsdl_mapper/svc_desc_parsing/soap_http.rb +11 -0
  426. data/lib/wsdl_mapper/svc_desc_parsing/types_parser.rb +31 -0
  427. data/lib/wsdl_mapper/svc_desc_parsing/wsdl11.rb +27 -0
  428. data/lib/wsdl_mapper/svc_generation/documented_operation_generator.rb +104 -0
  429. data/lib/wsdl_mapper/svc_generation/documented_port_generator.rb +19 -0
  430. data/lib/wsdl_mapper/svc_generation/documented_proxy_generator.rb +36 -0
  431. data/lib/wsdl_mapper/svc_generation/documented_service_generator.rb +20 -0
  432. data/lib/wsdl_mapper/svc_generation/documented_svc_generator.rb +38 -0
  433. data/lib/wsdl_mapper/svc_generation/facade.rb +78 -0
  434. data/lib/wsdl_mapper/svc_generation/generator_base.rb +111 -0
  435. data/lib/wsdl_mapper/svc_generation/operation_d10r_generator.rb +171 -0
  436. data/lib/wsdl_mapper/svc_generation/operation_generator.rb +217 -0
  437. data/lib/wsdl_mapper/svc_generation/operation_generator_base.rb +8 -0
  438. data/lib/wsdl_mapper/svc_generation/operation_s8r_generator.rb +260 -0
  439. data/lib/wsdl_mapper/svc_generation/port_generator.rb +56 -0
  440. data/lib/wsdl_mapper/svc_generation/proxy_generator.rb +51 -0
  441. data/lib/wsdl_mapper/svc_generation/service_generator.rb +49 -0
  442. data/lib/wsdl_mapper/svc_generation/svc_generator.rb +172 -0
  443. data/lib/wsdl_mapper/svc_generation/type_to_generate.rb +6 -0
  444. data/lib/wsdl_mapper/type_mapping.rb +21 -0
  445. data/lib/wsdl_mapper/type_mapping/base.rb +48 -0
  446. data/lib/wsdl_mapper/type_mapping/base64_binary.rb +31 -0
  447. data/lib/wsdl_mapper/type_mapping/boolean.rb +31 -0
  448. data/lib/wsdl_mapper/type_mapping/date.rb +28 -0
  449. data/lib/wsdl_mapper/type_mapping/date_parts.rb +92 -0
  450. data/lib/wsdl_mapper/type_mapping/date_time.rb +28 -0
  451. data/lib/wsdl_mapper/type_mapping/decimal.rb +30 -0
  452. data/lib/wsdl_mapper/type_mapping/duration.rb +115 -0
  453. data/lib/wsdl_mapper/type_mapping/float.rb +30 -0
  454. data/lib/wsdl_mapper/type_mapping/hex_binary.rb +30 -0
  455. data/lib/wsdl_mapper/type_mapping/integer.rb +36 -0
  456. data/lib/wsdl_mapper/type_mapping/mapping_set.rb +64 -0
  457. data/lib/wsdl_mapper/type_mapping/string.rb +38 -0
  458. data/lib/wsdl_mapper/type_mapping/time.rb +29 -0
  459. data/lib/wsdl_mapper/type_mapping/uri.rb +35 -0
  460. data/lib/wsdl_mapper/version.rb +3 -0
  461. data/lib/wsdl_mapper_testing/fake_d10r.rb +15 -0
  462. data/lib/wsdl_mapper_testing/fake_operation.rb +33 -0
  463. data/lib/wsdl_mapper_testing/fake_s8r.rb +15 -0
  464. data/lib/wsdl_mapper_testing/generation_test.rb +47 -0
  465. data/lib/wsdl_mapper_testing/implementation_test.rb +17 -0
  466. data/lib/wsdl_mapper_testing/middlewares/fake_dispatcher.rb +17 -0
  467. data/lib/wsdl_mapper_testing/middlewares/fake_message_factory.rb +23 -0
  468. data/lib/wsdl_mapper_testing/middlewares/fake_request_factory.rb +20 -0
  469. data/lib/wsdl_mapper_testing/middlewares/fake_response_factory.rb +20 -0
  470. data/lib/wsdl_mapper_testing/schema_test.rb +9 -0
  471. data/lib/wsdl_mapper_testing/stub_connection.rb +52 -0
  472. data/lib/wsdl_mapper_testing/test.rb +9 -0
  473. data/lib/wsdl_mapper_testing/test_helper.rb +29 -0
  474. data/lib/wsdl_mapper_testing/tmp_path.rb +20 -0
  475. data/lib/wsdl_mapper_testing/vcr.rb +19 -0
  476. data/test/compatibility/dom_compatibility_test.rb +56 -0
  477. data/test/compatibility/svc_compatibility_test.rb +47 -0
  478. data/test/fixtures/address_type_enumeration.xsd +9 -0
  479. data/test/fixtures/address_type_enumeration_with_documentation.xsd +16 -0
  480. data/test/fixtures/address_type_enumeration_with_value_documentation.xsd +21 -0
  481. data/test/fixtures/attachment_type_for_import.xsd +9 -0
  482. data/test/fixtures/basic_credentials_type.xsd +9 -0
  483. data/test/fixtures/basic_note_inline_type.xsd +13 -0
  484. data/test/fixtures/basic_note_type.xsd +11 -0
  485. data/test/fixtures/basic_note_type_and_fancy_note_type_extension.xsd +21 -0
  486. data/test/fixtures/basic_note_type_and_fancy_note_type_extension_with_namespace.xsd +21 -0
  487. data/test/fixtures/basic_note_type_with_an_invalid_root_node.xsd +11 -0
  488. data/test/fixtures/basic_note_type_with_attachments.xsd +12 -0
  489. data/test/fixtures/basic_note_type_with_attachments_simple_type.xsd +16 -0
  490. data/test/fixtures/basic_note_type_with_attribute.xsd +12 -0
  491. data/test/fixtures/basic_note_type_with_boolean_property.xsd +12 -0
  492. data/test/fixtures/basic_note_type_with_boolean_property_and_documentation.xsd +24 -0
  493. data/test/fixtures/basic_note_type_with_complex_attachments.xsd +22 -0
  494. data/test/fixtures/basic_note_type_with_date.xsd +12 -0
  495. data/test/fixtures/basic_note_type_with_defaults.xsd +12 -0
  496. data/test/fixtures/basic_note_type_with_documentation_and_bounds.xsd +19 -0
  497. data/test/fixtures/basic_note_type_with_element.xsd +12 -0
  498. data/test/fixtures/basic_note_type_with_element_inline_complex_type.xsd +13 -0
  499. data/test/fixtures/basic_note_type_with_import.xsd +13 -0
  500. data/test/fixtures/basic_note_type_with_inline_complex_type.xsd +20 -0
  501. data/test/fixtures/basic_note_type_with_inline_simple_type.xsd +17 -0
  502. data/test/fixtures/basic_note_type_with_invalid_xsd_namespace.xsd +11 -0
  503. data/test/fixtures/basic_note_type_with_missing_xsd_namespace.xsd +11 -0
  504. data/test/fixtures/basic_note_type_with_property_and_attribute.xsd +15 -0
  505. data/test/fixtures/basic_note_type_with_property_and_attribute_documentation.xsd +30 -0
  506. data/test/fixtures/basic_note_type_with_ref_attribute.xsd +13 -0
  507. data/test/fixtures/basic_note_type_with_referenced_simple_email_address_type.xsd +15 -0
  508. data/test/fixtures/basic_note_type_with_soap_array.xsd +26 -0
  509. data/test/fixtures/basic_note_type_with_soap_array_builtin.xsd +20 -0
  510. data/test/fixtures/basic_note_type_with_soap_array_simple.xsd +25 -0
  511. data/test/fixtures/basic_note_type_with_target_namespace.xsd +11 -0
  512. data/test/fixtures/basic_order_type_with_referenced_address_type_enum.xsd +17 -0
  513. data/test/fixtures/basic_order_type_with_required_address_type_enum.xsd +17 -0
  514. data/test/fixtures/element_inline_simple_type.xsd +8 -0
  515. data/test/fixtures/empty_note_type.xsd +8 -0
  516. data/test/fixtures/empty_note_type_with_multiline_documentation.xsd +13 -0
  517. data/test/fixtures/empty_note_type_with_target_namespace.xsd +7 -0
  518. data/test/fixtures/empty_note_with_documentaion_and_target_namespace.xsd +12 -0
  519. data/test/fixtures/ms_cust_order_example.xsd +77 -0
  520. data/test/fixtures/services/cdiscount.wsdl +4034 -0
  521. data/test/fixtures/services/ebaySvc.wsdl +144554 -0
  522. data/test/fixtures/services/ebaySvc.xsd +140654 -0
  523. data/test/fixtures/services/magento_v2.wsdl +5477 -0
  524. data/test/fixtures/services/magento_v2.xsd +2152 -0
  525. data/test/fixtures/services/plenty_114.wsdl +11954 -0
  526. data/test/fixtures/services/plenty_114.xsd +7948 -0
  527. data/test/fixtures/services/tb-cat_1_2_import.xsd +1769 -0
  528. data/test/fixtures/services/tb-stock_all_in_one.xsd +936 -0
  529. data/test/fixtures/simple_email_address_type.xsd +6 -0
  530. data/test/fixtures/simple_email_address_type_with_documentation.xsd +11 -0
  531. data/test/fixtures/simple_money_type_with_currency_attribute.xsd +10 -0
  532. data/test/fixtures/super_fancy_note_type.xsd +31 -0
  533. data/test/fixtures/w3_example.xsd +15 -0
  534. data/test/fixtures/wsdls/price_service.wsdl +88 -0
  535. data/test/fixtures/wsdls/price_service_doc_encoded.wsdl +87 -0
  536. data/test/fixtures/wsdls/price_service_doc_literal.wsdl +89 -0
  537. data/test/fixtures/wsdls/price_service_doc_literal2.wsdl +88 -0
  538. data/test/fixtures/wsdls/price_service_doc_literal_type.wsdl +84 -0
  539. data/test/fixtures/wsdls/price_service_rpc_encoded.wsdl +85 -0
  540. data/test/fixtures/wsdls/price_service_rpc_encoded2.wsdl +86 -0
  541. data/test/fixtures/wsdls/price_service_rpc_literal.wsdl +88 -0
  542. data/test/fixtures/wsdls/price_service_rpc_literal2.wsdl +86 -0
  543. data/test/fixtures/wsdls/simple_service.wsdl +93 -0
  544. data/test/fixtures/wsdls/simple_service_with_overload.wsdl +123 -0
  545. data/test/fixtures/wsdls/w3_example.wsdl +64 -0
  546. data/test/test_helper.rb +29 -0
  547. data/test/wsdl_mapper/cli/cli_test.rb +10 -0
  548. data/test/wsdl_mapper/core_ext/time_duration_test.rb +82 -0
  549. data/test/wsdl_mapper/d10r_generation/d10r_generator_test.rb +227 -0
  550. data/test/wsdl_mapper/deserializers/benchmark_test.rb +906 -0
  551. data/test/wsdl_mapper/deserializers/deserializer_integration_test.rb +115 -0
  552. data/test/wsdl_mapper/deserializers/deserializer_test.rb +343 -0
  553. data/test/wsdl_mapper/deserializers/deserializer_with_ns_test.rb +188 -0
  554. data/test/wsdl_mapper/deserializers/operation_deserializer_test.rb +342 -0
  555. data/test/wsdl_mapper/dom/builtin_type_test.rb +25 -0
  556. data/test/wsdl_mapper/dom/enumeration_value_test.rb +14 -0
  557. data/test/wsdl_mapper/dom/name_test.rb +31 -0
  558. data/test/wsdl_mapper/dom/namespaces_test.rb +96 -0
  559. data/test/wsdl_mapper/dom/simple_type_test.rb +26 -0
  560. data/test/wsdl_mapper/dom/validator_test.rb +30 -0
  561. data/test/wsdl_mapper/dom_generation/default_class_generator_test.rb +213 -0
  562. data/test/wsdl_mapper/dom_generation/default_ctr_generator_test.rb +166 -0
  563. data/test/wsdl_mapper/dom_generation/default_enum_generator_test.rb +35 -0
  564. data/test/wsdl_mapper/dom_generation/default_value_generator_test.rb +72 -0
  565. data/test/wsdl_mapper/dom_generation/default_wrapping_type_generator_test.rb +65 -0
  566. data/test/wsdl_mapper/dom_generation/documented_class_generator_test.rb +151 -0
  567. data/test/wsdl_mapper/dom_generation/documented_ctr_generator_test.rb +84 -0
  568. data/test/wsdl_mapper/dom_generation/documented_enum_generator_test.rb +66 -0
  569. data/test/wsdl_mapper/dom_generation/documented_schema_generator_test.rb +73 -0
  570. data/test/wsdl_mapper/dom_generation/documented_wrapping_type_generator_test.rb +34 -0
  571. data/test/wsdl_mapper/dom_generation/schema_generator_test.rb +53 -0
  572. data/test/wsdl_mapper/dom_parsing/parser_test.rb +300 -0
  573. data/test/wsdl_mapper/generation/default_formatter_test.rb +104 -0
  574. data/test/wsdl_mapper/naming/default_namer_test.rb +127 -0
  575. data/test/wsdl_mapper/naming/default_service_namer_test.rb +15 -0
  576. data/test/wsdl_mapper/naming/inflector_test.rb +37 -0
  577. data/test/wsdl_mapper/naming/separating_namer_test.rb +53 -0
  578. data/test/wsdl_mapper/naming/type_name_test.rb +50 -0
  579. data/test/wsdl_mapper/runtime/async_http_backend_test.rb +57 -0
  580. data/test/wsdl_mapper/runtime/middleware_stack_test.rb +130 -0
  581. data/test/wsdl_mapper/runtime/middlewares/simple_dispatcher_test.rb +45 -0
  582. data/test/wsdl_mapper/runtime/operation_test.rb +79 -0
  583. data/test/wsdl_mapper/runtime/simple_http_backend_test.rb +49 -0
  584. data/test/wsdl_mapper/s8r_generation/s8r_generator_test.rb +450 -0
  585. data/test/wsdl_mapper/serializers/serializer_core_test.rb +293 -0
  586. data/test/wsdl_mapper/serializers/serializer_factory_test.rb +46 -0
  587. data/test/wsdl_mapper/serializers/type_directory_test.rb +31 -0
  588. data/test/wsdl_mapper/svc_desc_parsing/parser_test.rb +269 -0
  589. data/test/wsdl_mapper/svc_generation/documented_operation_generator_test.rb +226 -0
  590. data/test/wsdl_mapper/svc_generation/documented_port_generator_test.rb +46 -0
  591. data/test/wsdl_mapper/svc_generation/documented_service_generator_test.rb +42 -0
  592. data/test/wsdl_mapper/svc_generation/documented_svc_generator_test.rb +41 -0
  593. data/test/wsdl_mapper/svc_generation/operation_d10r_generator_test.rb +134 -0
  594. data/test/wsdl_mapper/svc_generation/operation_generator_test.rb +261 -0
  595. data/test/wsdl_mapper/svc_generation/operation_s8r_generator_test.rb +165 -0
  596. data/test/wsdl_mapper/svc_generation/port_generator_test.rb +43 -0
  597. data/test/wsdl_mapper/svc_generation/proxy_generator_test.rb +40 -0
  598. data/test/wsdl_mapper/svc_generation/service_generator_test.rb +38 -0
  599. data/test/wsdl_mapper/svc_generation/svc_generator_test.rb +38 -0
  600. data/test/wsdl_mapper/type_mapping/base64_binary_test.rb +27 -0
  601. data/test/wsdl_mapper/type_mapping/base_test.rb +37 -0
  602. data/test/wsdl_mapper/type_mapping/boolean_test.rb +25 -0
  603. data/test/wsdl_mapper/type_mapping/date_parts_test.rb +81 -0
  604. data/test/wsdl_mapper/type_mapping/date_test.rb +23 -0
  605. data/test/wsdl_mapper/type_mapping/date_time_test.rb +23 -0
  606. data/test/wsdl_mapper/type_mapping/decimal_test.rb +21 -0
  607. data/test/wsdl_mapper/type_mapping/duration_test.rb +34 -0
  608. data/test/wsdl_mapper/type_mapping/float_test.rb +27 -0
  609. data/test/wsdl_mapper/type_mapping/hex_binary_test.rb +27 -0
  610. data/test/wsdl_mapper/type_mapping/integer_test.rb +36 -0
  611. data/test/wsdl_mapper/type_mapping/string_test.rb +24 -0
  612. data/test/wsdl_mapper/type_mapping/time_test.rb +29 -0
  613. data/test/wsdl_mapper/type_mapping/uri_test.rb +28 -0
  614. data/test/wsdl_mapper/type_mapping_test.rb +70 -0
  615. data/test/wsdl_mapper_testing/stub_connection_test.rb +55 -0
  616. data/wsdl-mapper.gemspec +39 -0
  617. metadata +1038 -0
@@ -0,0 +1,104 @@
1
+ require 'wsdl_mapper/svc_generation/operation_generator'
2
+ require 'wsdl_mapper/generation/yard_doc_formatter'
3
+
4
+ module WsdlMapper
5
+ module SvcGeneration
6
+ class DocumentedOperationGenerator < OperationGenerator
7
+ def generate_header_accessors(f, parts)
8
+ yard = WsdlMapper::Generation::YardDocFormatter.new f
9
+ parts.each do |p|
10
+ attr_name = p.property_name.attr_name
11
+ type = p.name.name
12
+ yard.attribute! attr_name, type, nil
13
+ f.attr_accessors p.property_name.attr_name
14
+ end
15
+ end
16
+
17
+ def generate_new_input(f, service, port, op)
18
+ yard = WsdlMapper::Generation::YardDocFormatter.new f
19
+ header_name = service_namer.get_input_header_name(service.type, port.type, op.type)
20
+ body_name = service_namer.get_input_body_name(service.type, port.type, op.type)
21
+ f.blank_line
22
+ generate_new_documentation body_name, header_name, yard
23
+ super
24
+ end
25
+
26
+ def generate_new_output(f, service, port, op)
27
+ yard = WsdlMapper::Generation::YardDocFormatter.new f
28
+ header_name = service_namer.get_output_header_name(service.type, port.type, op.type)
29
+ body_name = service_namer.get_output_body_name(service.type, port.type, op.type)
30
+ f.blank_line
31
+ generate_new_documentation body_name, header_name, yard
32
+ super
33
+ end
34
+
35
+ def generate_input_s8r(f, service, port, op)
36
+ f.blank_line
37
+ yard = WsdlMapper::Generation::YardDocFormatter.new f
38
+ name = service_namer.get_input_s8r_name(service.type, port.type, op.type).name
39
+ yard.type_tag :return, name, 'The input serializer'
40
+ yard.blank_line
41
+ super
42
+ end
43
+
44
+ def generate_new_documentation(body_name, header_name, yard)
45
+ yard.params [:header, '::Hash', "Keyword arguments for {#{header_name.name}.new}"],
46
+ [:body, '::Hash', "Keyword arguments for {#{body_name.name}.new}"]
47
+ yard.type_tag :return, @generator.runtime_base('Message', 'message').name, 'A new SOAP message'
48
+ yard.blank_line
49
+ end
50
+
51
+ def generate_output_s8r(f, service, port, op)
52
+ f.blank_line
53
+ yard = WsdlMapper::Generation::YardDocFormatter.new f
54
+ name = service_namer.get_output_s8r_name(service.type, port.type, op.type).name
55
+ yard.type_tag :return, name, 'The output serializer'
56
+ yard.blank_line
57
+ super
58
+ end
59
+
60
+ def generate_input_d10r(f, service, port, op)
61
+ f.blank_line
62
+ yard = WsdlMapper::Generation::YardDocFormatter.new f
63
+ name = service_namer.get_input_d10r_name(service.type, port.type, op.type).name
64
+ yard.type_tag :return, name, 'The input deserializer'
65
+ yard.blank_line
66
+ super
67
+ end
68
+
69
+ def generate_output_d10r(f, service, port, op)
70
+ f.blank_line
71
+ yard = WsdlMapper::Generation::YardDocFormatter.new f
72
+ name = service_namer.get_output_d10r_name(service.type, port.type, op.type).name
73
+ yard.type_tag :return, name, 'The output deserializer'
74
+ yard.blank_line
75
+ super
76
+ end
77
+
78
+ def generate_accessors(f, parts)
79
+ yard = WsdlMapper::Generation::YardDocFormatter.new f
80
+ parts.each do |p|
81
+ attr_name = p.property_name.attr_name
82
+ type = @generator.get_ruby_type_name p.type
83
+
84
+ yard.attribute! attr_name, type, '' do
85
+ end
86
+ f.attr_accessors attr_name
87
+ end
88
+ end
89
+
90
+ def generate_ctr(f, parts)
91
+ yard = WsdlMapper::Generation::YardDocFormatter.new f
92
+ f.blank_line
93
+ params = parts.map do |p|
94
+ attr_name = p.property_name.attr_name
95
+ type = @generator.get_ruby_type_name p.type
96
+
97
+ [attr_name, type, '']
98
+ end
99
+ yard.params(*params)
100
+ super
101
+ end
102
+ end
103
+ end
104
+ end
@@ -0,0 +1,19 @@
1
+ require 'wsdl_mapper/svc_generation/port_generator'
2
+
3
+ module WsdlMapper
4
+ module SvcGeneration
5
+ class DocumentedPortGenerator < PortGenerator
6
+ def generate_port_operation_accessors(f, ops)
7
+ yard = WsdlMapper::Generation::YardDocFormatter.new f
8
+ ops.map do |op|
9
+ attr_name = op.property_name.attr_name
10
+ type = op.name.name
11
+ yard.attribute! attr_name, type, nil do
12
+ yard.tag :soap_name, op.type.name.name
13
+ end
14
+ f.attr_readers attr_name
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,36 @@
1
+ require 'wsdl_mapper/svc_generation/proxy_generator'
2
+
3
+ module WsdlMapper
4
+ module SvcGeneration
5
+ class DocumentedProxyGenerator < ProxyGenerator
6
+
7
+ def generate_operation(f, op)
8
+ yard = WsdlMapper::Generation::YardDocFormatter.new f
9
+ f.blank_line
10
+ yard.text op.type.name.name
11
+ yard.blank_line
12
+ yard.tag :xml_name, op.type.name.name
13
+ yard.tag :xml_namespace, op.type.name.ns
14
+ yard.param :body, '::Hash', 'Keyword arguments for the InputBody constructor'
15
+ get_body_parts(op.type.input).each do |part|
16
+ type = @generator.get_ruby_type_name part.type
17
+ yard.option :body, type, part.property_name.attr_name
18
+ end
19
+ yard.blank_line
20
+ super
21
+ end
22
+
23
+ def generate_async_operation(f, op)
24
+ yard = WsdlMapper::Generation::YardDocFormatter.new f
25
+ f.blank_line
26
+ yard.text op.type.name.name
27
+ yard.blank_line
28
+ yard.tag :xml_name, op.type.name.name
29
+ yard.tag :xml_namespace, op.type.name.ns
30
+ yard.param :body_promise, 'Concurrent::Promise', 'Promise delivering keyword arguments (Hash) for the InputBody constructor'
31
+ yard.blank_line
32
+ super
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,20 @@
1
+ require 'wsdl_mapper/svc_generation/service_generator'
2
+
3
+ module WsdlMapper
4
+ module SvcGeneration
5
+ class DocumentedServiceGenerator < ServiceGenerator
6
+ def generate_service_port_accessors(f, ports)
7
+ yard = WsdlMapper::Generation::YardDocFormatter.new f
8
+ ports.map do |p|
9
+ attr_name = p.property_name.attr_name
10
+ type = p.name.name
11
+ yard.attribute! attr_name, type, nil do
12
+ yard.tag :soap_name, p.type.name.name
13
+ yard.tag :soap_binding, p.type.binding_name.name
14
+ end
15
+ f.attr_readers attr_name
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,38 @@
1
+ require 'wsdl_mapper/svc_generation/svc_generator'
2
+ require 'wsdl_mapper/svc_generation/documented_port_generator'
3
+ require 'wsdl_mapper/svc_generation/documented_service_generator'
4
+ require 'wsdl_mapper/svc_generation/documented_operation_generator'
5
+ require 'wsdl_mapper/svc_generation/documented_proxy_generator'
6
+ require 'wsdl_mapper/generation/yard_doc_formatter'
7
+
8
+ module WsdlMapper
9
+ module SvcGeneration
10
+ class DocumentedSvcGenerator < SvcGenerator
11
+ def initialize(context,
12
+ formatter_factory: DefaultFormatter,
13
+ namer: WsdlMapper::Naming::DefaultNamer.new,
14
+ service_namer: WsdlMapper::Naming::DefaultServiceNamer.new,
15
+ service_generator_factory: DocumentedServiceGenerator,
16
+ port_generator_factory: DocumentedPortGenerator,
17
+ proxy_generator_factory: DocumentedProxyGenerator,
18
+ operation_generator_factory: DocumentedOperationGenerator,
19
+ operation_s8r_generator_factory: OperationS8rGenerator,
20
+ operation_d10r_generator_factory: OperationD10rGenerator,
21
+ schema_generator: nil)
22
+ super
23
+ end
24
+
25
+ def generate_api_service_accessors(f, services)
26
+ yard = WsdlMapper::Generation::YardDocFormatter.new f
27
+ services.each do |s|
28
+ attr_name = s.property_name.attr_name
29
+ type = s.name.name
30
+ yard.attribute! attr_name, type, nil do
31
+ yard.tag :soap_name, s.type.name.name
32
+ end
33
+ f.attr_readers attr_name
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,78 @@
1
+ require 'wsdl_mapper/generation/facade'
2
+ require 'wsdl_mapper/svc_desc_parsing/parser'
3
+ require 'wsdl_mapper/naming/default_service_namer'
4
+ require 'wsdl_mapper/svc_generation/svc_generator'
5
+ require 'wsdl_mapper/svc_generation/documented_svc_generator'
6
+ require 'wsdl_mapper/dom_generation/schema_generator'
7
+ require 'wsdl_mapper/dom_generation/documented_schema_generator'
8
+ require 'wsdl_mapper/s8r_generation/s8r_generator'
9
+ require 'wsdl_mapper/d10r_generation/d10r_generator'
10
+
11
+ module WsdlMapper
12
+ module SvcGeneration
13
+ class Facade < WsdlMapper::Generation::Facade
14
+
15
+ def initialize(file:, out:, service_namer: nil, **args)
16
+ super file: file, out: out, **args
17
+ @service_namer = service_namer
18
+ end
19
+
20
+ def service_namer
21
+ @service_namer ||= WsdlMapper::Naming::DefaultServiceNamer.new(module_path: @module_path)
22
+ end
23
+
24
+ def schema_generator
25
+ @schema_generator ||= schema_generator_class.new context, namer: namer, ctr_generator_factory: ctr_generator_class, skip_modules: true
26
+ end
27
+
28
+ def ctr_generator_class
29
+ @ctr_generator_class ||= @docs ? WsdlMapper::DomGeneration::DocumentedCtrGenerator : WsdlMapper::DomGeneration::DefaultCtrGenerator
30
+ end
31
+
32
+ def schema_generator_class
33
+ @schema_generator_class ||= @docs ? WsdlMapper::DomGeneration::DocumentedSchemaGenerator : WsdlMapper::DomGeneration::SchemaGenerator
34
+ end
35
+
36
+ def s8r_generator
37
+ @s8r_generator ||= WsdlMapper::S8rGeneration::S8rGenerator.new context, namer: namer, skip_modules: true
38
+ end
39
+
40
+ def d10r_generator
41
+ @d10r_generator ||= WsdlMapper::D10rGeneration::D10rGenerator.new context, namer: namer, skip_modules: true
42
+ end
43
+
44
+ def svc_generator
45
+ @svc_generator ||= svc_generator_class.new context, namer: namer, service_namer: service_namer, schema_generator: schema_generator
46
+ end
47
+
48
+ def svc_generator_class
49
+ @svc_generator_class ||= @docs ? WsdlMapper::SvcGeneration::DocumentedSvcGenerator : WsdlMapper::SvcGeneration::SvcGenerator
50
+ end
51
+
52
+ def module_generator
53
+ @module_generator ||= WsdlMapper::Generation::DefaultModuleGenerator.new schema_generator
54
+ end
55
+
56
+ def generate
57
+ desc, schema = parser.parse document
58
+
59
+ schema_result = schema_generator.generate schema
60
+ s8r_result = s8r_generator.generate schema
61
+ d10r_result = d10r_generator.generate schema
62
+ svc_result = svc_generator.generate desc
63
+
64
+ result = WsdlMapper::Generation::Result.merge svc_result, schema_result, s8r_result, d10r_result
65
+
66
+ result.module_tree.each do |module_node|
67
+ module_generator.generate module_node, result
68
+ end
69
+
70
+ result
71
+ end
72
+
73
+ def parser
74
+ @parser ||= WsdlMapper::SvcDescParsing::Parser.new
75
+ end
76
+ end
77
+ end
78
+ end
@@ -0,0 +1,111 @@
1
+ require 'wsdl_mapper/generation/base'
2
+ require 'wsdl_mapper/svc_generation/type_to_generate'
3
+
4
+ module WsdlMapper
5
+ module SvcGeneration
6
+ class GeneratorBase < WsdlMapper::Generation::Base
7
+ include WsdlMapper::Generation
8
+
9
+ def initialize(generator)
10
+ @generator = generator
11
+ super(generator.context)
12
+ end
13
+
14
+ protected
15
+ def get_formatter(io)
16
+ @generator.get_formatter io
17
+ end
18
+
19
+ # @return [WsdlMapper::Naming::AbstractServiceNamer]
20
+ def service_namer
21
+ @generator.service_namer
22
+ end
23
+
24
+ # @return [WsdlMapper::Naming::AbstractNamer]
25
+ def namer
26
+ @generator.namer
27
+ end
28
+
29
+ def port_generator
30
+ @generator.port_generator
31
+ end
32
+
33
+ def proxy_generator
34
+ @generator.proxy_generator
35
+ end
36
+
37
+ def operation_generator
38
+ @generator.operation_generator
39
+ end
40
+
41
+ def operation_s8r_generator
42
+ @generator.operation_s8r_generator
43
+ end
44
+
45
+ def operation_d10r_generator
46
+ @generator.operation_d10r_generator
47
+ end
48
+
49
+ def port_base
50
+ @generator.port_base
51
+ end
52
+
53
+ def proxy_base
54
+ @generator.proxy_base
55
+ end
56
+
57
+ def service_base
58
+ @generator.service_base
59
+ end
60
+
61
+ def operation_base
62
+ @generator.operation_base
63
+ end
64
+
65
+ def header_base
66
+ @generator.header_base
67
+ end
68
+
69
+ def body_base
70
+ @generator.body_base
71
+ end
72
+
73
+ def in_classes(f, *names, &block)
74
+ @generator.in_classes f, *names, &block
75
+ end
76
+
77
+ def get_type_name(type)
78
+ @generator.get_type_name type
79
+ end
80
+
81
+ class PartToGenerate < Struct.new(:type, :name, :property_name, :part)
82
+ end
83
+
84
+ class HeaderToGenerate < Struct.new(:type, :name, :property_name, :header)
85
+ end
86
+
87
+ def get_body_parts(in_out)
88
+ parts = in_out.body.parts
89
+ parts = in_out.target.message.each_part.to_a if parts.empty?
90
+
91
+ parts.map do |part|
92
+ type = part.type || part.element.type
93
+ name = namer.get_type_name get_type_name type
94
+ property_name = service_namer.get_body_property_name part.name
95
+
96
+ PartToGenerate.new type, name, property_name, part
97
+ end
98
+ end
99
+
100
+ def get_header_parts(in_out)
101
+ in_out.each_header.map do |header|
102
+ type = header.part.type || header.part.element.type
103
+ name = namer.get_type_name get_type_name type
104
+ property_name = service_namer.get_header_property_name header.message_name, header.part_name
105
+
106
+ HeaderToGenerate.new type, name, property_name, header
107
+ end
108
+ end
109
+ end
110
+ end
111
+ end
@@ -0,0 +1,171 @@
1
+ require 'wsdl_mapper/svc_generation/operation_generator_base'
2
+ require 'wsdl_mapper/dom/name'
3
+
4
+ module WsdlMapper
5
+ module SvcGeneration
6
+ class OperationD10rGenerator < OperationGeneratorBase
7
+ include WsdlMapper::Dom
8
+
9
+ SOAP_ENV_NS = 'http://schemas.xmlsoap.org/soap/envelope/'
10
+ SOAP_BODY = Name.get SOAP_ENV_NS, 'Body'
11
+ SOAP_HEADER = Name.get SOAP_ENV_NS, 'Header'
12
+
13
+ def initialize(generator)
14
+ super generator
15
+ @schema_type_directory_name = namer.get_d10r_type_directory_name
16
+ @schema_element_directory_name = namer.get_d10r_element_directory_name
17
+ end
18
+
19
+ def generate_operation_d10r(service, port, op, result)
20
+ generate_op_input_d10r service, port, op, result
21
+ generate_op_output_d10r service, port, op, result
22
+ end
23
+
24
+ def generate_op_input_d10r(service, port, op, result)
25
+ name = service_namer.get_input_d10r_name service.type, port.type, op.type
26
+
27
+ type_directory_name = service_namer.get_input_type_directory_name
28
+ header_d10r_name = service_namer.get_input_header_d10r_name
29
+ body_d10r_name = service_namer.get_input_body_d10r_name
30
+ header_name = service_namer.get_input_header_name service.type, port.type, op.type
31
+ body_name = service_namer.get_input_body_name service.type, port.type, op.type
32
+ element_directory_name = service_namer.get_input_element_directory_name
33
+
34
+ generate_op_d10r service, port, op, name, op.type.input,
35
+ header_name, header_d10r_name, body_name, body_d10r_name, type_directory_name, element_directory_name, result
36
+ end
37
+
38
+ def generate_op_output_d10r(service, port, op, result)
39
+ name = service_namer.get_output_d10r_name service.type, port.type, op.type
40
+
41
+ type_directory_name = service_namer.get_output_type_directory_name
42
+ header_d10r_name = service_namer.get_output_header_d10r_name
43
+ body_d10r_name = service_namer.get_output_body_d10r_name
44
+ header_name = service_namer.get_output_header_name service.type, port.type, op.type
45
+ body_name = service_namer.get_output_body_name service.type, port.type, op.type
46
+ element_directory_name = service_namer.get_output_element_directory_name
47
+
48
+ generate_op_d10r service, port, op, name, op.type.output,
49
+ header_name, header_d10r_name, body_name, body_d10r_name, type_directory_name, element_directory_name, result
50
+ end
51
+
52
+ def generate_op_d10r(service, port, op, name, in_out,
53
+ header_name, header_d10r_name, body_name, body_d10r_name,
54
+ type_directory_name, element_directory_name, result)
55
+
56
+ parts = get_header_parts(in_out) + get_body_parts(in_out)
57
+ required_d10rs = parts.map do |part|
58
+ next if WsdlMapper::Dom::BuiltinType.builtin? get_type_name(part.type).name
59
+ namer.get_d10r_name(get_type_name(part.type))
60
+ end
61
+ modules = get_module_names service.name
62
+
63
+ type_file_for name, result do |f|
64
+ f.requires envelope_type.require_path,
65
+ type_directory_base.require_path,
66
+ element_directory_base.require_path,
67
+ deserializer_type.require_path,
68
+ soap_type_directory.require_path,
69
+ soap_element_directory.require_path,
70
+ @schema_type_directory_name.require_path,
71
+ @schema_element_directory_name.require_path,
72
+ header_name.require_path,
73
+ body_name.require_path
74
+ f.requires(*required_d10rs.compact.map(&:require_path))
75
+
76
+ f.in_modules modules do
77
+ in_classes f, service.name.class_name, port.name.class_name, op.name.class_name do
78
+ generate_type_directory f, type_directory_name
79
+ generate_header_d10r f, header_d10r_name, type_directory_name, header_name, in_out
80
+ generate_body_d10r f, body_d10r_name, type_directory_name, body_name, port, op, in_out
81
+ generate_element_directory f, element_directory_name, type_directory_name
82
+ generate_d10r f, name, element_directory_name
83
+ end
84
+ end
85
+ end
86
+ end
87
+
88
+ def generate_d10r(f, input_d10r_name, element_directory_name)
89
+ f.assignment input_d10r_name.class_name, "#{deserializer_type.name}.new(#{element_directory_name})"
90
+ end
91
+
92
+ def generate_element_directory(f, element_directory_name, type_directory_name)
93
+ f.assignment element_directory_name, "#{element_directory_base.name}.new(#{type_directory_name}, #{@schema_element_directory_name.name}, #{soap_element_directory.name})"
94
+ end
95
+
96
+ def generate_body_d10r(f, body_deserializer_name, type_directory_name, input_body_name, port, op, in_out)
97
+ parts = get_body_parts in_out
98
+ f.block "#{body_deserializer_name} = #{type_directory_name}.register_type(#{generate_name(SOAP_BODY)}, #{input_body_name.name})", [] do
99
+ op_name = get_op_name op.type, in_out
100
+ if port.type.binding.style == 'rpc'
101
+ f.call :register_wrapper, generate_name(op_name)
102
+ end
103
+ parts.each do |part|
104
+ name = get_type_name(part.type).name
105
+ element_name = if port.type.binding.style == 'rpc'
106
+ part.part.name
107
+ else
108
+ if part.part.element
109
+ part.part.element.name
110
+ else
111
+ part.part.name
112
+ end
113
+ end
114
+ f.call :register_prop, ":#{part.property_name.attr_name}", generate_name(element_name), generate_name(name)
115
+ end
116
+ f.call :register_prop, ':fault', fault_name, fault_name
117
+ end
118
+ end
119
+
120
+ def fault_name
121
+ @fault_name ||= generate_name WsdlMapper::Dom::Name.get('http://schemas.xmlsoap.org/soap/envelope/', 'Fault')
122
+ end
123
+
124
+ def get_op_name(op, in_out)
125
+ if in_out == op.input
126
+ op.name
127
+ else
128
+ WsdlMapper::Dom::Name.get op.name.ns, "#{op.name.name}Response"
129
+ end
130
+ end
131
+
132
+ def generate_header_d10r(f, header_deserializer_name, type_directory_name, input_header_name, in_out)
133
+ parts = get_header_parts in_out
134
+ f.block "#{header_deserializer_name} = #{type_directory_name}.register_type(#{generate_name(SOAP_HEADER)}, #{input_header_name.name})", [] do
135
+ parts.each do |part|
136
+ name = get_type_name(part.type).name
137
+ f.call :register_prop, ":#{part.property_name.attr_name}", generate_name(part.header.part.name), generate_name(name)
138
+ end
139
+ end
140
+ end
141
+
142
+ def generate_type_directory(f, type_directory_name)
143
+ f.assignment type_directory_name, "#{type_directory_base.name}.new(#{soap_type_directory.name}, #{@schema_type_directory_name.name})"
144
+ end
145
+
146
+ def type_directory_base
147
+ @type_directory_base ||= WsdlMapper::Naming::TypeName.new 'TypeDirectory', %w[WsdlMapper Deserializers], 'type_directory.rb', %w[wsdl_mapper deserializers]
148
+ end
149
+
150
+ def element_directory_base
151
+ @element_directory_base ||= WsdlMapper::Naming::TypeName.new 'ElementDirectory', %w[WsdlMapper Deserializers], 'element_directory.rb', %w[wsdl_mapper deserializers]
152
+ end
153
+
154
+ def soap_type_directory
155
+ @soap_type_directory ||= WsdlMapper::Naming::TypeName.new 'SoapTypeDirectory', %w[WsdlMapper SvcDesc], 'soap_type_directory.rb', %w[wsdl_mapper svc_desc]
156
+ end
157
+
158
+ def soap_element_directory
159
+ @soap_element_directory ||= WsdlMapper::Naming::TypeName.new 'SoapElementDirectory', %w[WsdlMapper SvcDesc], 'soap_element_directory.rb', %w[wsdl_mapper svc_desc]
160
+ end
161
+
162
+ def deserializer_type
163
+ @deserializer_type ||= WsdlMapper::Naming::TypeName.new 'LazyLoadingDeserializer', %w[WsdlMapper Deserializers], 'lazy_loading_deserializer.rb', %w[wsdl_mapper deserializers]
164
+ end
165
+
166
+ def envelope_type
167
+ @envelope_type ||= WsdlMapper::Naming::TypeName.new 'Envelope', %w[WsdlMapper SvcDesc], 'envelope.rb', %w[wsdl_mapper svc_desc]
168
+ end
169
+ end
170
+ end
171
+ end