Package net.i2p.data.i2cp
Class HostReplyMessage
- java.lang.Object
-
- net.i2p.data.i2cp.I2CPMessageImpl
-
- net.i2p.data.i2cp.HostReplyMessage
-
- All Implemented Interfaces:
I2CPMessage
public class HostReplyMessage extends I2CPMessageImpl
Response to HostLookupMessage. Replaces DestReplyMessage.- Since:
- 0.9.11
-
-
Field Summary
Fields Modifier and Type Field Description static int
MESSAGE_TYPE
static int
RESULT_DECRYPTION_FAILURE
static int
RESULT_FAILURE
generic fail, other codes TBDstatic int
RESULT_KEY_REQUIRED
static int
RESULT_SECRET_AND_KEY_REQUIRED
static int
RESULT_SECRET_REQUIRED
static int
RESULT_SUCCESS
-
Constructor Summary
Constructors Constructor Description HostReplyMessage()
HostReplyMessage(SessionId id, int failureCode, long reqID)
A message with a failure code and no Destination.HostReplyMessage(SessionId id, Destination d, long reqID)
A message with RESULT_SUCCESS and a non-null Destination.
-
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)Destination
getDestination()
long
getReqID()
int
getResultCode()
SessionId
getSessionId()
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
-
RESULT_SUCCESS
public static final int RESULT_SUCCESS
- See Also:
- Constant Field Values
-
RESULT_FAILURE
public static final int RESULT_FAILURE
generic fail, other codes TBD- See Also:
- Constant Field Values
-
RESULT_SECRET_REQUIRED
public static final int RESULT_SECRET_REQUIRED
- Since:
- 0.9.41
- See Also:
- Constant Field Values
-
RESULT_KEY_REQUIRED
public static final int RESULT_KEY_REQUIRED
- Since:
- 0.9.41
- See Also:
- Constant Field Values
-
RESULT_SECRET_AND_KEY_REQUIRED
public static final int RESULT_SECRET_AND_KEY_REQUIRED
- Since:
- 0.9.41
- See Also:
- Constant Field Values
-
RESULT_DECRYPTION_FAILURE
public static final int RESULT_DECRYPTION_FAILURE
- Since:
- 0.9.41
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
HostReplyMessage
public HostReplyMessage()
-
HostReplyMessage
public HostReplyMessage(SessionId id, Destination d, long reqID)
A message with RESULT_SUCCESS and a non-null Destination.- Parameters:
d
- non-nullreqID
- 0 to 2**32 - 1
-
HostReplyMessage
public HostReplyMessage(SessionId id, int failureCode, long reqID)
A message with a failure code and no Destination.- Parameters:
failureCode
- 1-255reqID
- from the HostLookup 0 to 2**32 - 1
-
-
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
-
getResultCode
public int getResultCode()
- Returns:
- 0 on success, 1-255 on failure
-
getDestination
public Destination getDestination()
- Returns:
- non-null only if result code is zero
-
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
-
-