ostore.oil.patchwork
Class PatchworkProbeMsg

java.lang.Object
  |
  +--ostore.network.NetworkMessage
        |
        +--ostore.oil.patchwork.PatchworkProbeMsg
All Implemented Interfaces:
Cloneable, QueueElementIF, QuickSerializable

public class PatchworkProbeMsg
extends NetworkMessage

This is a probing message sent out by the PatchworkStage in order to measure statistics of other nodes.

Version:
$Id: PatchworkProbeMsg.java,v 1.1 2001/12/04 19:44:26 strib Exp $
Author:
Jeremy Stribling

Field Summary
static int BANDWIDTH_1
           
static int BANDWIDTH_2
           
 int fillerSize
           
static int LATENCY
           
static int LOSS
           
static int MINIMUM_SIZE
           
 boolean response
           
 int type
           
 
Fields inherited from class ostore.network.NetworkMessage
inbound, peer
 
Constructor Summary
PatchworkProbeMsg(byte[] data, int[] offset)
           
PatchworkProbeMsg(NodeId peer, int totalSize, int type, boolean response)
          Constucts a probing message of a certain type, with a given approximate size.
 
Method Summary
 Object clone()
           
 void to_bytes(byte[] data, int[] offset)
          Store the object in its "on the wire" form in the byte array data, starting at index offset [0], and increment offset [0] by the number of bytes written; if data == null, increment offset [0] by the number of bytes that would have been written otherwise.
 String toString()
           
 int type_code()
          Returns the unique integer associated with this class in the TypeTable.
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

LATENCY

public static final int LATENCY

BANDWIDTH_1

public static final int BANDWIDTH_1

BANDWIDTH_2

public static final int BANDWIDTH_2

LOSS

public static final int LOSS

MINIMUM_SIZE

public static final int MINIMUM_SIZE

type

public int type

fillerSize

public int fillerSize

response

public boolean response
Constructor Detail

PatchworkProbeMsg

public PatchworkProbeMsg(NodeId peer,
                         int totalSize,
                         int type,
                         boolean response)
Constucts a probing message of a certain type, with a given approximate size. The size needs to be at least MINIMUM_SIZE, and if difference between it and MINIMUM_SIZE is not divisible by 4 it will be rounded down to a number that is.
Parameters:
peer - the node to probe
totalSize - how big the message should be
type - the type of the message
response - whether this is a response

PatchworkProbeMsg

public PatchworkProbeMsg(byte[] data,
                         int[] offset)
Method Detail

to_bytes

public void to_bytes(byte[] data,
                     int[] offset)
Description copied from interface: QuickSerializable
Store the object in its "on the wire" form in the byte array data, starting at index offset [0], and increment offset [0] by the number of bytes written; if data == null, increment offset [0] by the number of bytes that would have been written otherwise.
Overrides:
to_bytes in class NetworkMessage
Following copied from interface: ostore.util.QuickSerializable
Parameters:
data - The byte array to store into, or null.
offset - A single element array whose first element is the index in data to begin writing at on function entry, and which on function exit has been incremented by the number of bytes written.

type_code

public int type_code()
Description copied from interface: QuickSerializable
Returns the unique integer associated with this class in the TypeTable.
Overrides:
type_code in class NetworkMessage
Following copied from interface: ostore.util.QuickSerializable
Returns:
an integer unique to this class

clone

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

toString

public String toString()
Overrides:
toString in class NetworkMessage