Class: CocinaDisplay::Structural::FileSet
- Inherits:
-
Object
- Object
- CocinaDisplay::Structural::FileSet
- Defined in:
- lib/cocina_display/structural/file_set.rb
Overview
Represents a set of files in a Cocina object.
Instance Attribute Summary collapse
-
#base_url ⇒ Object
readonly
URL to Stacks environment that will serve this fileset.
-
#cocina ⇒ Object
readonly
Underlying hash parsed from Cocina JSON.
Instance Method Summary collapse
-
#files ⇒ Array<CocinaDisplay::Structural::File>
All files contained in this FileSet.
-
#initialize(cocina, base_url: "https://stacks.stanford.edu", druid: nil) ⇒ FileSet
constructor
Initialize the FileSet with Cocina structural data.
-
#type ⇒ String?
The declared type of the FileSet, like “image” or “document”.
Constructor Details
#initialize(cocina, base_url: "https://stacks.stanford.edu", druid: nil) ⇒ FileSet
Initialize the FileSet with Cocina structural data.
15 16 17 18 19 |
# File 'lib/cocina_display/structural/file_set.rb', line 15 def initialize(cocina, base_url: "https://stacks.stanford.edu", druid: nil) @cocina = cocina @base_url = base_url @druid = druid end |
Instance Attribute Details
#base_url ⇒ Object (readonly)
URL to Stacks environment that will serve this fileset.
9 10 11 |
# File 'lib/cocina_display/structural/file_set.rb', line 9 def base_url @base_url end |
#cocina ⇒ Object (readonly)
Underlying hash parsed from Cocina JSON.
6 7 8 |
# File 'lib/cocina_display/structural/file_set.rb', line 6 def cocina @cocina end |
Instance Method Details
#files ⇒ Array<CocinaDisplay::Structural::File>
All files contained in this FileSet.
30 31 32 33 34 |
# File 'lib/cocina_display/structural/file_set.rb', line 30 def files @files ||= Array(cocina.dig("structural", "contains")).map do |file| CocinaDisplay::Structural::File.new(file, base_url: base_url, druid: druid) end end |
#type ⇒ String?
Note:
This can differ from the contained file types.
The declared type of the FileSet, like “image” or “document”.
24 25 26 |
# File 'lib/cocina_display/structural/file_set.rb', line 24 def type cocina["type"]&.delete_prefix("https://cocina.sul.stanford.edu/models/resources/") end |