class DBum::App

Web frontend for DBum, backed by Sinatra.

Public Class Methods

close!() click to toggle source
# File lib/dbum/app.rb, line 34
def self.close!
  @@db.close
end
config!(options) click to toggle source
# File lib/dbum/app.rb, line 21
def self.config! options
  @@logger = Slog::Logger.new
  @@db = Daybreak::DB.new options.database

  self.set :environment, options.environment
  self.set :port, options.port
  self.set :bind, options.bind
  self.set :raise_errors, options.debug?
  self.set :dump_errors, options.debug?
  self.set :show_exceptions, options.debug?
  self.set :logging, ::Logger::DEBUG if options.debug?
end

Private Instance Methods

keys() click to toggle source
# File lib/dbum/app.rb, line 98
def keys ; @@db.keys end
lookup(key ;) click to toggle source
# File lib/dbum/app.rb, line 100
def lookup key ; @@db[key] end
pretty_json(o) click to toggle source
# File lib/dbum/app.rb, line 93
def pretty_json o
  content_type :json
  JSON.pretty_generate o
end
remove(key) click to toggle source
# File lib/dbum/app.rb, line 109
def remove key
  @@db.lock do
    @@db.delete key
  end
  @@db.flush
end
request_body() click to toggle source
# File lib/dbum/app.rb, line 88
def request_body
  request.body.rewind
  JSON.parse request.body.read
end
update(key, val) click to toggle source
# File lib/dbum/app.rb, line 102
def update key, val
  @@db.lock do
    @@db[key] = val
  end
  @@db.flush
end