com.limegroup.gnutella.messages.vendor
Class LimeACKVendorMessage

java.lang.Object
  extended bycom.limegroup.gnutella.messages.Message
      extended bycom.limegroup.gnutella.messages.vendor.VendorMessage
          extended bycom.limegroup.gnutella.messages.vendor.LimeACKVendorMessage
All Implemented Interfaces:
java.lang.Comparable, java.io.Serializable

public final class LimeACKVendorMessage
extends VendorMessage

In Vendor Message parlance, the "message type" of this VMP is "LIME/11". This message acknowledges (ACKS) the guid contained in the message (i.e. A sends B a message with GUID g, B can acknowledge this message by sending a LimeACKVendorMessage to A with GUID g). It also contains the amount of results the client wants.

See Also:
Serialized Form

Field Summary
static int VERSION
           
 
Fields inherited from class com.limegroup.gnutella.messages.vendor.VendorMessage
F_BEAR_VENDOR_ID, F_GTKG_VENDOR_ID, F_HOPS_FLOW, F_LIME_ACK, F_LIME_VENDOR_ID, F_MESSAGES_SUPPORTED, F_NULL_VENDOR_ID, F_PUSH_PROXY_ACK, F_PUSH_PROXY_REQ, F_REPLY_NUMBER, F_TCP_CONNECT_BACK, F_UDP_CONNECT_BACK
 
Fields inherited from class com.limegroup.gnutella.messages.Message
F_PING, F_PING_REPLY, F_PUSH, F_QUERY, F_QUERY_REPLY, F_ROUTE_TABLE_UPDATE, F_VENDOR_MESSAGE, F_VENDOR_MESSAGE_STABLE, N_MULTICAST, N_TCP, N_UDP, N_UNKNOWN, RECORD_STATS, SOFT_MAX
 
Constructor Summary
LimeACKVendorMessage(GUID replyGUID, int numResults)
           
 
Method Summary
 boolean equals(java.lang.Object other)
           
 int getNumResults()
           
 void recordDrop()
          Overridden purely for stats handling.
protected  void writePayload(java.io.OutputStream out)
          Overridden purely for stats handling.
 
Methods inherited from class com.limegroup.gnutella.messages.vendor.VendorMessage
deriveVendorMessage, getPayload, getVersion, hashCode, stripExtendedPayload
 
Methods inherited from class com.limegroup.gnutella.messages.Message
compareTo, getCreationTime, getFunc, getGUID, getHops, getLength, getNetwork, getPriority, getTotalLength, getTTL, hop, isMulticast, isTCP, isUDP, isUnknownNetwork, makeGuid, read, read, read, read, read, readNullTerminatedBytes, repOk, setGUID, setHops, setPriority, setTTL, toString, updateLength, write, writeGemExtension, writeGemExtension, writeGemExtensions
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

VERSION

public static final int VERSION
See Also:
Constant Field Values
Constructor Detail

LimeACKVendorMessage

public LimeACKVendorMessage(GUID replyGUID,
                            int numResults)
                     throws BadPacketException
Parameters:
numResults - The number of results (0-255 inclusive) that you want for this query. If you want more than 255 just send 255.
replyGUID - The guid of the original query/reply that you want to send reply info for.
Method Detail

getNumResults

public int getNumResults()
Returns:
an int (0-255) representing the amount of results that a host wants for a given query (as specified by the guid of this message).

equals

public boolean equals(java.lang.Object other)
Overrides:
equals in class VendorMessage
Returns:
true if the two VMPs have identical signatures - no more, no less. Does not take version into account, but if different versions have different payloads, they'll differ.

writePayload

protected void writePayload(java.io.OutputStream out)
                     throws java.io.IOException
Overridden purely for stats handling.

Overrides:
writePayload in class VendorMessage
Throws:
java.io.IOException

recordDrop

public void recordDrop()
Overridden purely for stats handling.

Overrides:
recordDrop in class VendorMessage