Package net.i2p.data.i2cp
Class SendMessageExpiresMessage
- java.lang.Object
-
- net.i2p.data.i2cp.I2CPMessageImpl
-
- net.i2p.data.i2cp.SendMessageMessage
-
- net.i2p.data.i2cp.SendMessageExpiresMessage
-
- All Implemented Interfaces:
I2CPMessage
public class SendMessageExpiresMessage extends SendMessageMessage
Same as SendMessageMessage, but with an expiration to be passed to the router As of 0.8.4, retrofitted to use DateAndFlags. Backwards compatible.- Author:
- zzz
-
-
Field Summary
Fields Modifier and Type Field Description static int
MESSAGE_TYPE
-
Fields inherited from class net.i2p.data.i2cp.SendMessageMessage
_destination, _nonce, _payload, _sessionId
-
-
Constructor Summary
Constructors Constructor Description SendMessageExpiresMessage()
SendMessageExpiresMessage(DateAndFlags options)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Date
getExpiration()
The Date object is created here, it is not cached.long
getExpirationTime()
Use this instead of getExpiration().getTime()int
getFlags()
int
getType()
Return the unique identifier for this type of message, as specified in the network specification document under #ClientAccessLayerMessagesvoid
readMessage(InputStream in, int length, int type)
Read the body into the data structuresvoid
setExpiration(long d)
void
setExpiration(Date d)
void
setFlags(int f)
String
toString()
void
writeMessage(OutputStream out)
Write out the full message to the stream, including the 4 byte size and 1 byte type header.-
Methods inherited from class net.i2p.data.i2cp.SendMessageMessage
doReadMessage, doWriteMessage, getDestination, getNonce, getPayload, getSessionId, sessionId, setDestination, setNonce, setPayload, setSessionId
-
Methods inherited from class net.i2p.data.i2cp.I2CPMessageImpl
readBytes, readMessage, writeBytes
-
-
-
-
Field Detail
-
MESSAGE_TYPE
public static final int MESSAGE_TYPE
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
SendMessageExpiresMessage
public SendMessageExpiresMessage()
-
SendMessageExpiresMessage
public SendMessageExpiresMessage(DateAndFlags options)
- Since:
- 0.9.2
-
-
Method Detail
-
getExpiration
public Date getExpiration()
The Date object is created here, it is not cached. Use getExpirationTime() if you only need the long value.
-
getExpirationTime
public long getExpirationTime()
Use this instead of getExpiration().getTime()- Since:
- 0.8.4
-
setExpiration
public void setExpiration(Date d)
-
setExpiration
public void setExpiration(long d)
- Since:
- 0.8.4
-
getFlags
public int getFlags()
- Since:
- 0.8.4
-
setFlags
public void setFlags(int f)
- Since:
- 0.8.4
-
readMessage
public void readMessage(InputStream in, int length, int type) throws I2CPMessageException, IOException
Read the body into the data structures- Specified by:
readMessage
in interfaceI2CPMessage
- Overrides:
readMessage
in classSendMessageMessage
- Parameters:
in
- stream to read fromlength
- number of bytes in the message payloadtype
- type of message (should equal getType())- Throws:
IOException
I2CPMessageException
- if the stream doesn't contain a valid message that this class can read.
-
writeMessage
public void writeMessage(OutputStream out) throws I2CPMessageException, IOException
Write out the full message to the stream, including the 4 byte size and 1 byte type header. Override the parent so we can be more mem efficient- Specified by:
writeMessage
in interfaceI2CPMessage
- Overrides:
writeMessage
in classSendMessageMessage
- Parameters:
out
- OutputStream- Throws:
IOException
I2CPMessageException
- if the current object doesn't have sufficient data to write a properly formatted message.
-
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- Specified by:
getType
in interfaceI2CPMessage
- Overrides:
getType
in classSendMessageMessage
- Returns:
- unique identifier for this type of message
-
toString
public String toString()
- Overrides:
toString
in classSendMessageMessage
-
-