Module: Quiver::Serialization::JsonApi::Serializer

Defined in:
lib/quiver/serialization/json_api/serializer.rb

Defined Under Namespace

Modules: ClassMethods

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#collection_infoObject

Returns the value of attribute collection_info.



8
9
10
# File 'lib/quiver/serialization/json_api/serializer.rb', line 8

def collection_info
  @collection_info
end

Class Method Details

.included(base) ⇒ Object



4
5
6
# File 'lib/quiver/serialization/json_api/serializer.rb', line 4

def self.included(base)
  base.send(:extend, ClassMethods)
end

Instance Method Details

#initialize(collection_info) ⇒ Object



10
11
12
# File 'lib/quiver/serialization/json_api/serializer.rb', line 10

def initialize(collection_info)
  self.collection_info = collection_info
end

#serialize(opts = {}) ⇒ Object



14
15
16
17
18
19
20
21
22
23
24
# File 'lib/quiver/serialization/json_api/serializer.rb', line 14

def serialize(opts={})
  output = {}

  [:data, :linked, :errors].each do |type|
    if collection = fetch_collection(type)
      output[type] = serialize_items(collection, opts)
    end
  end

  output
end