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 intLOOKUP_HASHstatic intLOOKUP_HOSTstatic intMESSAGE_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 voiddoReadMessage(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)HashgetHash()StringgetHostname()intgetLookupType()longgetReqID()SessionIdgetSessionId()longgetTimeout()intgetType()Return the unique identifier for this type of message, as specified in the network specification document under #ClientAccessLayerMessagesSessionIdsessionId()Return the SessionId for this message.StringtoString()-
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:
sessionIdin interfaceI2CPMessage- Overrides:
sessionIdin 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:I2CPMessageImplRead in the payload part of the message (after the initial 4 byte size and 1 byte type)- Specified by:
doReadMessagein classI2CPMessageImpl- Parameters:
in- InputStreamsize- payload size- Throws:
I2CPMessageExceptionIOException
-
doWriteMessage
protected byte[] doWriteMessage() throws I2CPMessageException, IOExceptionDescription copied from class:I2CPMessageImplWrite out the payload part of the message (not including the 4 byte size and 1 byte type)- Specified by:
doWriteMessagein classI2CPMessageImpl- Returns:
- byte array
- Throws:
I2CPMessageExceptionIOException
-
getType
public int getType()
Description copied from interface:I2CPMessageReturn 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
-
-