Class: Oat::Adapters::HAL
Instance Method Summary
collapse
-
#entities(name, collection, serializer_class = nil, context_options = {}, &block) ⇒ Object
(also: #collection)
-
#entity(name, obj, serializer_class = nil, context_options = {}, &block) ⇒ Object
-
#link(rel, opts = {}) ⇒ Object
-
#properties(&block) ⇒ Object
-
#property(key, value) ⇒ Object
(also: #meta)
#initialize, #to_hash
Constructor Details
This class inherits a constructor from Oat::Adapter
Instance Method Details
#entities(name, collection, serializer_class = nil, context_options = {}, &block) ⇒ Object
Also known as:
collection
24
25
26
27
28
29
|
# File 'lib/oat/adapters/hal.rb', line 24
def entities(name, collection, serializer_class = nil, context_options = {}, &block)
data[:_embedded][name] = collection.map do |obj|
entity_serializer = serializer_from_block_or_class(obj, serializer_class, context_options, &block)
entity_serializer ? entity_serializer.to_hash : nil
end
end
|
#entity(name, obj, serializer_class = nil, context_options = {}, &block) ⇒ Object
19
20
21
22
|
# File 'lib/oat/adapters/hal.rb', line 19
def entity(name, obj, serializer_class = nil, context_options = {}, &block)
entity_serializer = serializer_from_block_or_class(obj, serializer_class, context_options, &block)
data[:_embedded][name] = entity_serializer ? entity_serializer.to_hash : nil
end
|
#link(rel, opts = {}) ⇒ Object
5
6
7
|
# File 'lib/oat/adapters/hal.rb', line 5
def link(rel, opts = {})
data[:_links][rel] = opts if opts[:href]
end
|
#properties(&block) ⇒ Object
9
10
11
|
# File 'lib/oat/adapters/hal.rb', line 9
def properties(&block)
data.merge! yield_props(&block)
end
|
#property(key, value) ⇒ Object
Also known as:
meta
13
14
15
|
# File 'lib/oat/adapters/hal.rb', line 13
def property(key, value)
data[key] = value
end
|