module Ephemeron
Constants
- VERSION
Public Instance Methods
add(model, as: nil)
click to toggle source
# File lib/ephemeron.rb, line 45 def add(model, as: nil) Store.add model, as: as end
after_save!(&block)
click to toggle source
# File lib/ephemeron.rb, line 87 def after_save!(&block) Callbacks.add block end
allow_fetch!(model_or_key)
click to toggle source
# File lib/ephemeron.rb, line 70 def allow_fetch!(model_or_key) model = if model_or_key.is_a?(String) Ephemeron.get(model_or_key) else model_or_key end model.tap { |m| Logger.log m, :fetch_allowed } end
allow_save!(model)
click to toggle source
# File lib/ephemeron.rb, line 79 def allow_save!(model) model.tap { |m| Logger.log m, :save_allowed } end
configure() { |config| ... }
click to toggle source
# File lib/ephemeron.rb, line 30 def configure Ephemeron::Settings::CONFIG.new.tap do |config| yield config Ephemeron::Settings.configure config end end
finish()
click to toggle source
# File lib/ephemeron.rb, line 91 def finish if Store.aliases[nil] != :abort Store.validate Store.persist Callbacks.call end reset end
get(key)
click to toggle source
# File lib/ephemeron.rb, line 56 def get(key) Store.get key end
logs()
click to toggle source
# File lib/ephemeron.rb, line 41 def logs Logger.logs end
proxy() { || ... }
click to toggle source
# File lib/ephemeron.rb, line 49 def proxy Logger.log nil, :proxy_start res = yield Logger.log nil, :proxy_end res end
reset()
click to toggle source
# File lib/ephemeron.rb, line 104 def reset Store.reset Logger.reset Callbacks.reset true end
skip_save!(model)
click to toggle source
# File lib/ephemeron.rb, line 83 def skip_save!(model) Logger.log model, :skip_save end
state()
click to toggle source
# File lib/ephemeron.rb, line 37 def state Store.store end
stop()
click to toggle source
# File lib/ephemeron.rb, line 100 def stop Store.aliases[nil] = :abort end
used(model_s)
click to toggle source
# File lib/ephemeron.rb, line 60 def used(model_s) log_used = ->(model) { Logger.log model, :used } if model_s.is_a? ActiveRecord::Base log_used.call model_s else model_s.each(&log_used) end model_s end