class WsdlMapper::Deserializers::Deserializer
Public Class Methods
new(type_mapping: WsdlMapper::TypeMapping::DEFAULT, qualified_elements: false, qualified_attributes: false, skip_unknown_elements: false )
click to toggle source
# File lib/wsdl_mapper/deserializers/deserializer.rb, line 19 def initialize(type_mapping: WsdlMapper::TypeMapping::DEFAULT, qualified_elements: false, qualified_attributes: false, skip_unknown_elements: false ) @tm = type_mapping @element_mappings = Directory.new on_nil: Errors::UnknownElementError @type_mappings = Directory.new on_nil: Errors::UnknownTypeError @element_type_mappings = Directory.new do |name| get_type_mapping get_element_type name end @qualified_elements = qualified_elements @qualified_attributes = qualified_attributes @skip_unknown_elements = skip_unknown_elements end
Public Instance Methods
from_xml(xml)
click to toggle source
# File lib/wsdl_mapper/deserializers/deserializer.rb, line 35 def from_xml(xml) doc = SaxDocument.new self parser = Nokogiri::XML::SAX::Parser.new doc parser.parse xml doc.object end
get_element_type(element_name)
click to toggle source
# File lib/wsdl_mapper/deserializers/deserializer.rb, line 53 def get_element_type(element_name) @element_mappings[element_name] end
get_element_type_mapping(element_name)
click to toggle source
# File lib/wsdl_mapper/deserializers/deserializer.rb, line 57 def get_element_type_mapping(element_name) @element_type_mappings[element_name] end
get_type_mapping(type_name)
click to toggle source
# File lib/wsdl_mapper/deserializers/deserializer.rb, line 61 def get_type_mapping(type_name) return if WsdlMapper::Dom::BuiltinType.builtin? type_name @type_mappings[type_name] end
qualified_attributes?()
click to toggle source
# File lib/wsdl_mapper/deserializers/deserializer.rb, line 74 def qualified_attributes? !!@qualified_attributes end
qualified_elements?()
click to toggle source
# File lib/wsdl_mapper/deserializers/deserializer.rb, line 70 def qualified_elements? !!@qualified_elements end
register_element(element_name, type_name)
click to toggle source
# File lib/wsdl_mapper/deserializers/deserializer.rb, line 42 def register_element(element_name, type_name) element_name = Name.get(*element_name) type_name = Name.get(*type_name) @element_mappings[element_name] = type_name end
register_type(type_name, class_mapping)
click to toggle source
# File lib/wsdl_mapper/deserializers/deserializer.rb, line 48 def register_type(type_name, class_mapping) type_name = Name.get(*type_name) @type_mappings[type_name] = class_mapping end
skip_unknown_elements?()
click to toggle source
# File lib/wsdl_mapper/deserializers/deserializer.rb, line 78 def skip_unknown_elements? !!@skip_unknown_elements end
to_ruby(type, value)
click to toggle source
# File lib/wsdl_mapper/deserializers/deserializer.rb, line 66 def to_ruby(type, value) @tm.to_ruby type, value end