Class | SOAP::Mapping::TypedArrayFactory_ |
In: |
lib/soap/mapping/factory.rb
|
Parent: | Factory |
# File lib/soap/mapping/factory.rb, line 242 242: def initialize(allow_original_mapping = false) 243: super() 244: @allow_original_mapping = allow_original_mapping 245: end
# File lib/soap/mapping/factory.rb, line 247 247: def obj2soap(soap_class, obj, info, map) 248: if !@allow_original_mapping and !obj.instance_variables.empty? 249: return nil 250: end 251: arytype = info[:type] || info[0] 252: soap_obj = SOAPArray.new(ValueArrayName, 1, arytype) 253: mark_marshalled_obj(obj, soap_obj) 254: obj.each do |var| 255: soap_obj.add(Mapping._obj2soap(var, map)) 256: end 257: soap_obj 258: end
# File lib/soap/mapping/factory.rb, line 260 260: def soap2obj(obj_class, node, info, map) 261: if node.rank > 1 262: return false 263: end 264: arytype = info[:type] || info[0] 265: unless node.arytype == arytype 266: return false 267: end 268: obj = Mapping.create_empty_object(obj_class) 269: mark_unmarshalled_obj(node, obj) 270: node.soap2array(obj) do |elem| 271: elem ? Mapping._soap2obj(elem, map) : nil 272: end 273: return true, obj 274: end