woowacourse-teams / 2024-coduo

함께 하면 좋은 코딩, 코딩해듀오 💞
https://coduo.site
16 stars 2 forks source link

[BE] 타이머 비활성화 기능 구현 #795

Closed koust6u closed 6 days ago

koust6u commented 6 days ago

연관된 이슈

구현한 기능

페어룸이 회고를 마치고 라이프 사이클이 끝나기 전 메모리에서 관리되는 모든 Timer 관련 리소스를 정리한다.

상세 설명

  1. 구현 API(/api/{accessCode}/timer/disable) 호출 시 메모리에서 관리 되고 있는 해당 페어룸 시간정보(timestamp) 삭제
  2. 구현 API 호출 시 메모리에서 관리 되고 있는 해당 페어룸 스케줄러(ShceduledFuture)삭제
  3. 구현 API 호출 시 메모리에서 관리 되고 있는 해당 페어룸 SSE 연결 모두 끊음 (SSE 전달 데이터/ event: timer, data: disconnect)
  4. 해당 페어룸의 구성원(즉, 페어룸과 연관 관계에 있는 Member )들만 해당 API 정상적으로 사용가능하도록 예외 처리