Unlisting
This commit is contained in:
parent
9c6aa304a8
commit
421afb8096
@ -14,9 +14,21 @@ import no.iktdev.mediaprocessing.shared.common.getAppVersion
|
||||
import no.iktdev.mediaprocessing.shared.common.toEventsDatabase
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication
|
||||
import org.springframework.boot.runApplication
|
||||
import org.springframework.transaction.annotation.Transactional
|
||||
import javax.annotation.PreDestroy
|
||||
|
||||
@SpringBootApplication
|
||||
class ConvertApplication
|
||||
class ConvertApplication {
|
||||
@PreDestroy
|
||||
fun onShutdown() {
|
||||
doTransactionalCleanup()
|
||||
}
|
||||
|
||||
@Transactional
|
||||
fun doTransactionalCleanup() {
|
||||
runnerManager.unlist()
|
||||
}
|
||||
}
|
||||
|
||||
val ioCoroutine = CoroutinesIO()
|
||||
val defaultCoroutine = CoroutinesDefault()
|
||||
|
||||
@ -17,6 +17,8 @@ import no.iktdev.streamit.library.db.tables.helper.data_video
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication
|
||||
import org.springframework.boot.runApplication
|
||||
import org.springframework.context.annotation.Bean
|
||||
import org.springframework.transaction.annotation.Transactional
|
||||
import javax.annotation.PreDestroy
|
||||
|
||||
val log = KotlinLogging.logger {}
|
||||
lateinit var eventDatabase: EventsDatabase
|
||||
@ -32,6 +34,16 @@ class CoordinatorApplication {
|
||||
return eventsManager
|
||||
}
|
||||
|
||||
@PreDestroy
|
||||
fun onShutdown() {
|
||||
doTransactionalCleanup()
|
||||
}
|
||||
|
||||
@Transactional
|
||||
fun doTransactionalCleanup() {
|
||||
runnerManager.unlist()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private lateinit var storeDatabase: MySqlDataSource
|
||||
|
||||
@ -17,7 +17,8 @@ import org.springframework.boot.autoconfigure.SpringBootApplication
|
||||
import org.springframework.boot.runApplication
|
||||
import org.springframework.scheduling.annotation.EnableScheduling
|
||||
import org.springframework.scheduling.annotation.Scheduled
|
||||
|
||||
import org.springframework.transaction.annotation.Transactional
|
||||
import javax.annotation.PreDestroy
|
||||
|
||||
|
||||
private val logger = KotlinLogging.logger {}
|
||||
@ -27,6 +28,17 @@ val defaultCoroutine = CoroutinesDefault()
|
||||
|
||||
@SpringBootApplication
|
||||
class ProcesserApplication {
|
||||
|
||||
@PreDestroy
|
||||
fun onShutdown() {
|
||||
doTransactionalCleanup()
|
||||
}
|
||||
|
||||
@Transactional
|
||||
fun doTransactionalCleanup() {
|
||||
runnerManager.unlist()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private lateinit var eventsDatabase: MySqlDataSource
|
||||
|
||||
@ -4,9 +4,12 @@ import mu.KotlinLogging
|
||||
import no.iktdev.eventi.database.DataSource
|
||||
import no.iktdev.eventi.database.executeOrException
|
||||
import no.iktdev.eventi.database.withDirtyRead
|
||||
import no.iktdev.eventi.database.withTransaction
|
||||
import no.iktdev.mediaprocessing.shared.common.database.tables.runners
|
||||
import no.iktdev.mediaprocessing.shared.common.getAppVersion
|
||||
import org.jetbrains.exposed.sql.SqlExpressionBuilder.eq
|
||||
import org.jetbrains.exposed.sql.and
|
||||
import org.jetbrains.exposed.sql.deleteWhere
|
||||
import org.jetbrains.exposed.sql.insert
|
||||
import org.jetbrains.exposed.sql.select
|
||||
import java.util.UUID
|
||||
@ -50,6 +53,12 @@ class RunnerManager(private val dataSource: DataSource, val startId: String = UU
|
||||
} ?: true
|
||||
} ?: true
|
||||
}
|
||||
|
||||
fun unlist() {
|
||||
withTransaction(dataSource.database) {
|
||||
runners.deleteWhere { (runners.startId eq startId) and (runners.application eq applicationName) }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
enum class ActiveMode {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user