class Ratonvirus::Storage::Base
Attributes
config[R]
Public Class Methods
new(configuration = {})
click to toggle source
# File lib/ratonvirus/storage/base.rb, line 8 def initialize(configuration = {}) @config = configuration.dup setup if respond_to?(:setup) end
Public Instance Methods
accept?(_resource)
click to toggle source
# File lib/ratonvirus/storage/base.rb, line 30 def accept?(_resource) raise NotImplementedError, "Implement accept? on #{self.class.name}" end
asset_path(_asset)
click to toggle source
# File lib/ratonvirus/storage/base.rb, line 34 def asset_path(_asset) raise NotImplementedError, "Implement path on #{self.class.name}" end
asset_remove(_asset)
click to toggle source
# File lib/ratonvirus/storage/base.rb, line 38 def asset_remove(_asset) raise NotImplementedError, "Implement remove on #{self.class.name}" end
changed?(_record, _attribute)
click to toggle source
# File lib/ratonvirus/storage/base.rb, line 26 def changed?(_record, _attribute) raise NotImplementedError, "Implement changed? on #{self.class.name}" end
process(resource) { |processable(asset)| ... }
click to toggle source
Default process implementation.
# File lib/ratonvirus/storage/base.rb, line 15 def process(resource) return unless block_given? return if resource.nil? resource = [resource] unless resource.is_a?(Array) resource.each do |asset| yield processable(asset) end end
Protected Instance Methods
processable(asset)
click to toggle source
# File lib/ratonvirus/storage/base.rb, line 44 def processable(asset) Processable.new(self, asset) end