Module: ActiveRecord::HierarchicalQuery::Adapters

Defined in:
lib/active_record/hierarchical_query/adapters.rb,
lib/active_record/hierarchical_query/adapters/abstract.rb,
lib/active_record/hierarchical_query/adapters/postgresql.rb

Defined Under Namespace

Classes: Abstract, PostgreSQL

Constant Summary collapse

SUPPORTED_ADAPTERS =
%w(PostgreSQL)
ADAPTERS =
Hash[
  :PostgreSQL => :PostgreSQL,
  :PostGIS => :PostgreSQL,
  :OracleEnhanced => :Oracle
].stringify_keys

Class Method Summary collapse

Class Method Details

.autoload(name, path = name.to_s.underscore) ⇒ Object



17
18
19
# File 'lib/active_record/hierarchical_query/adapters.rb', line 17

def self.autoload(name, path = name.to_s.underscore)
  super name, "active_record/hierarchical_query/adapters/#{path}"
end

.lookup(klass) ⇒ Object



24
25
26
27
28
29
30
31
# File 'lib/active_record/hierarchical_query/adapters.rb', line 24

def self.lookup(klass)
  name = klass.connection.adapter_name

  raise 'Your database %s does not support recursive queries' % name unless
      ADAPTERS.key?(name)

  const_get(ADAPTERS[name])
end