AsyncTerminalMethods

Interface for builder executing queries asynchronously in the provided CoroutineScope. Terminal methods accept callbacks and return Job for lifecycle control.

Functions

Link copied to clipboard
abstract fun execute(params: Map<String, Any?> = emptyMap(), onResult: (DataResult<Int>) -> Unit): Job

Asynchronously executes a modification query and passes the result to the onResult callback.

Link copied to clipboard
abstract fun <T> toColumn(kType: KType, params: Map<String, Any?> = emptyMap(), onResult: (DataResult<List<T>>) -> Unit): Job

Asynchronously fetches a list of values from the first column and passes the result to the onResult callback.

Link copied to clipboard
inline fun <T> AsyncTerminalMethods.toColumn(vararg params: Pair<String, Any?>, noinline onResult: (DataResult<List<T>>) -> Unit): Job
inline fun <T> AsyncTerminalMethods.toColumn(params: Map<String, Any?> = emptyMap(), noinline onResult: (DataResult<List<T>>) -> Unit): Job
Link copied to clipboard
abstract fun <T> toField(kType: KType, params: Map<String, Any?> = emptyMap(), onResult: (DataResult<T>) -> Unit): Job

Asynchronously fetches a single value from the first column and passes the result to the onResult callback.

Link copied to clipboard
inline fun <T> AsyncTerminalMethods.toField(vararg params: Pair<String, Any?>, noinline onResult: (DataResult<T>) -> Unit): Job
inline fun <T> AsyncTerminalMethods.toField(params: Map<String, Any?> = emptyMap(), noinline onResult: (DataResult<T>) -> Unit): Job
Link copied to clipboard
abstract fun <T> toFieldStrict(kType: KType, params: Map<String, Any?> = emptyMap(), onResult: (DataResult<T>) -> Unit): Job

Asynchronously fetches a single value (strict: always fails on empty result) and passes the result to the onResult callback.

Link copied to clipboard
inline fun <T> AsyncTerminalMethods.toFieldStrict(vararg params: Pair<String, Any?>, noinline onResult: (DataResult<T>) -> Unit): Job
inline fun <T> AsyncTerminalMethods.toFieldStrict(params: Map<String, Any?> = emptyMap(), noinline onResult: (DataResult<T>) -> Unit): Job
Link copied to clipboard
abstract fun toList(params: Map<String, Any?> = emptyMap(), onResult: (DataResult<List<Map<String, Any?>>>) -> Unit): Job

Asynchronously fetches a list of rows and passes the result to the onResult callback.

Link copied to clipboard
fun AsyncTerminalMethods.toList(vararg params: Pair<String, Any?>, onResult: (DataResult<List<Map<String, Any?>>>) -> Unit): Job
Link copied to clipboard
abstract fun <T> toListOf(kType: KType, params: Map<String, Any?> = emptyMap(), onResult: (DataResult<List<T>>) -> Unit): Job

Asynchronously maps results to a list of objects and passes them to the onResult callback.

Link copied to clipboard
inline fun <T : Any> AsyncTerminalMethods.toListOf(vararg params: Pair<String, Any?>, noinline onResult: (DataResult<List<T>>) -> Unit): Job
inline fun <T : Any> AsyncTerminalMethods.toListOf(params: Map<String, Any?> = emptyMap(), noinline onResult: (DataResult<List<T>>) -> Unit): Job
Link copied to clipboard
abstract fun toSingle(params: Map<String, Any?> = emptyMap(), onResult: (DataResult<Map<String, Any?>?>) -> Unit): Job

Asynchronously fetches a single row and passes the result to the onResult callback.

Link copied to clipboard
fun AsyncTerminalMethods.toSingle(vararg params: Pair<String, Any?>, onResult: (DataResult<Map<String, Any?>?>) -> Unit): Job
Link copied to clipboard
abstract fun <T> toSingleOf(kType: KType, params: Map<String, Any?> = emptyMap(), onResult: (DataResult<T>) -> Unit): Job

Asynchronously maps the result to a single object and passes it to the onResult callback.

Link copied to clipboard
inline fun <T> AsyncTerminalMethods.toSingleOf(vararg params: Pair<String, Any?>, noinline onResult: (DataResult<T>) -> Unit): Job
inline fun <T> AsyncTerminalMethods.toSingleOf(params: Map<String, Any?> = emptyMap(), noinline onResult: (DataResult<T>) -> Unit): Job
Link copied to clipboard
abstract fun toSingleStrict(params: Map<String, Any?> = emptyMap(), onResult: (DataResult<Map<String, Any?>>) -> Unit): Job

Asynchronously fetches a single row (non-nullable) and passes the result to the onResult callback.

Link copied to clipboard
fun AsyncTerminalMethods.toSingleStrict(vararg params: Pair<String, Any?>, onResult: (DataResult<Map<String, Any?>>) -> Unit): Job