The client uses this class to send a CORBA message to all the replicated servers to
inform them in which port and which address they can send the message AmAlive needed
for the leader election.
When you want to decode a message whatever is its type you have to call
the Decode function of this class which is going to first decode the common variable
of all the messages and then to call the Decode function of his real type.
When a server receives a ReadMessage it sends an AckReadMessage or a NackReadMessage depending if
it has already read or written for an higer round number or not.
The object in which we are going to register the Outcome value (Request,Reply,Update)
that has been decided for this position in the total order and also the last time it has
read and write for this position.
registry -
Variable in class universal.consensus.register.Register
The HahsTable of registry which contains the request decided for each position in the total order
If a request has already been processed for this position in the
total order,the AckRead messages contain the value decided and for for which round number it has been written.
If a request has already been processed for this position in the
total order,the AckRead messages contains the value decided and for for which round number it has been written.
Each replicated server uses this class to send a CORBA message to all the replicated servers to
inform them in which port and which address they can send the messages needed
for the leader election and for the consensus .
Depending on the type of the message,
it adds it to the vector AckBuffer, ReadBuffer or WriteBuffer if it is respectively an
acknowledgement, read or write messages.
run() -
Method in class universal.consensus.register.AckListener
The client instantiates one object universalClientCrashStop by group of replicated servers
that it wants to acces because for example it needs to know who is the leader for each group.
When a server recceives a WriteMessage, it sends an AckWriteMessage or a NackWriteMessage
depending if it has already read or write for a higher round number or not.