commonMain.it.unibo.pulvreakt.runtime.component.ComponentManager.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of runtime-jvm Show documentation
Show all versions of runtime-jvm Show documentation
A framework to create a pulverized system
package it.unibo.pulvreakt.runtime.component
import arrow.core.Either
import it.unibo.pulvreakt.api.component.Component
import it.unibo.pulvreakt.api.component.ComponentRef
import it.unibo.pulvreakt.api.initializable.ManagedResource
import it.unibo.pulvreakt.errors.component.ComponentError
import it.unibo.pulvreakt.runtime.component.errors.ComponentManagerError
import kotlinx.coroutines.Deferred
internal interface ComponentManager : ManagedResource {
fun register(component: Component)
suspend fun start(component: ComponentRef): Either>>
suspend fun stop(component: ComponentRef): Either
suspend fun stopAll(): Either
fun alive(): Set
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy