Sha256: a0c49c0f59e0495e377215fc67858195862325c7b6d997f208190909d61837a8
Contents?: true
Size: 1.43 KB
Versions: 2
Compression:
Stored size: 1.43 KB
Contents
# frozen_string_literal: true module VelocityAudited class Sweeper STORED_DATA = { current_remote_address: :remote_ip, current_request_uuid: :request_uuid, current_user: :current_user, origin: :origin, user_agent: :user_agent, uid: :uid, client: :client, request_id: :request_id } delegate :store, to: ::VelocityAudited def around(controller) self.controller = controller STORED_DATA.each { |k, m| store[k] = send(m) } yield ensure self.controller = nil STORED_DATA.keys.each { |k| store.delete(k) } end def current_user lambda { controller.send(VelocityAudited.current_user_method) if controller.respond_to?(VelocityAudited.current_user_method, true) } end def remote_ip controller.try(:request).try(:remote_ip) end def request_uuid controller.try(:request).try(:uuid) end def origin controller.try(:request).try(:headers)['Origin'] end def user_agent controller.try(:request).try(:headers)['User-Agent'] end def uid controller.try(:request).try(:headers)['uid'] end def client controller.try(:request).try(:headers)['client'] end def request_id controller.try(:request).try(:uuid) end def controller store[:current_controller] end def controller=(value) store[:current_controller] = value end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
velocity_audited-6.0.4 | lib/audited/sweeper.rb |
velocity_audited-6.0.3 | lib/audited/sweeper.rb |