public class SendMessageMessage extends I2CPMessageImpl
Modifier and Type | Field and Description |
---|---|
protected Destination |
_destination |
protected long |
_nonce |
protected Payload |
_payload |
protected SessionId |
_sessionId |
static int |
MESSAGE_TYPE |
Constructor and Description |
---|
SendMessageMessage() |
Modifier and Type | Method and 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 |
getNonce() |
Payload |
getPayload() |
SessionId |
getSessionId() |
int |
getType()
Return the unique identifier for this type of message, as specified in the
network specification document under #ClientAccessLayerMessages
|
void |
readMessage(InputStream in,
int length,
int type)
Read the body into the data structures
|
SessionId |
sessionId()
Return the SessionId for this message.
|
void |
setDestination(Destination destination) |
void |
setNonce(long nonce) |
void |
setPayload(Payload payload) |
void |
setSessionId(SessionId id) |
String |
toString() |
void |
writeMessage(OutputStream out)
Write out the full message to the stream, including the 4 byte size and 1
byte type header.
|
readBytes, readMessage, writeBytes
calculateHash, fromBase64, fromByteArray, read, toBase64, toByteArray
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
calculateHash, fromBase64, fromByteArray, toBase64, toByteArray
public static final int MESSAGE_TYPE
protected SessionId _sessionId
protected Destination _destination
protected Payload _payload
protected long _nonce
public SessionId getSessionId()
public SessionId sessionId()
sessionId
in interface I2CPMessage
sessionId
in class I2CPMessageImpl
public void setSessionId(SessionId id)
public Destination getDestination()
public void setDestination(Destination destination)
public Payload getPayload()
public void setPayload(Payload payload)
public long getNonce()
public void setNonce(long nonce)
nonce
- 0 to 0xffffffffprotected void doReadMessage(InputStream in, int size) throws I2CPMessageException, IOException
I2CPMessageImpl
doReadMessage
in class I2CPMessageImpl
in
- InputStreamsize
- payload sizeI2CPMessageException
IOException
public void readMessage(InputStream in, int length, int type) throws I2CPMessageException, IOException
readMessage
in interface I2CPMessage
readMessage
in class I2CPMessageImpl
in
- stream to read fromlength
- number of bytes in the message payloadtype
- type of message (should equal getType())IOException
I2CPMessageException
- if the stream doesn't contain a valid message
that this class can read.protected byte[] doWriteMessage() throws I2CPMessageException, IOException
I2CPMessageImpl
doWriteMessage
in class I2CPMessageImpl
UnsupportedOperationException
- alwaysI2CPMessageException
IOException
public void writeMessage(OutputStream out) throws I2CPMessageException, IOException
writeMessage
in interface I2CPMessage
writeMessage
in class I2CPMessageImpl
out
- OutputStreamIOException
I2CPMessageException
- if the current object doesn't have sufficient data
to write a properly formatted message.public int getType()
I2CPMessage