Changeset 1914
- Timestamp:
- 08/05/07 15:19:03 (1 year ago)
- Files:
-
- trunk/lib/wsdl/soap/classDefCreator.rb (modified) (3 diffs)
- trunk/lib/wsdl/soap/classDefCreatorSupport.rb (modified) (2 diffs)
- trunk/lib/wsdl/soap/mappingRegistryCreatorSupport.rb (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/lib/wsdl/soap/classDefCreator.rb
r1911 r1914 327 327 end 328 328 329 def element_basetype(ele)330 if klass = basetype_class(ele.type)331 klass332 elsif ele.local_simpletype333 basetype_class(ele.local_simpletype.base)334 else335 nil336 end337 end338 339 def attribute_basetype(attr)340 if klass = basetype_class(attr.type)341 klass342 elsif attr.local_simpletype343 basetype_class(attr.local_simpletype.base)344 else345 nil346 end347 end348 349 def basetype_class(type)350 return nil if type.nil?351 if simpletype = @simpletypes[type]352 basetype_mapped_class(simpletype.base)353 else354 basetype_mapped_class(type)355 end356 end357 358 329 def define_attribute(c, attributes) 359 330 const = {} … … 385 356 end 386 357 387 def name_element(element)388 return element.name if element.name389 return element.ref if element.ref390 raise RuntimeError.new("cannot define name of #{element}")391 end392 393 def name_attribute(attribute)394 return attribute.name if attribute.name395 return attribute.ref if attribute.ref396 raise RuntimeError.new("cannot define name of #{attribute}")397 end398 399 358 def dump_arraydef(qname, complextype) 400 359 classname = create_class_name(qname) … … 403 362 c.comment = "#{qname}" 404 363 c.dump 405 end406 407 def check_classname(classname)408 if @modulepath.nil? and Object.constants.include?(classname)409 warn("created definition re-opens an existing toplevel class: #{classname}")410 end411 364 end 412 365 trunk/lib/wsdl/soap/classDefCreatorSupport.rb
r1911 r1914 17 17 18 18 19 # requires @defined_const and @modulepath19 # requires @defined_const, @simpletypes, and @modulepath 20 20 module ClassDefCreatorSupport 21 21 include XSD::CodeGen::GenSupport … … 192 192 }.join("\n") 193 193 end 194 195 def element_basetype(ele) 196 if klass = basetype_class(ele.type) 197 klass 198 elsif ele.local_simpletype 199 basetype_class(ele.local_simpletype.base) 200 else 201 nil 202 end 203 end 204 205 def attribute_basetype(attr) 206 if klass = basetype_class(attr.type) 207 klass 208 elsif attr.local_simpletype 209 basetype_class(attr.local_simpletype.base) 210 else 211 nil 212 end 213 end 214 215 def basetype_class(type) 216 return nil if type.nil? 217 if simpletype = @simpletypes[type] 218 basetype_mapped_class(simpletype.base) 219 else 220 basetype_mapped_class(type) 221 end 222 end 223 224 def name_element(element) 225 return element.name if element.name 226 return element.ref if element.ref 227 raise RuntimeError.new("cannot define name of #{element}") 228 end 229 230 def name_attribute(attribute) 231 return attribute.name if attribute.name 232 return attribute.ref if attribute.ref 233 raise RuntimeError.new("cannot define name of #{attribute}") 234 end 235 236 def check_classname(classname) 237 if @modulepath.nil? and Object.constants.include?(classname) 238 warn("created definition re-opens an existing toplevel class: #{classname}") 239 end 240 end 194 241 end 195 242 trunk/lib/wsdl/soap/mappingRegistryCreatorSupport.rb
r1911 r1914 118 118 end 119 119 120 def element_basetype(ele)121 if klass = basetype_class(ele.type)122 klass123 elsif ele.local_simpletype124 basetype_class(ele.local_simpletype.base)125 else126 nil127 end128 end129 130 def attribute_basetype(attr)131 if klass = basetype_class(attr.type)132 klass133 elsif attr.local_simpletype134 basetype_class(attr.local_simpletype.base)135 else136 nil137 end138 end139 140 def basetype_class(type)141 return nil if type.nil?142 if simpletype = @simpletypes[type]143 basetype_mapped_class(simpletype.base)144 else145 basetype_mapped_class(type)146 end147 end148 149 120 def define_attribute(attributes) 150 121 schema_attribute = [] … … 165 136 }.join(",\n ") + 166 137 "\n }" 167 end168 169 def name_element(element)170 return element.name if element.name171 return element.ref if element.ref172 raise RuntimeError.new("cannot define name of #{element}")173 end174 175 def name_attribute(attribute)176 return attribute.name if attribute.name177 return attribute.ref if attribute.ref178 raise RuntimeError.new("cannot define name of #{attribute}")179 138 end 180 139