class WsdlMapper::Serializers::SerializerFactory

Public Class Methods

new(type_directory, default_namespace: nil) click to toggle source
# File lib/wsdl_mapper/serializers/serializer_factory.rb, line 6
def initialize(type_directory, default_namespace: nil)
  @type_directory = type_directory
  @default_namespace = default_namespace
end

Public Instance Methods

to_doc(obj, element_name = nil) click to toggle source
# File lib/wsdl_mapper/serializers/serializer_factory.rb, line 15
def to_doc(obj, element_name = nil)
  element_name ||= @type_directory.get_element_name obj.class.name
  if element_name.nil?
    raise ArgumentError.new("element_name not found for #{obj.class.name}")
  end
  core = SerializerCore.new resolver: @type_directory, default_namespace: @default_namespace
  serializer = @type_directory.find obj
  serializer.build core, obj, element_name
  core.to_doc
end
to_xml(obj, element_name = nil) click to toggle source
# File lib/wsdl_mapper/serializers/serializer_factory.rb, line 11
def to_xml(obj, element_name = nil)
  to_doc(obj, element_name).to_xml
end