public class DatabaseStoreMessage extends FastI2NPMessageImpl
I2NPMessageImpl.Builder| Modifier and Type | Field and Description |
|---|---|
static int | MESSAGE_TYPEMESSAGE_TYPE. |
_checksum, _hasChecksum_context, _expiration, _log, CHECKSUM_LENGTH, DEFAULT_EXPIRATION_MS, HEADER_LENGTHMAX_ID_VALUE, MAX_SIZE| Constructor and Description |
|---|
DatabaseStoreMessage(I2PAppContext context)Creates a new DatabaseStoreMessage. |
| Modifier and Type | Method and Description |
|---|---|
protected int | calculateWrittenLength()Calculate the message body's length (not including the header and footer) |
boolean | equals(Object object)equals. |
DatabaseEntry | getEntry()Defines the entry in the network database being stored. |
Hash | getKey()Defines the key in the network database being stored. |
boolean | getReceivedAsReply()If true, we received this by searching for it. |
Hash | getReplyGateway()Get the reply gateway. |
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()Get the reply tunnel. |
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)readMessage. |
void | setEntry(DatabaseEntry entry)This also sets the key |
void | setReceivedAsReply()set to true |
void | setReplyGateway(Hash peer)Set the reply gateway. |
void | setReplyToken(long token)Update the reply token. |
void | setReplyTunnel(TunnelId id)Set the reply tunnel. |
String | toString()toString. |
protected int | writeMessageBody(byte[] out,
int curIndex)write the message body to the output array, starting at the given index |
readBytes, toByteArray, toByteArrayWithSavedChecksumcreateMessage, fromRawByteArray, fromRawByteArrayNTCP2, getMessageExpiration, getMessageSize, getRawMessageSize, getUniqueId, getUniqueId, readBytes, readMessage, setMessageExpiration, setUniqueId, toByteArray, toByteArray, toRawByteArray, toRawByteArrayNTCP2public static final int MESSAGE_TYPE
public DatabaseStoreMessage(I2PAppContext context)
context - the I2P app contextprotected int calculateWrittenLength()
calculateWrittenLength in class I2NPMessageImplIllegalStateException - if the entry is not setpublic DatabaseEntry getEntry()
public Hash getKey()
public boolean getReceivedAsReply()
public Hash getReplyGateway()
public long getReplyToken()
public TunnelId getReplyTunnel()
public int getType()
I2NPMessagepublic void readMessage(byte[] data,
int offset,
int dataSize,
int type)
throws I2NPMessageExceptiondata - 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.public void setEntry(DatabaseEntry entry)
entry - the entry to storeIllegalStateException - if data previously set, to protect saved checksumpublic void setReceivedAsReply()
public void setReplyGateway(Hash peer)
peer - the reply gatewaypublic void setReplyToken(long token)
throws IllegalArgumentExceptionIllegalArgumentException - if the token is out of range (min=0, max=I2NPMessage.MAX_ID_VALUE)public void setReplyTunnel(TunnelId id)
id - the reply tunnelprotected int writeMessageBody(byte[] out,
int curIndex)
throws I2NPMessageExceptionwriteMessageBody in class I2NPMessageImplI2NPMessageException