diff options
author | Jeremy Kemper <jeremy@bitsweat.net> | 2007-05-25 03:19:35 +0000 |
---|---|---|
committer | Jeremy Kemper <jeremy@bitsweat.net> | 2007-05-25 03:19:35 +0000 |
commit | cb7a17a9d083082709f62ccbca3a2c1ef8e0c87b (patch) | |
tree | 4d5962fe53ccc6b637fa289a8566246e8b7b12ba /activerecord/lib/active_record/connection_adapters/sqlite_adapter.rb | |
parent | 162a4c5309d8fc1bc17c1ea5685704f07d80a783 (diff) | |
download | rails-cb7a17a9d083082709f62ccbca3a2c1ef8e0c87b.tar.gz rails-cb7a17a9d083082709f62ccbca3a2c1ef8e0c87b.tar.bz2 rails-cb7a17a9d083082709f62ccbca3a2c1ef8e0c87b.zip |
Load database adapters on demand. Eliminates config.connection_adapters and RAILS_CONNECTION_ADAPTERS. Closes #8456.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6833 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'activerecord/lib/active_record/connection_adapters/sqlite_adapter.rb')
-rw-r--r-- | activerecord/lib/active_record/connection_adapters/sqlite_adapter.rb | 34 |
1 files changed, 2 insertions, 32 deletions
diff --git a/activerecord/lib/active_record/connection_adapters/sqlite_adapter.rb b/activerecord/lib/active_record/connection_adapters/sqlite_adapter.rb index 6409fe292a..5da97ceff6 100644 --- a/activerecord/lib/active_record/connection_adapters/sqlite_adapter.rb +++ b/activerecord/lib/active_record/connection_adapters/sqlite_adapter.rb @@ -1,33 +1,11 @@ -# Author: Luke Holden <lholden@cablelan.net> -# Updated for SQLite3: Jamis Buck <jamis@37signals.com> - require 'active_record/connection_adapters/abstract_adapter' module ActiveRecord class Base class << self - # sqlite3 adapter reuses sqlite_connection. - def sqlite3_connection(config) # :nodoc: - parse_config!(config) - - unless self.class.const_defined?(:SQLite3) - require_library_or_gem(config[:adapter]) - end - - db = SQLite3::Database.new( - config[:database], - :results_as_hash => true, - :type_translation => false - ) - - db.busy_timeout(config[:timeout]) unless config[:timeout].nil? - - ConnectionAdapters::SQLite3Adapter.new(db, logger) - end - # Establishes a connection to the database that's used by all Active Record objects def sqlite_connection(config) # :nodoc: - parse_config!(config) + parse_sqlite_config!(config) unless self.class.const_defined?(:SQLite) require_library_or_gem(config[:adapter]) @@ -47,7 +25,7 @@ module ActiveRecord end private - def parse_config!(config) + def parse_sqlite_config!(config) config[:database] ||= config[:dbfile] # Require database. unless config[:database] @@ -381,14 +359,6 @@ module ActiveRecord end end - class SQLite3Adapter < SQLiteAdapter # :nodoc: - def table_structure(table_name) - returning structure = @connection.table_info(table_name) do - raise(ActiveRecord::StatementInvalid, "Could not find table '#{table_name}'") if structure.empty? - end - end - end - class SQLite2Adapter < SQLiteAdapter # :nodoc: def supports_count_distinct? #:nodoc: false |