Sha256: 6e6e75b03b04135c483a38c28a5a7ecf8293484dc8d5729ba3e4cc0b6f03697c

Contents?: true

Size: 823 Bytes

Versions: 23

Compression:

Stored size: 823 Bytes

Contents

module Timber
  module Integrations
    module ActionView
      # Reponsible for uninstalling the default `ActionView::LogSubscriber` and installing
      # the TimberLogSubscriber.
      #
      # @private
      class LogSubscriber < Integrator
        def initialize
          require "action_view/log_subscriber"
          require "timber/integrations/action_view/log_subscriber/timber_log_subscriber"
        rescue LoadError => e
          raise RequirementNotMetError.new(e.message)
        end

        def integrate!
          return true if Util::ActiveSupportLogSubscriber.subscribed?(:action_view, TimberLogSubscriber)

          Util::ActiveSupportLogSubscriber.unsubscribe!(:action_view, ::ActionView::LogSubscriber)
          TimberLogSubscriber.attach_to(:action_view)
        end
      end
    end
  end
end

Version data entries

23 entries across 23 versions & 1 rubygems

Version Path
timber-2.0.2 lib/timber/integrations/action_view/log_subscriber.rb
timber-2.0.1 lib/timber/integrations/action_view/log_subscriber.rb
timber-2.0.0 lib/timber/integrations/action_view/log_subscriber.rb