hypercast
Class MessageStoreFSM_DuplicateElimination

java.lang.Object
  |
  +--hypercast.I_MessageStoreFSM
        |
        +--hypercast.MessageStoreFSM_DuplicateElimination

public class MessageStoreFSM_DuplicateElimination
extends I_MessageStoreFSM

This class is a finite state machine which eliminate the duplicate message forwarding. This service applies to messages with multicast, unicast and flood delivery mode.


Field Summary
static byte DELETE
          The timestamp id, delete message
static byte HaveMsgID
          The state of the message,have message ID
static byte Init
          The state of the message,Init
 
Constructor Summary
MessageStoreFSM_DuplicateElimination(hypercast.OL_Socket Socket, hypercast.MessageStore mstore, hypercast.HyperCastConfig config)
          Construct a MessageStoreFSM_DuplicateElimination object with OL_Socket and MessageStore
 
Method Summary
 void changingNeighbor()
          check the change of the neighborhood
 short getFSMID()
          Get the service number of the finite state machine
 void newACMsg(hypercast.OL_Message msg)
          process new ADF_Control message
 void newADMsg(hypercast.OL_Message msg)
          process new ADF_Data message
 void timerExpired(int timerIndex)
          process the timer expired events
 void updateACMsg(hypercast.OL_Message msg)
          process new ADF_Control message
 void updateADMsg(hypercast.OL_Message msg)
          Update new ADF_Data message
 
Methods inherited from class hypercast.I_MessageStoreFSM
receiveControlMessage, receiveDataMessage, timerExpired
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

Init

public static final byte Init
The state of the message,Init

See Also:
Constant Field Values

HaveMsgID

public static final byte HaveMsgID
The state of the message,have message ID

See Also:
Constant Field Values

DELETE

public static final byte DELETE
The timestamp id, delete message

See Also:
Constant Field Values
Constructor Detail

MessageStoreFSM_DuplicateElimination

public MessageStoreFSM_DuplicateElimination(hypercast.OL_Socket Socket,
                                            hypercast.MessageStore mstore,
                                            hypercast.HyperCastConfig config)
Construct a MessageStoreFSM_DuplicateElimination object with OL_Socket and MessageStore

Parameters:
Socket - OL_Socket
mstore - MessageStore returns MessageStoreFSM_DuplicateElimination
Method Detail

changingNeighbor

public void changingNeighbor()
check the change of the neighborhood

Specified by:
changingNeighbor in class I_MessageStoreFSM

getFSMID

public short getFSMID()
Description copied from class: I_MessageStoreFSM
Get the service number of the finite state machine

Specified by:
getFSMID in class I_MessageStoreFSM
Returns:
the finite state machine id

newADMsg

public void newADMsg(hypercast.OL_Message msg)
process new ADF_Data message

Specified by:
newADMsg in class I_MessageStoreFSM
Parameters:
msg - OL_Message

newACMsg

public void newACMsg(hypercast.OL_Message msg)
process new ADF_Control message

Specified by:
newACMsg in class I_MessageStoreFSM
Parameters:
msg - OL_Message

updateADMsg

public void updateADMsg(hypercast.OL_Message msg)
Update new ADF_Data message

Specified by:
updateADMsg in class I_MessageStoreFSM
Parameters:
msg - OL_Message

updateACMsg

public void updateACMsg(hypercast.OL_Message msg)
process new ADF_Control message

Specified by:
updateACMsg in class I_MessageStoreFSM
Parameters:
msg - OL_Message

timerExpired

public void timerExpired(int timerIndex)
process the timer expired events

Specified by:
timerExpired in class I_MessageStoreFSM