demarches-normaliennes/app/models/concerns/blob_virus_scanner_concern.rb

29 lines
502 B
Ruby
Raw Normal View History

module BlobVirusScannerConcern
extend ActiveSupport::Concern
included do
before_create :set_pending
end
def virus_scanner
ActiveStorage::VirusScanner.new(self)
end
def scan_for_virus_later
VirusScannerJob.perform_later(self)
end
def virus_scanner_error?
return true if virus_scanner.infected?
return true if virus_scanner.corrupt?
false
end
private
def set_pending
metadata[:virus_scan_result] ||= ActiveStorage::VirusScanner::PENDING
end
end