Class | SOAP::Mapping::StringFactory_ |
In: |
lib/soap/mapping/factory.rb
|
Parent: | Factory |
# File lib/soap/mapping/factory.rb, line 80 80: def initialize(allow_original_mapping = false) 81: super() 82: @allow_original_mapping = allow_original_mapping 83: end
# File lib/soap/mapping/factory.rb, line 85 85: def obj2soap(soap_class, obj, info, map) 86: if !@allow_original_mapping and !obj.instance_variables.empty? 87: return nil 88: end 89: begin 90: unless XSD::Charset.is_ces(obj, Thread.current[:SOAPExternalCES]) 91: return nil 92: end 93: encoded = XSD::Charset.encoding_conv(obj, 94: Thread.current[:SOAPExternalCES], XSD::Charset.encoding) 95: soap_obj = soap_class.new(encoded) 96: rescue XSD::ValueSpaceError 97: return nil 98: end 99: mark_marshalled_obj(obj, soap_obj) 100: soap_obj 101: end
# File lib/soap/mapping/factory.rb, line 103 103: def soap2obj(obj_class, node, info, map) 104: obj = Mapping.create_empty_object(obj_class) 105: decoded = XSD::Charset.encoding_conv(node.data, XSD::Charset.encoding, 106: Thread.current[:SOAPExternalCES]) 107: obj.replace(decoded) 108: mark_unmarshalled_obj(node, obj) 109: return true, obj 110: end