net.i2p.data.i2np
Class TunnelGatewayMessage
java.lang.Object
net.i2p.data.DataStructureImpl
net.i2p.data.i2np.I2NPMessageImpl
net.i2p.data.i2np.TunnelGatewayMessage
- All Implemented Interfaces:
- DataStructure, I2NPMessage
public class TunnelGatewayMessage
- extends I2NPMessageImpl
Defines the message sent between one tunnel's endpoint and another's gateway.
format: { tunnelId, sizeof(i2npMessage.toByteArray()), i2npMessage.toByteArray() }
Method Summary |
protected int |
calculateWrittenLength()
calculate the message body's length (not including the header and footer |
boolean |
equals(java.lang.Object object)
|
I2NPMessage |
getMessage()
|
TunnelId |
getTunnelId()
|
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 |
readMessage(byte[] data,
int offset,
int dataSize,
int type,
I2NPMessageHandler handler)
|
void |
setMessage(I2NPMessage msg)
|
void |
setTunnelId(TunnelId id)
|
java.lang.String |
toString()
|
protected int |
writeMessageBody(byte[] out,
int curIndex)
write the message body to the output array, starting at the given index |
Methods inherited from class net.i2p.data.i2np.I2NPMessageImpl |
createMessage, fromRawByteArray, fromRawByteArray, getMessageExpiration, getMessageSize, getRawMessageSize, getUniqueId, read, readBytes, readBytes, readBytes, registerBuilder, setMessageExpiration, setUniqueId, toByteArray, toByteArray, toRawByteArray, verifyUnwritten, writeBytes, written |
Methods inherited from class java.lang.Object |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
MESSAGE_TYPE
public static final int MESSAGE_TYPE
- See Also:
- Constant Field Values
TunnelGatewayMessage
public TunnelGatewayMessage(I2PAppContext context)
getTunnelId
public TunnelId getTunnelId()
setTunnelId
public void setTunnelId(TunnelId id)
getMessage
public I2NPMessage getMessage()
setMessage
public void setMessage(I2NPMessage msg)
calculateWrittenLength
protected int calculateWrittenLength()
- Description copied from class:
I2NPMessageImpl
- calculate the message body's length (not including the header and footer
- Specified by:
calculateWrittenLength
in class I2NPMessageImpl
writeMessageBody
protected int writeMessageBody(byte[] out,
int curIndex)
throws I2NPMessageException
- write the message body to the output array, starting at the given index
- Specified by:
writeMessageBody
in class I2NPMessageImpl
- Returns:
- the index into the array after the last byte written
- Throws:
I2NPMessageException
readMessage
public void readMessage(byte[] data,
int offset,
int dataSize,
int type)
throws I2NPMessageException,
java.io.IOException
- Description copied from interface:
I2NPMessage
- 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
- Parameters:
data
- data to read fromoffset
- where to start in the data arraydataSize
- how long into the data to readtype
- I2NP message type
- Throws:
I2NPMessageException
- if the stream doesn't contain a valid message
that this class can read.
java.io.IOException
- if there is a problem reading from the stream
readMessage
public void readMessage(byte[] data,
int offset,
int dataSize,
int type,
I2NPMessageHandler handler)
throws I2NPMessageException,
java.io.IOException
- Specified by:
readMessage
in interface I2NPMessage
- Overrides:
readMessage
in class I2NPMessageImpl
- Throws:
I2NPMessageException
java.io.IOException
getType
public int getType()
- Description copied from interface:
I2NPMessage
- Return the unique identifier for this type of I2NP message, as defined in
the I2NP spec
hashCode
public int hashCode()
- Overrides:
hashCode
in class java.lang.Object
equals
public boolean equals(java.lang.Object object)
- Overrides:
equals
in class java.lang.Object
toString
public java.lang.String toString()
- Overrides:
toString
in class java.lang.Object