class ActiveStorage::Service

Abstract class serving as an interface for concrete services.

Public Class Methods

configure(service, **options) click to toggle source
# File lib/active_storage/service.rb, line 5
def self.configure(service, **options)
  begin
    require "active_storage/service/#{service.to_s.downcase}_service"
    ActiveStorage::Service.const_get(:"#{service}Service").new(**options)
  rescue LoadError => e
    puts "Couldn't configure service: #{service} (#{e.message})"
  end
end

Public Instance Methods

delete(key) click to toggle source
# File lib/active_storage/service.rb, line 23
def delete(key)
  raise NotImplementedError
end
download(key) click to toggle source
# File lib/active_storage/service.rb, line 19
def download(key)
  raise NotImplementedError
end
exist?(key) click to toggle source
# File lib/active_storage/service.rb, line 27
def exist?(key)
  raise NotImplementedError
end
upload(key, io, checksum: nil) click to toggle source
# File lib/active_storage/service.rb, line 15
def upload(key, io, checksum: nil)
  raise NotImplementedError
end
url(key, expires_in:, disposition:, filename:) click to toggle source
# File lib/active_storage/service.rb, line 31
def url(key, expires_in:, disposition:, filename:)
  raise NotImplementedError
end