From 9378e4d145f3bcf5478bc8c1faeaf226e1e3c8f4 Mon Sep 17 00:00:00 2001 From: akhdanre Date: Sun, 18 May 2025 02:31:59 +0700 Subject: [PATCH] feat: adding clean up environtmen in redis --- app/repositories/session_memory_repository.py | 16 ++++++++++++++++ app/services/session_service.py | 5 +++++ 2 files changed, 21 insertions(+) diff --git a/app/repositories/session_memory_repository.py b/app/repositories/session_memory_repository.py index 8577aad..89d8b3e 100644 --- a/app/repositories/session_memory_repository.py +++ b/app/repositories/session_memory_repository.py @@ -90,3 +90,19 @@ class SessionMemoryRepository: self.set_data(self._build_key(session_id), session) return True + + def delete_session(self, session_id: str) -> bool: + """ + Delete a session by its session_id. + + Args: + session_id (str): The ID of the session to delete. + + Returns: + bool: True if the session was deleted, False if it did not exist. + """ + key = self._build_key(session_id) + if self.redis.exists(key): + self.delete_key(key) + return True + return False diff --git a/app/services/session_service.py b/app/services/session_service.py index 49a4b12..8effcdd 100644 --- a/app/services/session_service.py +++ b/app/services/session_service.py @@ -308,3 +308,8 @@ class SessionService: ) self.answer_repository.create(userAnswer) + + self.session_redis_repository.delete_session(session_id=session_id) + self.quiz_redis_repository.delete_quiz_for_session(session_id=session_id) + self.answer_redis_repository.delete_all_answers(session_id=session_id) + self.score_redis_repository.delete_scores(session_id=session_id) \ No newline at end of file