Package net.i2p.data.i2cp
Class RequestVariableLeaseSetMessage
- java.lang.Object
-
- net.i2p.data.i2cp.I2CPMessageImpl
-
- net.i2p.data.i2cp.RequestVariableLeaseSetMessage
-
- All Implemented Interfaces:
I2CPMessage
public class RequestVariableLeaseSetMessage extends I2CPMessageImpl
Defines the message a router sends to a client to request that a leaseset be created and signed. The reply is a CreateLeaseSetMessage. This message has an expiration time for each lease, unlike RequestLeaseSetMessage, which has a single expiration time for all leases.- Since:
- 0.9.7
-
-
Field Summary
Fields Modifier and Type Field Description static int
MESSAGE_TYPE
-
Constructor Summary
Constructors Constructor Description RequestVariableLeaseSetMessage()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addEndpoint(Lease lease)
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)Lease
getEndpoint(int endpoint)
int
getEndpoints()
SessionId
getSessionId()
int
getType()
Return the unique identifier for this type of message, as specified in the network specification document under #ClientAccessLayerMessagesstatic boolean
isSupported(String clientVersion)
Does the client support this message?SessionId
sessionId()
Return the SessionId for this message.void
setSessionId(SessionId id)
String
toString()
-
Methods inherited from class net.i2p.data.i2cp.I2CPMessageImpl
readBytes, readMessage, readMessage, writeBytes, writeMessage
-
-
-
-
Field Detail
-
MESSAGE_TYPE
public static final int MESSAGE_TYPE
- See Also:
- Constant Field Values
-
-
Method Detail
-
isSupported
public static boolean isSupported(String clientVersion)
Does the client support this message?- Parameters:
clientVersion
- may be null- Returns:
- version != null and version >= 0.9.7
-
getSessionId
public SessionId getSessionId()
-
sessionId
public SessionId sessionId()
Return the SessionId for this message.- Specified by:
sessionId
in interfaceI2CPMessage
- Overrides:
sessionId
in classI2CPMessageImpl
- Returns:
- null always. Extending classes with a SessionId must override.
- Since:
- 0.9.21
-
setSessionId
public void setSessionId(SessionId id)
-
getEndpoints
public int getEndpoints()
-
getEndpoint
public Lease getEndpoint(int endpoint)
-
addEndpoint
public void addEndpoint(Lease lease)
-
doReadMessage
protected void doReadMessage(InputStream in, int size) throws I2CPMessageException, IOException
Description copied from class:I2CPMessageImpl
Read in the payload part of the message (after the initial 4 byte size and 1 byte type)- Specified by:
doReadMessage
in classI2CPMessageImpl
- Parameters:
in
- InputStreamsize
- payload size- Throws:
I2CPMessageException
IOException
-
doWriteMessage
protected byte[] doWriteMessage() throws I2CPMessageException, IOException
Description copied from class:I2CPMessageImpl
Write out the payload part of the message (not including the 4 byte size and 1 byte type)- Specified by:
doWriteMessage
in classI2CPMessageImpl
- Returns:
- byte array
- Throws:
I2CPMessageException
IOException
-
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- Returns:
- unique identifier for this type of message
-
-