Class: Arclight::Parents
- Inherits:
-
Object
- Object
- Arclight::Parents
- Defined in:
- app/models/arclight/parents.rb
Overview
Object for parsing and formalizing Solr_Ead “Parents” github.com/awead/solr_ead/blob/8cf7ffaa66e0e4c9c0b12f5646d6c2e20984cd99/lib/solr_ead/behaviors.rb#L54-L57
Instance Attribute Summary collapse
-
#ids ⇒ Object
readonly
Returns the value of attribute ids.
-
#labels ⇒ Object
readonly
Returns the value of attribute labels.
-
#levels ⇒ Object
readonly
Returns the value of attribute levels.
Class Method Summary collapse
Instance Method Summary collapse
- #as_parents ⇒ Array[Arclight::Parent]
- #eadid ⇒ Object
-
#initialize(ids:, labels:, eadid:, levels:) ⇒ Parents
constructor
A new instance of Parents.
Constructor Details
#initialize(ids:, labels:, eadid:, levels:) ⇒ Parents
Returns a new instance of Parents.
9 10 11 12 13 14 |
# File 'app/models/arclight/parents.rb', line 9 def initialize(ids:, labels:, eadid:, levels:) @ids = ids @labels = labels @eadid = eadid @levels = levels end |
Instance Attribute Details
#ids ⇒ Object (readonly)
Returns the value of attribute ids.
8 9 10 |
# File 'app/models/arclight/parents.rb', line 8 def ids @ids end |
#labels ⇒ Object (readonly)
Returns the value of attribute labels.
8 9 10 |
# File 'app/models/arclight/parents.rb', line 8 def labels @labels end |
#levels ⇒ Object (readonly)
Returns the value of attribute levels.
8 9 10 |
# File 'app/models/arclight/parents.rb', line 8 def levels @levels end |
Class Method Details
.from_solr_document(document) ⇒ Object
28 29 30 31 32 33 34 |
# File 'app/models/arclight/parents.rb', line 28 def self.from_solr_document(document) ids = document.parent_ids labels = document.parent_labels eadid = document.eadid levels = document.parent_levels new(ids: ids, labels: labels, eadid: eadid, levels: levels) end |
Instance Method Details
#as_parents ⇒ Array[Arclight::Parent]
22 23 24 |
# File 'app/models/arclight/parents.rb', line 22 def as_parents ids.map.with_index { |_id, idx| Arclight::Parent.new(id: ids[idx], label: labels[idx], eadid: eadid, level: levels[idx]) } end |
#eadid ⇒ Object
16 17 18 |
# File 'app/models/arclight/parents.rb', line 16 def eadid Arclight::NormalizedId.new(@eadid).to_s end |