Sha256: 2732353ceaf8284eeff00234c7917dba14bd92879a6464394732c29c596d5c20

Contents?: true

Size: 1.42 KB

Versions: 16

Compression:

Stored size: 1.42 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
  @@framework = nil

  def self::set_framework(fwk)
    @@framework = fwk
  end

  def self::framework
    return @@framework if @@framework
    klass = case
            when defined?(::Rails) && defined?(::Rails::VERSION)
              case Rails::VERSION::MAJOR.to_i
              when 4, 5
                require 'sqreen/frameworks/rails'
                Sqreen::Frameworks::RailsFramework
              when 3
                require 'sqreen/frameworks/rails3'
                Sqreen::Frameworks::Rails3Framework
              else
                Sqreen.log.warn "Detected unsupported Rails version #{Rails.version}, but continuing"
                require 'sqreen/frameworks/rails'
                Sqreen::Frameworks::RailsFramework
              end
            when defined?(::Sinatra)
              require 'sqreen/frameworks/sinatra'
              Sqreen::Frameworks::SinatraFramework
            when defined?(::SqreenTest)
              require 'sqreen/frameworks/sqreen_test'
              Sqreen::Frameworks::SqreenTestFramework
            else
              Sqreen.log.error "Error: cannot find any framework\n"
              require 'sqreen/frameworks/generic'
              Sqreen::Frameworks::GenericFramework
            end
    fwk = klass.new
    Sqreen.set_framework(fwk)
  end
end

Version data entries

16 entries across 16 versions & 1 rubygems

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