class SOAP::Mapping::BasetypeFactory_

Public Class Methods

new(allow_original_mapping = false) click to toggle source
Calls superclass method SOAP::Mapping::Factory::new
# File lib/soap/mapping/factory.rb, line 147
def initialize(allow_original_mapping = false)
  super()
  @allow_original_mapping = allow_original_mapping
end

Public Instance Methods

obj2soap(soap_class, obj, info, map) click to toggle source
# File lib/soap/mapping/factory.rb, line 152
def obj2soap(soap_class, obj, info, map)
  if !@allow_original_mapping and !obj.instance_variables.empty?
    return nil
  end
  soap_obj = nil
  begin
    soap_obj = soap_class.new(obj)
  rescue XSD::ValueSpaceError
    return nil
  end
  if @allow_original_mapping
    # Basetype except String should not be multiref-ed in SOAP/1.1.
    mark_marshalled_obj(obj, soap_obj)
  end
  soap_obj
end
soap2obj(obj_class, node, info, map) click to toggle source
# File lib/soap/mapping/factory.rb, line 169
def soap2obj(obj_class, node, info, map)
  obj = node.data
  mark_unmarshalled_obj(node, obj)
  return true, obj
end