[jOOQ/jOOQ#15103] Add DSLContext.transactionCoroutine overload accepting CoroutineContext
This commit is contained in:
parent
2c657cc784
commit
3ac7f72fa1
@ -1,5 +1,6 @@
|
||||
package org.jooq.kotlin.coroutines
|
||||
|
||||
import kotlin.coroutines.CoroutineContext
|
||||
import kotlinx.coroutines.reactive.awaitFirstOrNull
|
||||
import kotlinx.coroutines.reactor.mono
|
||||
import org.jooq.Configuration
|
||||
@ -16,4 +17,13 @@ suspend fun <T> DSLContext.transactionCoroutine(transactional: suspend (Configur
|
||||
transactional.invoke(c)
|
||||
}
|
||||
}.awaitFirstOrNull() as T
|
||||
}
|
||||
|
||||
suspend fun <T> DSLContext.transactionCoroutine(context: CoroutineContext, transactional: suspend (Configuration) -> T): T {
|
||||
@Suppress("UNCHECKED_CAST")
|
||||
return transactionPublisher { c ->
|
||||
mono(context) {
|
||||
transactional.invoke(c)
|
||||
}
|
||||
}.awaitFirstOrNull() as T
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user