Class: Subjoin::Inclusions
- Inherits:
-
Object
- Object
- Subjoin::Inclusions
- Defined in:
- lib/subjoin/inclusions.rb
Overview
Container for related resources included in a compounf document. Alllows Hash-like access by Identifier, type/id pair, or Array-like access bu index
Instance Method Summary collapse
-
#[](id) ⇒ Subjoin::Resource
Access a particular resource by id.
-
#all ⇒ Array<Subjoin::Resource>
All included resources.
-
#first ⇒ Subjoin::Resource
First included resource.
-
#initialize(data) ⇒ Inclusions
constructor
A new instance of Inclusions.
Constructor Details
#initialize(data) ⇒ Inclusions
Returns a new instance of Inclusions.
6 7 8 |
# File 'lib/subjoin/inclusions.rb', line 6 def initialize(data) @inc = data end |
Instance Method Details
#[](id) ⇒ Subjoin::Resource
Access a particular resource by id
24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/subjoin/inclusions.rb', line 24 def [](id) if id.is_a?(Identifier) return @inc.select{|i| i.identifier == id}.first end if id.is_a?(Array) && id.count == 2 idd = Identifier.new(id[0], id[1]) return @inc.select{|i| i.identifier == idd}.first end if id.is_a?(Fixnum) return @inc[id] end end |
#all ⇒ Array<Subjoin::Resource>
Returns all included resources.
11 12 13 |
# File 'lib/subjoin/inclusions.rb', line 11 def all @inc end |
#first ⇒ Subjoin::Resource
Returns first included resource.
16 17 18 |
# File 'lib/subjoin/inclusions.rb', line 16 def first @inc.first end |