Class: Restful::ApiModel::Map

Inherits:
Object
  • Object
show all
Defined in:
lib/restful/apimodel/map.rb

Direct Known Subclasses

Resource

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name) ⇒ Map



9
10
11
12
13
# File 'lib/restful/apimodel/map.rb', line 9

def initialize(name)
  self.name = name
  self.type = :hash
  self.values = []
end

Instance Attribute Details

#nameObject

Returns the value of attribute name.



7
8
9
# File 'lib/restful/apimodel/map.rb', line 7

def name
  @name
end

#typeObject

Returns the value of attribute type.



7
8
9
# File 'lib/restful/apimodel/map.rb', line 7

def type
  @type
end

#valuesObject

Returns the value of attribute values.



7
8
9
# File 'lib/restful/apimodel/map.rb', line 7

def values
  @values
end

Instance Method Details

#collectionsObject



23
24
25
# File 'lib/restful/apimodel/map.rb', line 23

def collections
  self.values.select { |attribute| attribute.type == :collection }
end

#deserialize_from(type) ⇒ Object

invoke deserialization



34
35
36
37
# File 'lib/restful/apimodel/map.rb', line 34

def deserialize_from(type)
  serializer = Restful::Serializers::Base.serializer(type)
  serializer.deserialize(self)
end


15
16
17
# File 'lib/restful/apimodel/map.rb', line 15

def links
  self.values.select { |attribute| attribute.type == :link }
end

#serialize(type) ⇒ Object

invoke serialization



28
29
30
31
# File 'lib/restful/apimodel/map.rb', line 28

def serialize(type)
  serializer = Restful::Serializers::Base.serializer(type)
  serializer.serialize(self)
end

#simple_attributesObject



19
20
21
# File 'lib/restful/apimodel/map.rb', line 19

def simple_attributes
  self.values.select { |attribute| attribute.type == :simple_attribute }        
end