Class: SavonHelper::ObjectMapping

Inherits:
HintMapping show all
Defined in:
lib/savon_helper/type_mappings.rb

Overview

ObjectMapping maps Savon data to Ruby Objects.

Converting collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from HintMapping

#object_klass, #type_string

Methods inherited from TypeMapping

#default_value, #description, #object_klass, #to_savon, #type_string, #warn_unparseable_data

Constructor Details

#initialize(klass, name = '', description = '') ⇒ ObjectMapping

A new instance of ObjectMapping with description for class klass.

Parameters:

  • klass (Class, #to_native)

    A class which can create instances from Savon data and provide Savon data for export.

  • description (String) (defaults to: '')


381
382
383
# File 'lib/savon_helper/type_mappings.rb', line 381

def initialize(klass, name='', description='')
  super(klass, name, description)
end

Class Method Details

.to_native(klass, data, interface) ⇒ SavonHelper::MappingObject, #to_native

Convert from Savon data to Ruby Object.

Parameters:

  • data (Hash, String)

    Source Savon data

  • klass (Class, #to_native)

    A class which can create instances from Savon data and provide Savon data for export.

Returns:



373
374
375
# File 'lib/savon_helper/type_mappings.rb', line 373

def self.to_native(klass, data, interface)
  klass.from_savon(data, interface)
end

Instance Method Details

#to_native(data, interface) ⇒ SavonHelper::MappingObject, #to_native

Convert from Savon data to Ruby Object.

Parameters:

  • data (Hash, String)

    Source Savon data

Returns:



390
391
392
# File 'lib/savon_helper/type_mappings.rb', line 390

def to_native(data, interface)
  self.class.to_native(@klass, data, interface)
end