Module: CocinaDisplay::Concerns::Structural
- Included in:
- CocinaDisplay::CocinaRecord
- Defined in:
- lib/cocina_display/concerns/structural.rb
Overview
Methods for inspecting structural metadata (e.g. file hierarchy)
Instance Method Summary collapse
-
#file_mime_types ⇒ Array<String>
All unique MIME types of files in this object.
-
#files ⇒ Array<Hash>
Structured data for all individual files in the object.
-
#total_file_size_int ⇒ Integer
Summed size of all files in bytes.
-
#total_file_size_str ⇒ String
Human-readable string representation of #total_file_size_int.
Instance Method Details
#file_mime_types ⇒ Array<String>
All unique MIME types of files in this object.
22 23 24 |
# File 'lib/cocina_display/concerns/structural.rb', line 22 def file_mime_types files.pluck("hasMimeType").uniq end |
#files ⇒ Array<Hash>
Structured data for all individual files in the object. Traverses nested FileSet structure to return a flattened array.
15 16 17 |
# File 'lib/cocina_display/concerns/structural.rb', line 15 def files @files ||= path("$.structural.contains.*.structural.contains.*").search end |
#total_file_size_int ⇒ Integer
Summed size of all files in bytes.
36 37 38 |
# File 'lib/cocina_display/concerns/structural.rb', line 36 def total_file_size_int files.pluck("size").sum end |
#total_file_size_str ⇒ String
Human-readable string representation of #total_file_size_int.
29 30 31 |
# File 'lib/cocina_display/concerns/structural.rb', line 29 def total_file_size_str ActiveSupport::NumberHelper.number_to_human_size(total_file_size_int) end |