Module: TShield::Sessions

Defined in:
lib/tshield/sessions.rb

Overview

Manage sessions

Start and stop session for ip

Class Method Summary collapse

Class Method Details

.current(ip) ⇒ Object



19
20
21
# File 'lib/tshield/sessions.rb', line 19

def self.current(ip)
  sessions[normalize_ip(ip)]
end

.normalize_ip(ip) ⇒ Object



27
28
29
# File 'lib/tshield/sessions.rb', line 27

def self.normalize_ip(ip)
  ip == '::1' ? '127.0.0.1' : ip
end

.sessionsObject



23
24
25
# File 'lib/tshield/sessions.rb', line 23

def self.sessions
  @sessions ||= {}
end

.start(ip, name) ⇒ Object



11
12
13
# File 'lib/tshield/sessions.rb', line 11

def self.start(ip, name)
  sessions[normalize_ip(ip)] = { name: name, counter: TShield::Counter.new }
end

.stop(ip) ⇒ Object



15
16
17
# File 'lib/tshield/sessions.rb', line 15

def self.stop(ip)
  sessions[normalize_ip(ip)] = nil
end