Class: Ask::Agent::Persistence::InMemory

Inherits:
Base
  • Object
show all
Defined in:
lib/ask/agent/persistence/in_memory.rb

Instance Method Summary collapse

Constructor Details

#initializeInMemory

Returns a new instance of InMemory.



7
8
9
10
# File 'lib/ask/agent/persistence/in_memory.rb', line 7

def initialize
  @store = {}
  @mutex = Mutex.new
end

Instance Method Details

#delete(session_id) ⇒ Object



20
21
22
# File 'lib/ask/agent/persistence/in_memory.rb', line 20

def delete(session_id)
  @mutex.synchronize { @store.delete(session_id) }
end

#listObject



24
25
26
# File 'lib/ask/agent/persistence/in_memory.rb', line 24

def list
  @mutex.synchronize { @store.keys }
end

#load(session_id) ⇒ Object



16
17
18
# File 'lib/ask/agent/persistence/in_memory.rb', line 16

def load(session_id)
  @mutex.synchronize { @store[session_id] }
end

#save(session_id, data) ⇒ Object



12
13
14
# File 'lib/ask/agent/persistence/in_memory.rb', line 12

def save(session_id, data)
  @mutex.synchronize { @store[session_id] = data }
end