|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectnet.i2p.data.DataStructureImpl
net.i2p.data.i2cp.I2CPMessageImpl
public abstract class I2CPMessageImpl
Defines the base message implementation.
Constructor Summary | |
---|---|
I2CPMessageImpl()
|
Method Summary | |
---|---|
protected abstract void |
doReadMessage(java.io.InputStream buf,
int size)
Read in the payload part of the message (after the initial 4 byte size and 1 byte type) |
protected abstract byte[] |
doWriteMessage()
Write out the payload part of the message (not including the 4 byte size and 1 byte type) |
void |
readBytes(java.io.InputStream in)
Load up the current object with data from the given stream. |
void |
readMessage(java.io.InputStream in)
Validate the type and size of the message, and then read the message into the data structures. |
void |
readMessage(java.io.InputStream in,
int length,
int type)
Read the body into the data structures |
void |
writeBytes(java.io.OutputStream out)
Write out the data structure to the stream, using the format defined in the I2P data structure specification. |
void |
writeMessage(java.io.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.DataStructureImpl |
---|
calculateHash, fromBase64, fromByteArray, read, toBase64, toByteArray |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface net.i2p.data.i2cp.I2CPMessage |
---|
getType |
Methods inherited from interface net.i2p.data.DataStructure |
---|
calculateHash, fromBase64, fromByteArray, toBase64, toByteArray |
Constructor Detail |
---|
public I2CPMessageImpl()
Method Detail |
---|
public void readMessage(java.io.InputStream in) throws I2CPMessageException, java.io.IOException
readMessage
in interface I2CPMessage
in
- stream to read from
I2CPMessageException
- 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 streampublic void readMessage(java.io.InputStream in, int length, int type) throws I2CPMessageException, java.io.IOException
readMessage
in interface I2CPMessage
in
- stream to read fromlength
- number of bytes in the message payloadtype
- type of message (should equal getType())
I2CPMessageException
- 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 streamprotected abstract void doReadMessage(java.io.InputStream buf, int size) throws I2CPMessageException, java.io.IOException
I2CPMessageException
java.io.IOException
protected abstract byte[] doWriteMessage() throws I2CPMessageException, java.io.IOException
I2CPMessageException
java.io.IOException
public void writeMessage(java.io.OutputStream out) throws I2CPMessageException, java.io.IOException
writeMessage
in interface I2CPMessage
I2CPMessageException
- if the current object doesn't have sufficient data
to write a properly formatted message.
java.io.IOException
- if there is a problem writing to the streampublic void readBytes(java.io.InputStream in) throws DataFormatException, java.io.IOException
DataStructure
readBytes
in interface DataStructure
in
- stream to read from
DataFormatException
- if the data is improperly formatted
java.io.IOException
- if there was a problem reading the streampublic void writeBytes(java.io.OutputStream out) throws DataFormatException, java.io.IOException
DataStructure
writeBytes
in interface DataStructure
out
- stream to write to
DataFormatException
- if the data was incomplete or not yet ready to be written
java.io.IOException
- if there was a problem writing to the stream
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |