Class: KVJ

Inherits:
Object
  • Object
show all
Extended by:
BaseMethods, MetaHashMethods
Defined in:
lib/kvj.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods included from BaseMethods

drop, list

Methods included from MetaHashMethods

generate_hash_functions, inheritage_hash_method

Constructor Details

#initialize(database, directory) ⇒ KVJ

the new constructor is hidden from user please use connect_or_create, create or connect instead



36
37
38
39
# File 'lib/kvj.rb', line 36

def initialize(database, directory)
  @database = database
  @file_connector = FileConnector.new(database, directory)
end

Class Method Details

.connect(database) ⇒ Object



27
28
29
30
31
32
# File 'lib/kvj.rb', line 27

def self.connect(database)
  directory = KVJ_CONFIG['base_directory']
  return new(database, directory) if FileConnector.exist(database, directory)
  STDERR.puts "Request to connect to database : #{database} but does not exists. "
  false
end

.connect_or_create(database) ⇒ Object



15
16
17
18
# File 'lib/kvj.rb', line 15

def self.connect_or_create(database)
  directory = KVJ_CONFIG['base_directory']
  new(database, directory)
end

.create(database) ⇒ Object



20
21
22
23
24
25
# File 'lib/kvj.rb', line 20

def self.create(database)
  directory = KVJ_CONFIG['base_directory']
  return new(database, directory) unless FileConnector.exist(database, directory)
  STDERR.puts "Request to initialize a new database : #{database} but alread exists. "
  false
end