Sha256: c3247453bca12388083e41ff5855d7eebb97508c1a1be6860897f6d548ff9d38

Contents?: true

Size: 1.35 KB

Versions: 89

Compression:

Stored size: 1.35 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
                raise "Rails version #{Rails.version} not supported"
              end
            when defined?(::Sinatra)
              require 'sqreen/frameworks/sinatra'
              Sqreen::Frameworks::SinatraFramework
            when defined?(::SqreenTest)
              require 'sqreen/frameworks/sqreen_test'
              Sqreen::Frameworks::SqreenTestFramework
            else
              # FIXME: use sqreen logger before configuration?
              STDERR.puts "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

89 entries across 89 versions & 2 rubygems

Version Path
sqreen-1.16.2-java lib/sqreen/frameworks.rb
sqreen-1.16.2 lib/sqreen/frameworks.rb
sqreen-1.16.1-java lib/sqreen/frameworks.rb
sqreen-1.16.1 lib/sqreen/frameworks.rb
sqreen-1.16.0-java lib/sqreen/frameworks.rb
sqreen-1.16.0 lib/sqreen/frameworks.rb
sqreen-1.15.8-java lib/sqreen/frameworks.rb
sqreen-1.15.8 lib/sqreen/frameworks.rb
sqreen-1.15.8.beta2-java lib/sqreen/frameworks.rb
sqreen-1.15.8.beta2 lib/sqreen/frameworks.rb
sqreen-1.15.8.beta1-java lib/sqreen/frameworks.rb
sqreen-1.15.8.beta1 lib/sqreen/frameworks.rb
sqreen-1.15.7-java lib/sqreen/frameworks.rb
sqreen-1.15.7 lib/sqreen/frameworks.rb
sqreen-1.15.7.beta1-java lib/sqreen/frameworks.rb
sqreen-1.15.7.beta1 lib/sqreen/frameworks.rb
sqreen-1.15.6-java lib/sqreen/frameworks.rb
sqreen-1.15.6 lib/sqreen/frameworks.rb
sqreen-1.15.5-java lib/sqreen/frameworks.rb
sqreen-1.15.5 lib/sqreen/frameworks.rb