Skip to content

Instantly share code, notes, and snippets.

@Ugrend
Last active August 29, 2015 14:21
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Ugrend/7bae0fb46b42e2a9003e to your computer and use it in GitHub Desktop.
Save Ugrend/7bae0fb46b42e2a9003e to your computer and use it in GitHub Desktop.
class SessionHandler():
def __init__(self):
pass
self.sessions = {}
def removeOldSessions(self):
for key,sessions in self.sessions.iteritems():
self.sessions[key] = [x for x in sessions if (datetime.now() - x['time']) < timedelta(minutes=5)]
def updateSession(self,key,user):
try:
for x in self.sessions[key]:
if x ['person'] == user:
x['time'] = datetime.now()
return
self.sessions[key].append({'person':user, 'time': datetime.now()})
except KeyError:
self.sessions[key] = [{'person':user, 'time': datetime.now()}]
def createSession(self,key,user):
self.createSession(key,user)
def removeSession(self,key,user):
try:
self.sessions[key] = [x for x in self.sessions[key] if x['person'] != user]
except KeyError:
#if no key no problem
pass
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment