class Audited::Sweeper

Public Instance Methods

add_observer!(klass) click to toggle source
Calls superclass method
# File lib/audited/sweeper.rb, line 29
def add_observer!(klass)
  super
  define_callback(klass)
end
around(controller) { || ... } click to toggle source
# File lib/audited/sweeper.rb, line 8
def around(controller)
  self.controller = controller
  yield
ensure
  self.controller = nil
end
before_create(audit) click to toggle source
# File lib/audited/sweeper.rb, line 15
def before_create(audit)
  audit.user ||= current_user
  audit.remote_address = controller.try(:request).try(:remote_ip)
  audit.request_uuid = request_uuid if request_uuid
end
controller() click to toggle source
# File lib/audited/sweeper.rb, line 43
def controller
  ::Audited.store[:current_controller]
end
controller=(value) click to toggle source
# File lib/audited/sweeper.rb, line 47
def controller=(value)
  ::Audited.store[:current_controller] = value
end
current_user() click to toggle source
# File lib/audited/sweeper.rb, line 21
def current_user
  controller.send(Audited.current_user_method) if controller.respond_to?(Audited.current_user_method, true)
end
define_callback(klass) click to toggle source
# File lib/audited/sweeper.rb, line 34
def define_callback(klass)
  observer = self
  callback_meth = :_notify_audited_sweeper
  klass.send(:define_method, callback_meth) do
    observer.update(:before_create, self)
  end
  klass.send(:before_create, callback_meth)
end
request_uuid() click to toggle source
# File lib/audited/sweeper.rb, line 25
def request_uuid
  controller.try(:request).try(:uuid)
end