Changeset 1953
- Timestamp:
- 09/12/07 11:06:07 (1 year ago)
- Files:
-
- trunk/lib/soap/wsdlDriver.rb (modified) (1 diff)
- trunk/lib/wsdl/soap/classDefCreator.rb (modified) (5 diffs)
- trunk/lib/wsdl/soap/classDefCreatorSupport.rb (modified) (2 diffs)
- trunk/lib/wsdl/soap/classNameCreator.rb (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/lib/soap/wsdlDriver.rb
r1943 r1953 32 32 @wsdl = import(wsdl) 33 33 name_creator = WSDL::SOAP::ClassNameCreator.new 34 @modulepath = 'WSDLDriverFactory' 34 35 @methoddefcreator = 35 WSDL::SOAP::MethodDefCreator.new(@wsdl, name_creator, nil, {})36 WSDL::SOAP::MethodDefCreator.new(@wsdl, name_creator, @modulepath, {}) 36 37 end 37 38 trunk/lib/wsdl/soap/classDefCreator.rb
r1948 r1953 159 159 end 160 160 classname = mapped_class_basename(qname, @modulepath) 161 check_classname(classname)162 161 c = ClassDef.new(classname, '::String') 163 162 c.comment = "#{qname}" … … 169 168 list = typedef.list 170 169 classname = mapped_class_basename(qname, @modulepath) 171 check_classname(classname)172 170 c = ClassDef.new(classname, '::Array') 173 171 c.comment = "#{qname}" … … 225 223 def create_simpleclassdef(qname, type_or_element) 226 224 classname = mapped_class_basename(qname, @modulepath) 227 check_classname(classname)228 225 c = ClassDef.new(classname, '::String') 229 226 c.comment = "#{qname}" … … 258 255 def create_classdef(qname, typedef, qualified = false) 259 256 classname = mapped_class_basename(qname, @modulepath) 260 check_classname(classname)261 257 baseclassname = nil 262 258 if typedef.complexcontent … … 388 384 def create_arraydef(qname, typedef) 389 385 classname = mapped_class_basename(qname, @modulepath) 390 check_classname(classname)391 386 c = ClassDef.new(classname, '::Array') 392 387 c.comment = "#{qname}" trunk/lib/wsdl/soap/classDefCreatorSupport.rb
r1948 r1953 26 26 27 27 def mapped_class_basename(qname, modulepath) 28 name = @name_creator.assign_name(qname, modulepath)29 name.sub(/\A.*:/, '')28 classname = @name_creator.assign_name(qname, modulepath) 29 classname.sub(/\A.*:/, '') 30 30 end 31 31 … … 224 224 raise RuntimeError.new("cannot define name of #{attribute}") 225 225 end 226 227 def check_classname(classname)228 if @modulepath.nil? and Object.constants.include?(classname)229 warn("created definition re-opens an existing toplevel class: #{classname}")230 end231 end232 226 end 233 227 trunk/lib/wsdl/soap/classNameCreator.rb
r1948 r1953 34 34 name += '_' 35 35 end 36 check_classname(name) 36 37 end 37 38 @classname[qname] = name.freeze … … 58 59 =end 59 60 end 61 62 def check_classname(name) 63 if Object.constants.include?(name) 64 warn("created definition re-opens an existing toplevel class: #{name}. consider to use --module_path option of wsdl2ruby.rb") 65 end 66 end 60 67 end 61 68