package

uk.ac.imperial.presage2.util.protocols

Interfaces

Conversation A Conversation is a stateful exchange of messages between 2 or more agents. 

Classes

ConversationCondition A FSM TransitionCondition which ensures that the message passed in the event matches the conversation in the FSMConversation
ConversationSpawnEvent Event to spawn a new conversation and initialise it with recipients. 
FSMConversation  
FSMProtocol Protocol implementation using an FSM to control state changes and actions. 
InitialiseConversationAction An implementation of a MessageAction designed to initialise the conversation on first message receipt. 
MessageAction Wraps an FSM Action to correctly cast event and entity to a Message and FSMConversation respectively, and provide the #processMessage(Message, FSMConversation) method to perform the required actions with these objects. 
MessageTypeAndContentsCondition FSM TransitionCondition to check the type and data properties of a received message matches a given value. 
MessageTypeCondition FSM TransitionCondition to check the type property of a received message matches a given value. 
Protocol

An InputHandler which manages a set of Conversations which produce and consume Messages of this protocol. 

SpawnAction Wraps an FSM Action to cast the event and entity to a ConversationSpawnEvent and FSMConversation respectively and provide the processSpawn(ConversationSpawnEvent, FSMConversation, Transition) method to perform actions required when the conversation is spawned. 
TimeoutCondition Guard which allows a transition when a Timeout event is passed and the last action of this fsm was older than the timeout. 

Enums

Role