Sha256: 030c922b34d08602d555b07840695edf6794fff4e8b1aaf2186d92217e64f2e7

Contents?: true

Size: 695 Bytes

Versions: 9

Compression:

Stored size: 695 Bytes

Contents

# frozen_string_literal: true

require "fileutils"
require "pathname"

class Combustion::Databases::SQLite < Combustion::Databases::Base
  private

  def create
    if exists?
      warn "#{config[:database]} already exists"
      return
    end

    establish_connection configuration
    connection
  rescue StandardError => error
    warn error, *error.backtrace
    warn "Couldn't create database for #{configuration.inspect}"
  end

  def drop
    FileUtils.rm_f file if exists?
  end

  def exists?
    File.exist? file
  end

  def file
    @file ||= path.absolute? ? path.to_s : File.join(Rails.root, path)
  end

  def path
    @path ||= Pathname.new configuration[:database]
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
combustion-1.5.0 lib/combustion/databases/sqlite.rb
combustion-1.4.0 lib/combustion/databases/sqlite.rb
combustion-1.3.7 lib/combustion/databases/sqlite.rb
combustion-1.3.6 lib/combustion/databases/sqlite.rb
combustion-1.3.5 lib/combustion/databases/sqlite.rb
combustion-1.3.4 lib/combustion/databases/sqlite.rb
combustion-1.3.3 lib/combustion/databases/sqlite.rb
combustion-1.3.2 lib/combustion/databases/sqlite.rb
combustion-1.3.1 lib/combustion/databases/sqlite.rb