Class: Audited::Sweeper
- Inherits:
-
ActionController::Caching::Sweeper
- Object
- ActionController::Caching::Sweeper
- Audited::Sweeper
- Defined in:
- lib/audited/sweeper.rb
Instance Method Summary collapse
- #add_observer!(klass) ⇒ Object
- #around(controller) ⇒ Object
- #before_create(audit) ⇒ Object
- #controller ⇒ Object
- #controller=(value) ⇒ Object
- #current_user ⇒ Object
- #define_callback(klass) ⇒ Object
- #request_uuid ⇒ Object
Instance Method Details
#add_observer!(klass) ⇒ Object
29 30 31 32 |
# File 'lib/audited/sweeper.rb', line 29 def add_observer!(klass) super define_callback(klass) end |
#around(controller) ⇒ Object
8 9 10 11 12 13 |
# File 'lib/audited/sweeper.rb', line 8 def around(controller) self.controller = controller yield ensure self.controller = nil end |
#before_create(audit) ⇒ Object
15 16 17 18 19 |
# 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 ⇒ Object
43 44 45 |
# File 'lib/audited/sweeper.rb', line 43 def controller ::Audited.store[:current_controller] end |
#controller=(value) ⇒ Object
47 48 49 |
# File 'lib/audited/sweeper.rb', line 47 def controller=(value) ::Audited.store[:current_controller] = value end |
#current_user ⇒ Object
21 22 23 |
# 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) ⇒ Object
34 35 36 37 38 39 40 41 |
# 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 ⇒ Object
25 26 27 |
# File 'lib/audited/sweeper.rb', line 25 def request_uuid controller.try(:request).try(:uuid) end |