Class: ActiveRecord::Base::ConnectionSpecification::Resolver

Inherits:
Object
  • Object
show all
Defined in:
lib/active_record/connection_adapters/abstract/connection_specification.rb

Overview

Builds a ConnectionSpecification from user input

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(config, configurations) ⇒ Resolver

Returns a new instance of Resolver.



14
15
16
17
# File 'lib/active_record/connection_adapters/abstract/connection_specification.rb', line 14

def initialize(config, configurations)
  @config         = config
  @configurations = configurations
end

Instance Attribute Details

#configObject (readonly)

:nodoc:



12
13
14
# File 'lib/active_record/connection_adapters/abstract/connection_specification.rb', line 12

def config
  @config
end

#configurationsObject (readonly)

:nodoc:



12
13
14
# File 'lib/active_record/connection_adapters/abstract/connection_specification.rb', line 12

def configurations
  @configurations
end

#klassObject (readonly)

:nodoc:



12
13
14
# File 'lib/active_record/connection_adapters/abstract/connection_specification.rb', line 12

def klass
  @klass
end

Instance Method Details

#specObject



19
20
21
22
23
24
25
26
27
28
29
# File 'lib/active_record/connection_adapters/abstract/connection_specification.rb', line 19

def spec
  case config
  when nil
    raise AdapterNotSpecified unless defined?(Rails.env)
    resolve_string_connection Rails.env
  when Symbol, String
    resolve_string_connection config.to_s
  when Hash
    resolve_hash_connection config
  end
end