class Apartment::Adapters::Sqlite3Adapter
def connect_to_new(database)
def connect_to_new(database) raise DatabaseNotFound, "The database #{environmentify(database)} cannot be found." unless File.exists?(database_file(database)) super database_file(database) end
def create_database(database)
def create_database(database) raise DatabaseExists, "The database #{environmentify(database)} already exists." if File.exists?(database_file(database)) f = File.new(database_file(database), File::CREAT) f.close end
def current_database
def current_database File.basename(Apartment.connection.instance_variable_get(:@config)[:database], '.sqlite3') end
def database_file(database)
def database_file(database) "#{@default_dir}/#{database}.sqlite3" end
def drop(database)
def drop(database) raise DatabaseNotFound, "The database #{environmentify(database)} cannot be found." unless File.exists?(database_file(database)) File.delete(database_file(database)) end
def initialize(config)
def initialize(config) @default_dir = File.expand_path(File.dirname(config[:database])) super end