def update_session(self, user_id, session_id, patch_doc): valid_patch = SessionDoc.create_patch(patch_doc) # check that document exists assert (self.session_manager.get(user_id, session_id)) version = self.session_manager.update(session_id, valid_patch) logging.info(_i18n._LI('Session %(id)s updated to version %(version)s' % {'id': session_id, 'version': version})) return version
def replace_session(self, user_id, session_id, doc): # check that no document exists with # same session_id and different user_id try: self.session_manager.get(user_id, session_id) except freezer_api_exc.DocumentNotFound: pass valid_doc = SessionDoc.update(doc, user_id, session_id) (created, version) = self.session_manager.insert(valid_doc, session_id) if created: logging.info(_i18n._LI('Session %s created') % session_id) else: logging.info(_i18n._LI('Session %(id)s replaced with version %(version)s' % {'id': session_id, 'version': version})) return version
def add_session(self, user_id, doc): session_doc = SessionDoc.create(doc, user_id) session_id = session_doc['session_id'] self.session_manager.insert(session_doc, session_id) logging.info(_i18n._LI('Session registered, session id: %s') % session_id) return session_id