public class MERGE2 extends Protocol
This protocol works as follows:
Requires: FIND_INITIAL_MBRS event from below
Provides: sends MERGE event with list of coordinators up the stack
Modifier and Type | Field and Description |
---|---|
protected int |
inconsistent_view_threshold |
protected long |
max_interval |
protected boolean |
merge_fast |
protected long |
merge_fast_delay |
protected long |
min_interval |
Constructor and Description |
---|
MERGE2() |
Modifier and Type | Method and Description |
---|---|
Object |
down(Event evt)
An event is to be sent down the stack.
|
long |
getMaxInterval() |
long |
getMinInterval() |
void |
init()
Called after instance has been created (null constructor) and before protocol is started.
|
boolean |
isMergeTaskRunning() |
Vector<Integer> |
requiredDownServices()
List of events that are required to be answered by some layer below.
|
void |
sendMergeSolicitation()
Discovers members and detects whether we have multiple coordinator.
|
void |
setMaxInterval(long l) |
void |
setMinInterval(long i) |
void |
startMergeTask() |
void |
stop()
This method is called on a
Channel.disconnect() . |
void |
stopMergeTask() |
Object |
up(Event evt)
An event was received from the layer below.
|
destroy, downThreadEnabled, dumpStats, enableStats, getConfigurableObjects, getDownProtocol, getId, getLevel, getName, getProperties, getProtocolStack, getSocketFactory, getThreadFactory, getTransport, getUpProtocol, getValue, isErgonomics, printStats, providedDownServices, providedUpServices, requiredUpServices, resetStats, setDownProtocol, setErgonomics, setId, setLevel, setProperties, setPropertiesInternal, setProperty, setProtocolStack, setSocketFactory, setUpProtocol, setValue, setValues, start, statsEnabled, upThreadEnabled
protected long min_interval
protected long max_interval
protected int inconsistent_view_threshold
protected boolean merge_fast
protected long merge_fast_delay
public boolean isMergeTaskRunning()
public void init() throws Exception
Protocol
public long getMinInterval()
public void setMinInterval(long i)
public long getMaxInterval()
public void setMaxInterval(long l)
public Vector<Integer> requiredDownServices()
Protocol
requiredDownServices
in class Protocol
public void sendMergeSolicitation()
public void startMergeTask()
public void stopMergeTask()
public void stop()
Protocol
Channel.disconnect()
. Stops work (e.g. by closing multicast socket).
Will be called from top to bottom. This means that at the time of the method invocation the
neighbor protocol below is still working. This method will replace the
STOP, STOP_OK, CLEANUP and CLEANUP_OK events. The ProtocolStack guarantees that
when this method is called all messages in the down queue will have been flushedpublic Object down(Event evt)
Protocol
down_prot.down()
. In case of a GET_ADDRESS event (which tries to
retrieve the stack's address from one of the bottom layers), the layer may need to send
a new response event back up the stack using up_prot.up()
.public Object up(Event evt)
Protocol
down_prot.down()
or c) the event (or another event) is sent up
the stack using up_prot.up()
.Copyright © 2013 JBoss, a division of Red Hat. All Rights Reserved.