net.corda.core.protocols

Package net.corda.core.protocols

Types

AppContext data class AppContext

This is just some way to track what attachments need to be in the class loader, but may later include some app properties loaded from the attachments. And perhaps the authenticated user for an API call?

ProtocolLogic abstract class ProtocolLogic<out T>

A sub-class of ProtocolLogic implements a protocol flow using direct, straight line blocking code. Thus you can write complex protocol logic in an ordinary fashion, without having to think about callbacks, restarting after a node crash, how many instances of your protocol there are running and so on.

ProtocolLogicRef data class ProtocolLogicRef

A class representing a ProtocolLogic instance which would be possible to safely pass out of the contract sandbox.

ProtocolLogicRefFactory class ProtocolLogicRefFactory : SingletonSerializeAsToken

A class for conversion to and from ProtocolLogic and ProtocolLogicRef instances.

ProtocolStateMachine interface ProtocolStateMachine<R>

A ProtocolStateMachine instance is a suspendable fiber that delegates all actual logic to a ProtocolLogic instance. For any given flow there is only one PSM, even if that protocol invokes subprotocols.

StateMachineRunId data class StateMachineRunId

Exceptions

IllegalProtocolLogicException class IllegalProtocolLogicException : IllegalArgumentException
ProtocolSessionException class ProtocolSessionException : Exception