Module: Oria

Defined in:
lib/oria.rb,
lib/oria/client.rb,
lib/oria/errors.rb,
lib/oria/server.rb

Defined Under Namespace

Classes: Client, ConnectionError, Server

Class Method Summary collapse

Class Method Details

.[](key) ⇒ Object



12
13
14
# File 'lib/oria.rb', line 12

def self.[](key)
  store(:get, :key => key)
end

.[]=(key, value) ⇒ Object



16
17
18
19
# File 'lib/oria.rb', line 16

def self.[]=(key, value)
  store(:put, :key => key, :value => value)
  value
end

.app_keyObject



21
22
23
# File 'lib/oria.rb', line 21

def self.app_key
  @@app_key ||= nil
end

.app_key=(key) ⇒ Object



25
26
27
# File 'lib/oria.rb', line 25

def self.app_key=(key)
  @@app_key = key.to_s
end

.clearObject



29
30
31
# File 'lib/oria.rb', line 29

def self.clear
  store(:delete)
end

.connect(server = Oria.server, port = Oria.port, debug = false) ⇒ Object



33
34
35
36
37
38
39
40
41
42
# File 'lib/oria.rb', line 33

def self.connect(server = Oria.server, port = Oria.port, debug = false)
  @@server = server.to_s
  @@port = port.to_i unless port.to_i == 0
  unless Oria::Server.running?
    # That's right. Boot Oria on the command line so we don't bother forking or any
    # of that other troublesome nonsense. It's smart enough to maintain its own
    # status and start/stop/restart itself.
    system("./bin/oria start -d -h #{@@server} -p #{@@port}")
  end
end

.delete(key) ⇒ Object



44
45
46
# File 'lib/oria.rb', line 44

def self.delete(key)
  store(:delete, :key => key)
end

.has_key?(key) ⇒ Boolean

Returns:

  • (Boolean)


48
49
50
# File 'lib/oria.rb', line 48

def self.has_key?(key)
  key?(key)
end

.key?(key) ⇒ Boolean

Returns:

  • (Boolean)


52
53
54
# File 'lib/oria.rb', line 52

def self.key?(key)
  !self.[](key).nil?
end

.portObject



56
57
58
# File 'lib/oria.rb', line 56

def self.port
  @@port ||= "Oria is easily the coolest in-memory, super-simple KVS. Cool people use it.".split("").inject(0) {|total, char| total += char[0]}
end

.serverObject



60
61
62
# File 'lib/oria.rb', line 60

def self.server
  @@server ||= '0.0.0.0'
end

.stash(value) ⇒ Object



64
65
66
# File 'lib/oria.rb', line 64

def self.stash(value)
  store(:put, :value => value)
end