| Module | WSDL::SOAP::ClassDefCreatorSupport |
| In: |
lib/wsdl/soap/classDefCreatorSupport.rb
|
# File lib/wsdl/soap/classDefCreatorSupport.rb, line 30
30: def basetype_mapped_class(name)
31: ::SOAP::TypeMap[name]
32: end
# File lib/wsdl/soap/classDefCreatorSupport.rb, line 22
22: def create_class_name(qname)
23: if klass = basetype_mapped_class(qname)
24: ::SOAP::Mapping::DefaultRegistry.find_mapped_obj_class(klass).name
25: else
26: safeconstname(qname.name)
27: end
28: end
# File lib/wsdl/soap/classDefCreatorSupport.rb, line 76
76: def dqname(qname)
77: qname.dump
78: end
# File lib/wsdl/soap/classDefCreatorSupport.rb, line 34
34: def dump_method_signature(operation)
35: name = operation.name.name
36: input = operation.input
37: output = operation.output
38: fault = operation.fault
39: signature = "#{ name }#{ dump_inputparam(input) }"
40: str = "# SYNOPSIS\n# \#{name}\#{dump_inputparam(input)}\n#\n# ARGS\n\#{dump_inout_type(input).chomp}\n#\n# RETURNS\n\#{dump_inout_type(output).chomp}\n#\n"
41: unless fault.empty?
42: faultstr = (fault.collect { |f| dump_inout_type(f).chomp }).join(', ')
43: str <<"# RAISES\n# \#{faultstr}\n#\n"
44: end
45: str
46: end
# File lib/wsdl/soap/classDefCreatorSupport.rb, line 68
68: def ndq(ele)
69: ele.nil? ? 'nil' : dq(ele)
70: end
# File lib/wsdl/soap/classDefCreatorSupport.rb, line 117
117: def add_at(base, str, pos)
118: if base.size >= pos
119: base + ' ' + str
120: else
121: base + ' ' * (pos - base.size) + str
122: end
123: end
# File lib/wsdl/soap/classDefCreatorSupport.rb, line 82
82: def dump_inout_type(param)
83: if param
84: message = param.find_message
85: params = ""
86: message.parts.each do |part|
87: name = safevarname(part.name)
88: if part.type
89: typename = safeconstname(part.type.name)
90: params << add_at("# #{name}", "#{typename} - #{part.type}\n", 20)
91: elsif part.element
92: typename = safeconstname(part.element.name)
93: params << add_at("# #{name}", "#{typename} - #{part.element}\n", 20)
94: end
95: end
96: unless params.empty?
97: return params
98: end
99: end
100: "# N/A\n"
101: end
# File lib/wsdl/soap/classDefCreatorSupport.rb, line 103
103: def dump_inputparam(input)
104: message = input.find_message
105: params = ""
106: message.parts.each do |part|
107: params << ", " unless params.empty?
108: params << safevarname(part.name)
109: end
110: if params.empty?
111: ""
112: else
113: "(#{ params })"
114: end
115: end