콘텐츠 예약 오픈 설정

- 스케줄러 설정 수정
- 외부에서 실행되는 endpoint 제거
This commit is contained in:
2024-12-02 10:46:48 +09:00
parent c1748001d5
commit a1ef9a4970
4 changed files with 44 additions and 22 deletions

View File

@@ -0,0 +1,31 @@
package kr.co.vividnext.sodalive.scheduler
import kr.co.vividnext.sodalive.content.AudioContentService
import org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler
import org.springframework.scheduling.support.CronTrigger
import org.springframework.stereotype.Component
import java.util.concurrent.ScheduledFuture
import javax.annotation.PostConstruct
import javax.annotation.PreDestroy
@Component
class AudioContentReleaseScheduledTask(
private val audioContentService: AudioContentService,
private val audioContentReleaseScheduler: ThreadPoolTaskScheduler
) {
private var scheduledTask: ScheduledFuture<*>? = null
@PostConstruct
fun release() {
scheduledTask = audioContentReleaseScheduler.schedule(
{ audioContentService.releaseContent() },
CronTrigger("0 0/15 * * * *")
)
}
@PreDestroy
fun stopReleaseScheduler() {
scheduledTask?.cancel(false)
audioContentReleaseScheduler.shutdown()
}
}