equal
deleted
inserted
replaced
23 |
23 |
24 from cubicweb import (RepositoryError, Unauthorized, AuthenticationError, |
24 from cubicweb import (RepositoryError, Unauthorized, AuthenticationError, |
25 BadConnectionId) |
25 BadConnectionId) |
26 from cubicweb.web import InvalidSession, Redirect |
26 from cubicweb.web import InvalidSession, Redirect |
27 from cubicweb.web.application import AbstractSessionManager |
27 from cubicweb.web.application import AbstractSessionManager |
28 from cubicweb.dbapi import DBAPISession |
28 from cubicweb.dbapi import ProgrammingError, DBAPISession |
29 |
29 |
30 |
30 |
31 class InMemoryRepositorySessionManager(AbstractSessionManager): |
31 class InMemoryRepositorySessionManager(AbstractSessionManager): |
32 """manage session data associated to a session identifier""" |
32 """manage session data associated to a session identifier""" |
33 |
33 |
131 self.info('closing http session %s' % session.sessionid) |
131 self.info('closing http session %s' % session.sessionid) |
132 del self._sessions[session.sessionid] |
132 del self._sessions[session.sessionid] |
133 if session.cnx: |
133 if session.cnx: |
134 try: |
134 try: |
135 session.cnx.close() |
135 session.cnx.close() |
136 except BadConnectionId: # expired on the repository side |
136 except (ProgrammingError, BadConnectionId): # expired on the repository side |
137 pass |
137 pass |
138 session.cnx = None |
138 session.cnx = None |