|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.jgroups.stack.Protocol
org.jgroups.protocols.TOTAL
public class TOTAL
Implements the total ordering layer using a message sequencer
The protocol guarantees that all bcast sent messages will be delivered in the same order to all members. For that it uses a sequencer which assignes monotonically increasing sequence ID to broadcasts. Then all group members deliver the bcasts in ascending sequence ID order.BLOCK_OK
is acknowledged messages
coming from above are discarded! Either the application must stop
sending messages when a BLOCK
event is received from the
channel or a QUEUE layer should be placed above this one. Received messages
are still delivered above though.
bcast requests are retransmitted periodically until a bcast reply is
received. In case a BCAST_REP is on its way during a BCAST_REQ
retransmission, then the next BCAST_REP will be to a non-existing
BCAST_REQ. So, a null BCAST message is sent to fill the created gap in
the seqID of all members.
Nested Class Summary | |
---|---|
static class |
TOTAL.Header
The header processed by the TOTAL layer and intended for TOTAL inter-stack communication |
Field Summary |
---|
Fields inherited from class org.jgroups.stack.Protocol |
---|
down_handler, down_prot, down_queue, down_thread, down_thread_prio, log, observer, props, stack, stats, up_handler, up_prot, up_queue, up_thread, up_thread_prio |
Constructor Summary | |
---|---|
TOTAL()
Create the TOTAL layer |
Method Summary | |
---|---|
void |
down(Event event)
Process an event coming from the layer above |
java.lang.String |
getName()
|
java.util.Vector |
requiredDownServices()
Events that some layer below must handle |
java.util.Vector |
requiredUpServices()
Events that some layer above must handle |
boolean |
setProperties(java.util.Properties properties)
Configure the protocol based on the given list of properties |
void |
start()
Prepare this layer to receive messages from above |
void |
stop()
Handle the stop() method travelling down the stack. |
void |
up(Event event)
Process an event coming from the layer below |
Methods inherited from class org.jgroups.stack.Protocol |
---|
destroy, downThreadEnabled, dumpStats, enableStats, getDownProtocol, getDownQueue, getProperties, getUpProtocol, getUpQueue, handleSpecialDownEvent, init, passDown, passUp, printStats, providedDownServices, providedUpServices, receiveDownEvent, receiveUpEvent, resetStats, setDownProtocol, setObserver, setPropertiesInternal, setProtocolStack, setUpProtocol, startDownHandler, startUpHandler, statsEnabled, stopInternal, upThreadEnabled |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public TOTAL()
Method Detail |
---|
public java.lang.String getName()
getName
in class Protocol
public boolean setProperties(java.util.Properties properties)
setProperties
in class Protocol
properties
- the list of properties to use to setup this layer
public java.util.Vector requiredDownServices()
requiredDownServices
in class Protocol
Event
s that must be handled by some layer
belowpublic java.util.Vector requiredUpServices()
requiredUpServices
in class Protocol
Event
s that must be handled by some
layer abovepublic void start() throws java.lang.Exception
start
in class Protocol
java.lang.Exception
- Thrown if protocol cannot be started successfully. This will cause the ProtocolStack
to fail, so Channel.connect(String)
will throw an exceptionpublic void stop()
stop
in class Protocol
public void up(Event event)
up
in class Protocol
event
- the event to processpublic void down(Event event)
down
in class Protocol
event
- the event to process
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |