Class: Omnizip::Metadata::MetadataRegistry
- Inherits:
-
Object
- Object
- Omnizip::Metadata::MetadataRegistry
- Defined in:
- lib/omnizip/metadata/metadata_registry.rb
Overview
Registry of supported metadata per archive format
Class Method Summary collapse
-
.formats ⇒ Array<Symbol>
Get all registered formats.
-
.register(format, supported_fields) ⇒ Object
Register metadata support for a format.
-
.reset ⇒ Object
Reset registry (for testing).
-
.supported_fields(format) ⇒ Array<Symbol>
Get all supported fields for a format.
-
.supports?(format, field) ⇒ Boolean
Check if a format supports a metadata field.
Class Method Details
.formats ⇒ Array<Symbol>
Get all registered formats
37 38 39 |
# File 'lib/omnizip/metadata/metadata_registry.rb', line 37 def formats @registry.keys end |
.register(format, supported_fields) ⇒ Object
Register metadata support for a format
13 14 15 |
# File 'lib/omnizip/metadata/metadata_registry.rb', line 13 def register(format, supported_fields) @registry[format] = supported_fields end |
.reset ⇒ Object
Reset registry (for testing)
42 43 44 |
# File 'lib/omnizip/metadata/metadata_registry.rb', line 42 def reset @registry = {} end |
.supported_fields(format) ⇒ Array<Symbol>
Get all supported fields for a format
31 32 33 |
# File 'lib/omnizip/metadata/metadata_registry.rb', line 31 def supported_fields(format) @registry[format] || [] end |
.supports?(format, field) ⇒ Boolean
Check if a format supports a metadata field
21 22 23 24 25 26 |
# File 'lib/omnizip/metadata/metadata_registry.rb', line 21 def supports?(format, field) fields = @registry[format] return false unless fields fields.include?(field) end |