ostore.tapestry.impl
Class DynamicNotifyMsg

java.lang.Object
  |
  +--ostore.network.NetworkMessage
        |
        +--ostore.util.NonceAckMsg
              |
              +--ostore.util.NonceMsg
                    |
                    +--ostore.tapestry.impl.DynamicNotifyMsg
All Implemented Interfaces:
Cloneable, QueueElementIF, QuickSerializable

public class DynamicNotifyMsg
extends NonceMsg
implements QuickSerializable

DynamicNotifyMsg.java A message that travels between nodes for the express purpose of informing a node about the existence of another. This message class actually embeds in two types of functionality. One is the specialized notify message sent from an integrated node X to the newly inserting node N, informing N of X so that N can use X to fill a hole. Of course X might also be a node being inserted in parallel with N. The other is a more generic notify message between any two tapestry nodes, for the purposes of filling a hole (should not happen if insertion works well) and optimizing nodes' routing tables.


Field Summary
 SecureHash dest
           
static int DMCAST
           
static int FILLHOLE_TYPE
           
static int GENERAL_TYPE
           
protected  boolean internal
           
 GuidAddr[] list
           
 int minlevel
           
static int OPTIMIZE_TYPE
           
static int RESPONSE_TYPE
           
 SecureHash src
           
 int type
           
 
Fields inherited from class ostore.util.NonceAckMsg
stage_id
 
Fields inherited from class ostore.network.NetworkMessage
comp_q, inbound, peer, sender, tries, user_data
 
Constructor Summary
DynamicNotifyMsg(InputBuffer buffer)
           
DynamicNotifyMsg(NodeId peer, SecureHash src, SecureHash dest, int type)
           
DynamicNotifyMsg(NodeId peer, SecureHash src, SecureHash dest, int type, int minlevel)
           
 
Method Summary
 Object clone()
           
 void serialize(OutputBuffer buffer)
          Add the object to the buffer.
 String toString()
           
 
Methods inherited from class ostore.util.NonceMsg
getNonce, setNonce
 
Methods inherited from class ostore.util.NonceAckMsg
addNonceAck, getNonceAcks, getStageId, setStageId
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

src

public SecureHash src

dest

public SecureHash dest

type

public int type

minlevel

public int minlevel

list

public GuidAddr[] list

OPTIMIZE_TYPE

public static final int OPTIMIZE_TYPE

FILLHOLE_TYPE

public static final int FILLHOLE_TYPE

DMCAST

public static final int DMCAST

GENERAL_TYPE

public static final int GENERAL_TYPE

RESPONSE_TYPE

public static final int RESPONSE_TYPE

internal

protected boolean internal
Constructor Detail

DynamicNotifyMsg

public DynamicNotifyMsg(NodeId peer,
                        SecureHash src,
                        SecureHash dest,
                        int type)

DynamicNotifyMsg

public DynamicNotifyMsg(NodeId peer,
                        SecureHash src,
                        SecureHash dest,
                        int type,
                        int minlevel)

DynamicNotifyMsg

public DynamicNotifyMsg(InputBuffer buffer)
                 throws QSException
Method Detail

serialize

public void serialize(OutputBuffer buffer)
Description copied from interface: QuickSerializable
Add the object to the buffer.
Specified by:
serialize in interface QuickSerializable
Overrides:
serialize in class NonceMsg
Following copied from interface: ostore.util.QuickSerializable
Parameters:
buffer - the output buffer to add the object to

clone

public Object clone()
             throws CloneNotSupportedException
Overrides:
clone in class NonceAckMsg

toString

public String toString()
Overrides:
toString in class NonceMsg