new(...)
public

No documentation available.

# File activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb, line 129
      def initialize(...)
        super

        @memory_database = false
        case @config[:database].to_s
        when ""
          raise ArgumentError, "No database file specified. Missing argument: database"
        when ":memory:"
          @memory_database = true
        when /\Afile:/
        else
          # Otherwise we have a path relative to Rails.root
          @config[:database] = File.expand_path(@config[:database], Rails.root) if defined?(Rails.root)
          dirname = File.dirname(@config[:database])
          unless File.directory?(dirname)
            begin
              FileUtils.mkdir_p(dirname)
            rescue SystemCallError
              raise ActiveRecord::NoDatabaseError.new(connection_pool: @pool)
            end
          end
        end

        @previous_read_uncommitted = nil
        @config[:strict] = ConnectionAdapters::SQLite3Adapter.strict_strings_by_default unless @config.key?(:strict)

        extensions = @config.fetch(:extensions, []).map do |extension|
          extension.safe_constantize || extension
        end

        @connection_parameters = @config.merge(
          database: @config[:database].to_s,
          results_as_hash: true,
          default_transaction_mode: :immediate,
          extensions: extensions
        )
      end