class Marc2LinkedData::CapDb

An interface to an SQL database using Sequel @see sequel.jeremyevans.net/documentation.html Sequel RDoc @see sequel.jeremyevans.net/rdoc/files/README_rdoc.html Sequel README @see sequel.jeremyevans.net/rdoc/files/doc/code_order_rdoc.html Sequel code order

Attributes

db[RW]
db_config[RW]

Public Class Methods

log_model_info(m) click to toggle source
# File lib/marc2linkeddata/cap_db.rb, line 18
def self.log_model_info(m)
  @@log.info "table: #{m.table_name}, columns: #{m.columns}, pk: #{m.primary_key}"
end
new() click to toggle source
# File lib/marc2linkeddata/cap_db.rb, line 22
def initialize
  @db_config = {}
  @db_config['host'] = ENV['SUL_CAP_DB_HOST'] || 'localhost'
  @db_config['port'] = ENV['SUL_CAP_DB_PORT'] || '3306'
  @db_config['user'] = ENV['SUL_CAP_DB_USER'] || 'capUser'
  @db_config['password'] = ENV['SUL_CAP_DB_PASSWORD'] || 'capPass'
  @db_config['database'] = ENV['SUL_CAP_DB_DATABASE'] || 'cap'
  options = @db_config.merge(
      {
          :encoding => 'utf8',
          :max_connections => 10,
          :logger => @@log
      })
  @db = Sequel.mysql(options)
  @db.extension(:pagination)
  # Ensure the connection is good on startup, raises exceptions on failure
  puts "#{@db} connected: #{@db.test_connection}"
end