# File soap/mapping/factory.rb, line 85
def obj2soap(soap_class, obj, info, map)
if !@allow_original_mapping and !obj.instance_variables.empty?
return nil
end
begin
unless XSD::Charset.is_ces(obj, Thread.current[:SOAPExternalCES])
return nil
end
encoded = XSD::Charset.encoding_conv(obj,
Thread.current[:SOAPExternalCES], XSD::Charset.encoding)
soap_obj = soap_class.new(encoded)
rescue XSD::ValueSpaceError
return nil
end
mark_marshalled_obj(obj, soap_obj)
soap_obj
end
# File soap/mapping/factory.rb, line 103
def soap2obj(obj_class, node, info, map)
obj = Mapping.create_empty_object(obj_class)
decoded = XSD::Charset.encoding_conv(node.data, XSD::Charset.encoding,
Thread.current[:SOAPExternalCES])
obj.replace(decoded)
mark_unmarshalled_obj(node, obj)
return true, obj
end