Sha256: a876ae05cc098ae4486ffd2577fb4df483d940acef3f6e54ba7bbe898b40de94

Contents?: true

Size: 1 KB

Versions: 14

Compression:

Stored size: 1 KB

Contents

# Copyright (c) 2015 Sqreen. All Rights Reserved.
# Please refer to our terms for more information: https://www.sqreen.io/terms.html

module Sqreen
  module Dependency
    module Rails
      module_function

      def required?
        Sqreen::Dependency.const_exist?('Rails::Application')
      end

      def server?
        Sqreen::Dependency.const_exist?('Rails::Server') && ObjectSpace.each_object(::Rails::Server).count > 0
      end

      def inspect_middlewares
        Sqreen.log.debug { "Middlewares: " << ::Rails.application.middleware.map(&:inspect).inspect }
      end

      def insert_sqreen_middlewares
        Sqreen.log.debug { 'Inserting Sqreen middlewares for Rails' }
        app = ::Rails.application
        app.middleware.insert_after(::Rack::Runtime, Sqreen::Middleware)
        app.middleware.insert_after(::ActionDispatch::DebugExceptions, Sqreen::RailsMiddleware)
        app.middleware.insert_after(::ActionDispatch::DebugExceptions, Sqreen::ErrorHandlingMiddleware)
      end
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
sqreen-1.18.0-java lib/sqreen/dependency/rails.rb
sqreen-1.18.0 lib/sqreen/dependency/rails.rb
sqreen-1.17.2-java lib/sqreen/dependency/rails.rb
sqreen-1.17.2 lib/sqreen/dependency/rails.rb
sqreen-1.17.2.rc1-java lib/sqreen/dependency/rails.rb
sqreen-1.17.2.rc1 lib/sqreen/dependency/rails.rb
sqreen-1.17.2.beta4-java lib/sqreen/dependency/rails.rb
sqreen-1.17.2.beta4 lib/sqreen/dependency/rails.rb
sqreen-1.17.2.beta3-java lib/sqreen/dependency/rails.rb
sqreen-1.17.2.beta3 lib/sqreen/dependency/rails.rb
sqreen-1.17.2.beta2-java lib/sqreen/dependency/rails.rb
sqreen-1.17.2.beta2 lib/sqreen/dependency/rails.rb
sqreen-1.17.2.beta1-java lib/sqreen/dependency/rails.rb
sqreen-1.17.2.beta1 lib/sqreen/dependency/rails.rb