public class UnknownI2NPMessage extends FastI2NPMessageImpl
I2NPMessageImpl.Builder
_checksum, _hasChecksum
_context, _expiration, _log, _uniqueId, CHECKSUM_LENGTH, DEFAULT_EXPIRATION_MS, HEADER_LENGTH
MAX_ID_VALUE, MAX_SIZE
Constructor and Description |
---|
UnknownI2NPMessage(I2PAppContext context,
int type) |
Modifier and Type | Method and Description |
---|---|
protected int |
calculateWrittenLength()
calculate the message body's length (not including the header and footer
|
I2NPMessage |
convert()
Attempt to convert this message to a known message class.
|
boolean |
equals(Object object) |
int |
getType()
Note that this returns the "true" type, so that
the IBGW can correctly make drop decisions.
|
int |
hashCode() |
void |
readMessage(byte[] data,
int offset,
int dataSize,
int type)
Read the body into the data structures, after the initial type byte and
the uniqueId / expiration, using the current class's format as defined by
the I2NP specification
|
String |
toString() |
protected int |
writeMessageBody(byte[] out,
int curIndex)
write the message body to the output array, starting at the given index
|
readBytes, readBytes, readBytes, toByteArray, toByteArrayWithSavedChecksum, writeBytes
createMessage, fromRawByteArray, getMessageExpiration, getMessageSize, getRawMessageSize, getUniqueId, readBytes, readMessage, registerBuilder, setMessageExpiration, setUniqueId, toByteArray, toRawByteArray
calculateHash, fromBase64, fromByteArray, read, toBase64
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
calculateHash, fromBase64, fromByteArray, toBase64
public UnknownI2NPMessage(I2PAppContext context, int type)
type
- 0-255public void readMessage(byte[] data, int offset, int dataSize, int type) throws I2NPMessageException
I2NPMessage
data
- data to read fromoffset
- where to start in the data arraydataSize
- how long into the data to readtype
- I2NP message typeIllegalStateException
- if data previously set, to protect saved checksumI2NPMessageException
- if the stream doesn't contain a valid message
that this class can read.protected int calculateWrittenLength()
calculateWrittenLength
in class I2NPMessageImpl
protected int writeMessageBody(byte[] out, int curIndex)
writeMessageBody
in class I2NPMessageImpl
public int getType()
public I2NPMessage convert() throws I2NPMessageException
I2NPMessageException
- if the conversion fails