Sha256: 2fe8cce0f0b763c696fad7bb6461e98ef7ee0923b9d49eff474ccf2b4190fa69

Contents?: true

Size: 1.16 KB

Versions: 19

Compression:

Stored size: 1.16 KB

Contents

module AdminIt
  #
  # Framework detection methods
  #
  module Env
    # @private
    def self.framework
      return @framework unless @framework.nil?
      gems = Gem.loaded_specs.keys
      if gems.include?('rails')
        @framework = :rails
      elsif gems.include?('sinatra')
        @framework = :sinatra
      else
        @framework = :unknown
      end
    end

    # @private
    def self.pundit?
      return @pundit unless @pundit.nil?
      Gem::Specification.find_by_name('pundit')
      @pundit = true
    rescue Gem::LoadError
      @pundit = false
    end

    # @private
    def self.active_record?
      return @active_record unless @active_record.nil?
      Gem::Specification.find_by_name('activerecord')
      @active_record = true
    rescue Gem::LoadError
      @active_record = false
    end

    # @private
    def self.mongoid?
      return @mongoid unless @mongoid.nil?
      Gem::Specification.find_by_name('mongoid')
      @mongoid = true
    rescue Gem::LoadError
      @mongoid = false
    end

    # @private
    def self.rails?
      framework == :rails
    end

    # @private
    def self.sinatra?
      framework == :sinatra
    end
  end
end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
admin_it-1.3.8 lib/admin_it/env.rb
admin_it-1.3.7 lib/admin_it/env.rb
admin_it-1.3.6 lib/admin_it/env.rb
admin_it-1.3.5 lib/admin_it/env.rb
admin_it-1.3.4 lib/admin_it/env.rb
admin_it-1.3.3 lib/admin_it/env.rb
admin_it-1.3.2 lib/admin_it/env.rb
admin_it-1.3.1 lib/admin_it/env.rb
admin_it-1.3.0 lib/admin_it/env.rb
admin_it-1.2.8 lib/admin_it/env.rb
admin_it-1.2.7 lib/admin_it/env.rb
admin_it-1.2.6 lib/admin_it/env.rb
admin_it-1.2.5 lib/admin_it/env.rb
admin_it-1.2.4 lib/admin_it/env.rb
admin_it-1.2.3 lib/admin_it/env.rb
admin_it-1.2.2 lib/admin_it/env.rb
admin_it-1.2.1 lib/admin_it/env.rb
admin_it-1.2.0 lib/admin_it/env.rb
admin_it-1.1.0 lib/admin_it/env.rb