public class

FSMProtocol

extends Protocol
java.lang.Object
   ↳ uk.ac.imperial.presage2.util.protocols.Protocol
     ↳ uk.ac.imperial.presage2.util.protocols.FSMProtocol

Class Overview

Protocol implementation using an FSM to control state changes and actions.

Summary

Fields
protected final FSMDescription description
protected final NetworkAdaptor network
[Expand]
Inherited Fields
From class uk.ac.imperial.presage2.util.protocols.Protocol
Public Constructors
FSMProtocol(String name, FSMDescription description, NetworkAdaptor network)
Public Methods
void incrementTime(int t)
Conversation spawn()
Spawn a conversation of this protocol.
Conversation spawn(Set<NetworkAddress> with)
Spawn a conversation of this protocol with the given network addresses (multi-cast conversation).
void spawn(Message m)
Spawn a conversation of this protocol from the given input message (reactive conversation).
Conversation spawn(NetworkAddress with)
Spawn a conversation of this protocol with the given network address.
Protected Methods
Conversation spawnAsInititor(Object event)
[Expand]
Inherited Methods
From class uk.ac.imperial.presage2.util.protocols.Protocol
From class java.lang.Object
From interface uk.ac.imperial.presage2.core.messaging.InputHandler

Fields

protected final FSMDescription description

protected final NetworkAdaptor network

Public Constructors

public FSMProtocol (String name, FSMDescription description, NetworkAdaptor network)

Public Methods

public void incrementTime (int t)

public Conversation spawn ()

Spawn a conversation of this protocol. No arguments are provided so this will usually be a broadcast conversation.

public Conversation spawn (Set<NetworkAddress> with)

Spawn a conversation of this protocol with the given network addresses (multi-cast conversation).

public void spawn (Message m)

Spawn a conversation of this protocol from the given input message (reactive conversation).

public Conversation spawn (NetworkAddress with)

Spawn a conversation of this protocol with the given network address.

Protected Methods

protected Conversation spawnAsInititor (Object event)

Throws
FSMException