Serializable, DataStructure, I2NPMessagepublic class DatabaseStoreMessage extends FastI2NPMessageImpl
I2NPMessageImpl.Builder| Modifier and Type | Field | Description |
|---|---|---|
static int |
MESSAGE_TYPE |
_checksum, _hasChecksumMAX_ID_VALUE, MAX_SIZE_context, _expiration, _log, _uniqueId, CHECKSUM_LENGTH, DEFAULT_EXPIRATION_MS, HEADER_LENGTH| Constructor | Description |
|---|---|
DatabaseStoreMessage(I2PAppContext context) |
| Modifier and Type | Method | Description |
|---|---|---|
protected int |
calculateWrittenLength() |
calculate the message body's length (not including the header and footer)
|
boolean |
equals(Object object) |
|
DatabaseEntry |
getEntry() |
Defines the entry in the network database being stored
|
Hash |
getKey() |
Defines the key in the network database being stored
|
Hash |
getReplyGateway() |
|
long |
getReplyToken() |
If a reply is desired, this token specifies the message ID that should
be used for a DeliveryStatusMessage to be sent to the reply tunnel on the
reply gateway.
|
TunnelId |
getReplyTunnel() |
|
int |
getType() |
Return the unique identifier for this type of I2NP message, as defined in
the I2NP spec
|
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
|
void |
setEntry(DatabaseEntry entry) |
This also sets the key
|
void |
setReplyGateway(Hash peer) |
|
void |
setReplyToken(long token) |
Update the reply token.
|
void |
setReplyTunnel(TunnelId id) |
|
String |
toString() |
|
protected int |
writeMessageBody(byte[] out,
int curIndex) |
write the message body to the output array, starting at the given index
|
calculateHash, fromBase64, fromByteArray, toBase64calculateHash, fromBase64, fromByteArray, read, toBase64readBytes, readBytes, readBytes, toByteArray, toByteArrayWithSavedChecksum, writeBytescreateMessage, fromRawByteArray, getMessageExpiration, getMessageSize, getRawMessageSize, getUniqueId, readBytes, readMessage, registerBuilder, setMessageExpiration, setUniqueId, toByteArray, toRawByteArraypublic static final int MESSAGE_TYPE
public DatabaseStoreMessage(I2PAppContext context)
public Hash getKey()
public DatabaseEntry getEntry()
public void setEntry(DatabaseEntry entry)
IllegalStateException - if data previously set, to protect saved checksumpublic long getReplyToken()
public void setReplyToken(long token)
throws IllegalArgumentException
IllegalArgumentException - if the token is out of range (min=0, max=I2NPMessage.MAX_ID_VALUE)public TunnelId getReplyTunnel()
public void setReplyTunnel(TunnelId id)
public Hash getReplyGateway()
public void setReplyGateway(Hash peer)
public void readMessage(byte[] data,
int offset,
int dataSize,
int type)
throws I2NPMessageException
I2NPMessagedata - data to read fromoffset - where to start in the data arraydataSize - how long into the data to readtype - I2NP message typeI2NPMessageException - if the stream doesn't contain a valid message
that this class can read.protected int calculateWrittenLength()
calculateWrittenLength in class I2NPMessageImplIllegalStateExceptionprotected int writeMessageBody(byte[] out,
int curIndex)
throws I2NPMessageException
writeMessageBody in class I2NPMessageImplI2NPMessageExceptionpublic int getType()
I2NPMessage