class Audited::Deferrable::Base
Public Class Methods
from_arguments(object_class_name, object_id, user_class_name, user_id, attrs)
click to toggle source
# File lib/audited/deferrable/base.rb, line 21 def self.from_arguments(object_class_name, object_id, user_class_name, user_id, attrs) object = object_class_name.constantize.find(object_id) rescue nil user = user_class_name.constantize.find(user_id) rescue nil if user_class_name new(object, user, attrs) end
new(object, user, attrs)
click to toggle source
# File lib/audited/deferrable/base.rb, line 5 def initialize(object, user, attrs) @object = object @user = user @attrs = attrs end
Public Instance Methods
arguments()
click to toggle source
# File lib/audited/deferrable/base.rb, line 11 def arguments [ @object.class.name, @object.id, @user.try(:class).try(:name), @user.try(:id), @attrs ] end
defer()
click to toggle source
# File lib/audited/deferrable/base.rb, line 27 def defer raise ArgumentError, "Implementation Required" end
work()
click to toggle source
# File lib/audited/deferrable/base.rb, line 31 def work if @object Audited.audit_class.as_user(@user) do @object.send(:write_audit_without_deferrable, @attrs) end else false end end