Files

Class/Module Index [+]

Quicksearch

Moneta::Adapters::TokyoCabinet

TokyoCabinet backend @api public

Public Class Methods

new(options = {}) click to toggle source

@param [Hash] options @option options [String] :file Database file @option options [Symbol] :type (:hdb) Database type (:bdb and :hdb possible) @option options [::TokyoCabinet::*DB] :backend Use existing backend instance

# File lib/moneta/adapters/tokyocabinet.rb, line 12
def initialize(options = {})
  if options[:backend]
    @backend = options[:backend]
  else
    raise ArgumentError, 'Option :file is required' unless options[:file]
    if options[:type] == :bdb
      @backend = ::TokyoCabinet::BDB.new
      @backend.open(options[:file], ::TokyoCabinet::BDB::OWRITER | ::TokyoCabinet::BDB::OCREAT)
    else
      @backend = ::TokyoCabinet::HDB.new
      @backend.open(options[:file], ::TokyoCabinet::HDB::OWRITER | ::TokyoCabinet::HDB::OCREAT)
    end or raise @backend.errmsg(@backend.ecode)
  end
end

Public Instance Methods

close() click to toggle source

(see Proxy#close)

# File lib/moneta/adapters/tokyocabinet.rb, line 42
def close
  @backend.close
  nil
end
create(key, value, options = {}) click to toggle source

(see Proxy#create)

# File lib/moneta/adapters/tokyocabinet.rb, line 37
def create(key, value, options = {})
  @backend.putkeep(key, value)
end
delete(key, options = {}) click to toggle source

(see Proxy#delete)

# File lib/moneta/adapters/tokyocabinet.rb, line 28
def delete(key, options = {})
  value = load(key, options)
  if value
    @backend.delete(key)
    value
  end
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.