Package net.i2p.data.i2cp
Class HostLookupMessage
- java.lang.Object
-
- net.i2p.data.i2cp.I2CPMessageImpl
-
- net.i2p.data.i2cp.HostLookupMessage
-
- All Implemented Interfaces:
I2CPMessage
public class HostLookupMessage extends I2CPMessageImpl
Request the router look up the dest for a hash or a host. Replaces DestLookupMessage.- Since:
- 0.9.11; do not send to routers older than 0.9.11.
-
-
Field Summary
Fields Modifier and Type Field Description static int
LOOKUP_HASH
static int
LOOKUP_HOST
static int
MESSAGE_TYPE
-
Constructor Summary
Constructors Constructor Description HostLookupMessage()
HostLookupMessage(SessionId id, String host, long reqID, long timeout)
HostLookupMessage(SessionId id, Hash h, long reqID, long timeout)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
doReadMessage(InputStream in, int size)
Read in the payload part of the message (after the initial 4 byte size and 1 byte type)protected byte[]
doWriteMessage()
Write out the payload part of the message (not including the 4 byte size and 1 byte type)Hash
getHash()
String
getHostname()
int
getLookupType()
long
getReqID()
SessionId
getSessionId()
long
getTimeout()
int
getType()
Return the unique identifier for this type of message, as specified in the network specification document under #ClientAccessLayerMessagesSessionId
sessionId()
Return the SessionId for this message.String
toString()
-
Methods inherited from class net.i2p.data.i2cp.I2CPMessageImpl
readBytes, readMessage, readMessage, writeBytes, writeMessage
-
-
-
-
Field Detail
-
MESSAGE_TYPE
public static final int MESSAGE_TYPE
- See Also:
- Constant Field Values
-
LOOKUP_HASH
public static final int LOOKUP_HASH
- See Also:
- Constant Field Values
-
LOOKUP_HOST
public static final int LOOKUP_HOST
- See Also:
- Constant Field Values
-
-
Method Detail
-
getSessionId
public SessionId getSessionId()
-
sessionId
public SessionId sessionId()
Return the SessionId for this message.- Specified by:
sessionId
in interfaceI2CPMessage
- Overrides:
sessionId
in classI2CPMessageImpl
- Returns:
- null always. Extending classes with a SessionId must override.
- Since:
- 0.9.21
-
getReqID
public long getReqID()
- Returns:
- 0 to 2**32 - 1
-
getTimeout
public long getTimeout()
- Returns:
- ms 1 to 2**32 - 1
-
getLookupType
public int getLookupType()
- Returns:
- 0 (hash) or 1 (host)
-
getHash
public Hash getHash()
- Returns:
- only valid if lookup type == 0
-
getHostname
public String getHostname()
- Returns:
- only valid if lookup type == 1
-
doReadMessage
protected void doReadMessage(InputStream in, int size) throws I2CPMessageException, IOException
Description copied from class:I2CPMessageImpl
Read in the payload part of the message (after the initial 4 byte size and 1 byte type)- Specified by:
doReadMessage
in classI2CPMessageImpl
- Parameters:
in
- InputStreamsize
- payload size- Throws:
I2CPMessageException
IOException
-
doWriteMessage
protected byte[] doWriteMessage() throws I2CPMessageException, IOException
Description copied from class:I2CPMessageImpl
Write out the payload part of the message (not including the 4 byte size and 1 byte type)- Specified by:
doWriteMessage
in classI2CPMessageImpl
- Returns:
- byte array
- Throws:
I2CPMessageException
IOException
-
getType
public int getType()
Description copied from interface:I2CPMessage
Return the unique identifier for this type of message, as specified in the network specification document under #ClientAccessLayerMessages- Returns:
- unique identifier for this type of message
-
-