Class: HalClient::RepresentationSet
- Inherits:
-
Object
- Object
- HalClient::RepresentationSet
- Extended by:
- Forwardable
- Includes:
- Enumerable
- Defined in:
- lib/hal_client/representation_set.rb
Overview
A collection HAL representations
Instance Method Summary collapse
-
#has_related?(link_rel) ⇒ Boolean
Returns true if any member representation contains a link (including embedded links) whose rel is
link_rel. -
#initialize(reprs) ⇒ RepresentationSet
constructor
A new instance of RepresentationSet.
-
#post(data, options = {}) ⇒ Object
Post a
RepresentationorStringto the resource. -
#related(link_rel, options = {}) ⇒ Object
Returns representations of resources related via the specified link rel or the specified default value.
Constructor Details
#initialize(reprs) ⇒ RepresentationSet
8 9 10 |
# File 'lib/hal_client/representation_set.rb', line 8 def initialize(reprs) @reprs = reprs end |
Instance Method Details
#has_related?(link_rel) ⇒ Boolean
Returns true if any member representation contains a link (including embedded links) whose rel is link_rel.
link_rel - The link rel of interest
34 35 36 37 38 39 40 |
# File 'lib/hal_client/representation_set.rb', line 34 def (link_rel) _ = link_rel true rescue KeyError false end |
#post(data, options = {}) ⇒ Object
Post a Representation or String to the resource.
NOTE: This only works for a single representation.
data - a String or an object that responds to #to_hal options - set of options to pass to ‘HalClient#post`
48 49 50 51 |
# File 'lib/hal_client/representation_set.rb', line 48 def post(data, ={}) raise NotImplementedError, "We only posts to singular resources." if count > 1 first.post(data, ) end |
#related(link_rel, options = {}) ⇒ Object
Returns representations of resources related via the specified
link rel or the specified default value.
name_or_rel - The name of property or link rel of interest options - optional keys and values with which to expand any
templated links that are encountered
default_proc - an option proc that will be called with name
to produce default value if the specified property or link does not
exist
Raises KeyError if the specified link does not exist
and no default_proc is provided.
26 27 28 |
# File 'lib/hal_client/representation_set.rb', line 26 def (link_rel, ={}) RepresentationSet.new flat_map{|it| it.(link_rel, ){[]}.to_a } end |