class EasyMapper::Adapters::SqliteAdapter

Public Class Methods

new( host: nil, port: nil, database:, user: nil, password: nil ) click to toggle source
# File lib/easy_mapper/adapters/sqlite_adapter.rb, line 10
def initialize(
    host: nil,
    port: nil,
    database:,
    user: nil,
    password: nil
)

  @database = database
end

Public Instance Methods

connect() click to toggle source
# File lib/easy_mapper/adapters/sqlite_adapter.rb, line 21
def connect
  @db = SQLite3::Database.new @database
  @db.results_as_hash = true
end
execute(query) click to toggle source
# File lib/easy_mapper/adapters/sqlite_adapter.rb, line 26
def execute(query)
  Logger.logger.info("Executing query: #{query}")
  Results::SqliteResult.new @db.execute(query)
end
next_id(table_name) click to toggle source
# File lib/easy_mapper/adapters/sqlite_adapter.rb, line 35
def next_id(table_name)
  query = sql_builder.select
                     .column('seq')
                     .from('sqlite_sequence')
                     .where(name: table_name)
                     .build

  execute(query).single_value + 1
end
sql_builder() click to toggle source
# File lib/easy_mapper/adapters/sqlite_adapter.rb, line 31
def sql_builder
  Sqlbuilder::Builders::PostgresBuilder.new
end