Class: GrubY::Session

Inherits:
Object
  • Object
show all
Defined in:
lib/gruubY/session.rb

Constant Summary collapse

FILE =
"storage/sessions.json"

Instance Method Summary collapse

Constructor Details

#initializeSession

Returns a new instance of Session.



7
8
9
10
11
# File 'lib/gruubY/session.rb', line 7

def initialize
  Dir.mkdir("storage") unless Dir.exist?("storage")
  File.write(FILE, "{}") unless File.exist?(FILE)
  @data = JSON.parse(File.read(FILE))
end

Instance Method Details

#get(user_id) ⇒ Object



13
14
15
# File 'lib/gruubY/session.rb', line 13

def get(user_id)
  @data[user_id.to_s] ||= {}
end

#saveObject



22
23
24
# File 'lib/gruubY/session.rb', line 22

def save
  File.write(FILE, JSON.pretty_generate(@data))
end

#set(user_id, value) ⇒ Object



17
18
19
20
# File 'lib/gruubY/session.rb', line 17

def set(user_id, value)
  @data[user_id.to_s] = value
  save
end

#to_hObject



26
27
28
# File 'lib/gruubY/session.rb', line 26

def to_h
  @data.dup
end