Class: Get::Smart::AppContext

Inherits:
Object
  • Object
show all
Defined in:
lib/get/smart/app_context.rb

Instance Method Summary collapse

Instance Method Details

#callObject



2
3
4
5
6
7
# File 'lib/get/smart/app_context.rb', line 2

def call
  {
    gems: gems,
    databases: database_adapters
  }
end

#database_adaptersObject



13
14
15
16
17
18
19
# File 'lib/get/smart/app_context.rb', line 13

def database_adapters
  {
    "mysql" => gems.include?("mysql2"),
    "postgresql" => gems.include?("pg"),
    "sqlite" => gems.any? { |gem| gem.start_with?("sqlite") }
  }.select { |_k, v| v }.keys
end

#gemsObject



9
10
11
# File 'lib/get/smart/app_context.rb', line 9

def gems
  @gems ||= Gem.loaded_specs.keys
end