InactivityHandlerScheduler.kt

package de.pflugradts.passbird.application.process.inactivity
import de.pflugradts.passbird.application.configuration.ReadableConfiguration
import de.pflugradts.passbird.application.process.Initializer
import kotlin.concurrent.fixedRateTimer
class InactivityHandlerScheduler constructor(
    private val configuration: ReadableConfiguration,
    private val inactivityHandler: InactivityHandler,
) : Initializer {
    override fun run() {
        if (configuration.application.inactivityLimit.enabled) {
            fixedRateTimer(
                name = "inactivity-handler",
                daemon = true,
                initialDelay = 0,
                period = 1000 * 10,
                action = { inactivityHandler.checkInactivity() },
            )
        }
    }
}