Spec-Zone.ru › Ruby on Rails 6.1

класс ActiveStorage::Analyzer

Родитель:
Объект

Это абстрактный базовый класс для анализаторов, которые извлекают метаданные из блобов. См. ActiveStorage::Analyzer::ImageAnalyzer для примера конкретного подкласса.

Атрибуты

blob[R]

Публичные методы класса

accept?(blob) Показать исходный код
# File activestorage/lib/active_storage/analyzer.rb, line 11
def self.accept?(blob)
  false
end

Реализуйте этот метод в конкретном подклассе. Пусть он возвращает true, если переданный blob содержит метаданные, которые может извлечь анализатор.

analyze_later?() Показать исходный код
# File activestorage/lib/active_storage/analyzer.rb, line 17
def self.analyze_later?
  true
end

Реализуйте этот метод в конкретных подклассах. Он определит, следует ли анализировать blob в задаче или встраивать в поток. По умолчанию анализ помещается в очередь задач.

new(blob) Показать исходный код
# File activestorage/lib/active_storage/analyzer.rb, line 21
def initialize(blob)
  @blob = blob
end

Публичные методы экземпляра

metadata() Показать исходный код
# File activestorage/lib/active_storage/analyzer.rb, line 26
def metadata
  raise NotImplementedError
end

Переопределите этот метод в конкретном подклассе. Пусть он возвращает Hash метаданных.

Приватные методы экземпляра

download_blob_to_tempfile(&block) Показать исходный код
# File activestorage/lib/active_storage/analyzer.rb, line 32
def download_blob_to_tempfile(&block) #:doc:
  blob.open tmpdir: tmpdir, &block
end

Загружает blob во временный файл на диске. Возвращает временный файл.

logger() Показать исходный код
# File activestorage/lib/active_storage/analyzer.rb, line 36
def logger #:doc:
  ActiveStorage.logger
end
tmpdir() Показать исходный код
# File activestorage/lib/active_storage/analyzer.rb, line 40
def tmpdir #:doc:
  Dir.tmpdir
end

© 2004–2020 David Heinemeier Hansson
Licensed under the MIT License.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API