InitiatingFlow

annotation class InitiatingFlow

InitiatingFlow marks a flow as initiating, meaning that it starts a ResponderFlow when creating a session with another network entity.

Any flows that participate in flow sessions must declare a protocol name, using protocol and protocol. The platform will use the protocol name to establish what ResponderFlow to invoke on the responder side when the initiator side creates a session.

For example, to set up an initiator-responder pair, declare the following:


= "myprotocol")
class MyFlowInitiator : Flow {
 ...
}

= "myprotocol")
class MyFlowResponder : ResponderFlow {
 ...
}
Flows may also optionally declare a range of protocol versions they support. By default, flows support protocol version 1 only. When initiating a flow, the platform will look for the highest supported protocol version as declared on the initiating side and start that flow on the responder side.

See also

Functions

Link copied to clipboard
abstract fun annotationType(): Class<out Annotation>
Link copied to clipboard
abstract fun equals(p: Any): Boolean
Link copied to clipboard
abstract fun hashCode(): Int
Link copied to clipboard
abstract fun protocol(): String
Link copied to clipboard
abstract fun toString(): String
Link copied to clipboard
abstract fun version(): Array<Int>