nee-core / dev.neeffect.nee.effects.async / AsyncStack

AsyncStack

sealed class AsyncStack<R> : Logging

Registry of async cleaning operations.

Properties

actions

val actions: Seq<AsyncClosingAction<R>>

Functions

cleanUp

abstract fun cleanUp(env: R): Pair<AsyncStack<R>, R>

doOnCleanUp

open fun doOnCleanUp(action: AsyncClosingAction<R>): ActiveAsynStack<R>

enterAsync

open fun enterAsync(): ActiveAsynStack<R>

performActions

fun performActions(env: R): R

Extension Functions

logger

Use it to log using slf4j.

fun <T : Logging> T.logger(): Logger

onClose

fun <R> AsyncStack<R>.onClose(f: (R) -> R): ActiveAsynStack<R>

Inheritors

ActiveAsynStack

Ongoing async process.

class ActiveAsynStack<R> : AsyncStack<R>

CleanAsyncStack

Empty registry.

class CleanAsyncStack<R> : AsyncStack<R>