Class: ActiveStorage::Analyzer
Relationships & Source Files | |
Namespace Children | |
Classes:
| |
Extension / Inclusion / Inheritance Descendants | |
Subclasses:
|
|
Super Chains via Extension / Inclusion / Inheritance | |
Instance Chain:
self,
Downloading
|
|
Inherits: | Object |
Defined in: | activestorage/lib/active_storage/analyzer.rb |
Overview
This is an abstract base class for analyzers, which extract metadata from blobs. See ImageAnalyzer
for an example of a concrete subclass.
Class Method Summary
-
.accept?(blob) ⇒ Boolean
Implement this method in a concrete subclass.
- .new(blob) ⇒ Analyzer constructor
Instance Attribute Summary
- #blob readonly
Instance Method Summary
Downloading
- Included
#download_blob_to | Efficiently downloads blob data into the given file. |
#download_blob_to_tempfile | Opens a new tempfile in |
#tempdir | Returns the directory in which tempfiles should be opened. |
Constructor Details
.new(blob) ⇒ Analyzer
Class Method Details
.accept?(blob) ⇒ Boolean
Implement this method in a concrete subclass. Have it return true when given a blob from which the analyzer can extract metadata.
# File 'activestorage/lib/active_storage/analyzer.rb', line 15
def self.accept?(blob) false end
Instance Attribute Details
#blob (readonly)
[ GitHub ]# File 'activestorage/lib/active_storage/analyzer.rb', line 11
attr_reader :blob
Instance Method Details
#logger (private)
[ GitHub ]# File 'activestorage/lib/active_storage/analyzer.rb', line 29
def logger #:doc: ActiveStorage.logger end
#metadata
Override this method in a concrete subclass. Have it return a ::Hash
of metadata.
# File 'activestorage/lib/active_storage/analyzer.rb', line 24
def raise NotImplementedError end