Class: SavonHelper::ObjectMapping

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

Overview

ObjectMapping maps Savon data to Ruby Objects.

Instance Attribute Summary

Attributes inherited from TypeMapping

#description, #name

Converting collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from HintMapping

#object_klass, #type_string

Methods inherited from TypeMapping

#default_value, #object_klass, #to_savon, #type_string

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: '')


368
369
370
# File 'lib/savon_helper/type_mappings.rb', line 368

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:



360
361
362
# File 'lib/savon_helper/type_mappings.rb', line 360

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:



377
378
379
# File 'lib/savon_helper/type_mappings.rb', line 377

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