BehaviourWithFSMStateHandlerHolder

class BehaviourWithFSMStateHandlerHolder<I : State>(inputKlass: KClass<I>, strict: Boolean, delegateTo: BehaviourWithFSMStateHandler<I>)

Special holder for BehaviourContextWithFSM. This holder helps BehaviourContextWithFSM to understand whether it can handle input State with delegateTo or not

Parameters

inputKlass

This KClass will be used to compare input State type and declare ability of delegateTo to handle incoming State. See checkHandleable for more info

strict

This flag will be used in checkHandleable to choose strategy of checking incoming State

delegateTo

This handler will be called in case checkHandleable returns true with class caster incoming State in handleState

Constructors

BehaviourWithFSMStateHandlerHolder
Link copied to clipboard
common
fun <I : State> BehaviourWithFSMStateHandlerHolder(inputKlass: KClass<I>, strict: Boolean = false, delegateTo: BehaviourWithFSMStateHandler<I>)

Functions

checkHandleable
Link copied to clipboard
common
fun checkHandleable(state: State): Boolean

Check ability of delegateTo to handle this state

handleState
Link copied to clipboard
common
suspend fun BehaviourContextWithFSM.handleState(contextUpdatesFlow: Flow<Update>, state: State): State?

Handling of state :)