Welcome to the "trac"-ing site of soap4r!
[soap4r] [httpclient] [openpgp4u] [pkcs1] [logger] [csv] [vtr]

root/trunk/test/wsdl/anonymous/expectedDriver.rb

Revision 2006, 1.7 kB (checked in by nahi, 1 year ago)
  • update tests for the previous change ('in' -> :in)
Line 
1 require 'lp.rb'
2 require 'lpMappingRegistry.rb'
3 require 'soap/rpc/driver'
4
5 module WSDL::Anonymous
6
7 class Lp_porttype < ::SOAP::RPC::Driver
8   DefaultEndpointUrl = "http://localhost:17171/"
9
10   Methods = [
11     [ "urn:lp:login",
12       "login",
13       [ [:in, "parameters", ["::SOAP::SOAPElement", "urn:lp", "login"]],
14         [:out, "parameters", ["::SOAP::SOAPElement", "urn:lp", "loginResponse"]] ],
15       { :request_style =>  :document, :request_use =>  :literal,
16         :response_style => :document, :response_use => :literal,
17         :faults => {} }
18     ],
19     [ "urn:lp:echo",
20       "echo",
21       [ [:in, "parameters", ["::SOAP::SOAPElement", "urn:lp", "Pack"]],
22         [:out, "parameters", ["::SOAP::SOAPElement", "urn:lp", "Envelope"]] ],
23       { :request_style =>  :document, :request_use =>  :literal,
24         :response_style => :document, :response_use => :literal,
25         :faults => {} }
26     ]
27   ]
28
29   def initialize(endpoint_url = nil)
30     endpoint_url ||= DefaultEndpointUrl
31     super(endpoint_url, nil)
32     self.mapping_registry = LpMappingRegistry::EncodedRegistry
33     self.literal_mapping_registry = LpMappingRegistry::LiteralRegistry
34     init_methods
35   end
36
37 private
38
39   def init_methods
40     Methods.each do |definitions|
41       opt = definitions.last
42       if opt[:request_style] == :document
43         add_document_operation(*definitions)
44       else
45         add_rpc_operation(*definitions)
46         qname = definitions[0]
47         name = definitions[2]
48         if qname.name != name and qname.name.capitalize == name.capitalize
49           ::SOAP::Mapping.define_singleton_method(self, qname.name) do |*arg|
50             __send__(name, *arg)
51           end
52         end
53       end
54     end
55   end
56 end
57
58
59 end
Note: See TracBrowser for help on using the browser.