corda / net.corda.node.services.statemachine

## Package net.corda.node.services.statemachine

### Types

ErrorSessionEnd | `data class ErrorSessionEnd : SessionEnd`
ExistingSessionMessage | `interface ExistingSessionMessage : SessionMessage`
FlowIORequest | `interface FlowIORequest`
FlowSession | `class FlowSession`
FlowSessionState | `sealed class FlowSessionState` FlowSessionState describes the session's state.
FlowStateMachineImpl | `class FlowStateMachineImpl<R> : Fiber<Unit>, FlowStateMachine<R>`
NormalSessionEnd | `data class NormalSessionEnd : SessionEnd`
ReceiveOnly | `data class ReceiveOnly<T : SessionMessage> : ReceiveRequest<T>`
ReceiveRequest | `interface ReceiveRequest<T : SessionMessage> : SessionedFlowIORequest, WaitingRequest`
ReceivedSessionMessage | `data class ReceivedSessionMessage<out M : ExistingSessionMessage>`
SendAndReceive | `data class SendAndReceive<T : SessionMessage> : SendRequest, ReceiveRequest<T>`
SendOnly | `data class SendOnly : SendRequest`
SendRequest | `interface SendRequest : SessionedFlowIORequest`
SessionConfirm | `data class SessionConfirm : SessionInitResponse`
SessionData | `data class SessionData : ExistingSessionMessage`
SessionEnd | `interface SessionEnd : ExistingSessionMessage`
SessionInit | `data class SessionInit : SessionMessage`
SessionInitResponse | `interface SessionInitResponse : ExistingSessionMessage`
SessionMessage | `interface SessionMessage`
SessionReject | `data class SessionReject : SessionInitResponse`
SessionedFlowIORequest | `interface SessionedFlowIORequest : FlowIORequest`
StateMachineManager | `class StateMachineManager` A StateMachineManager is responsible for coordination and persistence of multiple FlowStateMachine objects. Each such object represents an instantiation of a (two-party) flow that has reached a particular point.
WaitForLedgerCommit | `data class WaitForLedgerCommit : WaitingRequest`
WaitingRequest | `interface WaitingRequest : FlowIORequest`

### Exceptions

FlowSessionException | `class FlowSessionException : RuntimeException`
StackSnapshot | `class StackSnapshot : Throwable`

### Functions

checkPayloadIs | `fun <T> ReceivedSessionMessage<SessionData>.checkPayloadIs(type: Class<T>): UntrustworthyData<T>`