and again some more ;)

This commit is contained in:
dev
2008-11-09 09:49:54 +00:00
parent d41b68438d
commit 7bf57870d6
21 changed files with 58 additions and 2 deletions

View File

@ -39,11 +39,13 @@ public class AbuseReason extends DataStructureImpl {
public void setReason(String reason) {
_reason = reason;
}
@Override
public void readBytes(InputStream in) throws DataFormatException, IOException {
_reason = DataHelper.readString(in);
}
@Override
public void writeBytes(OutputStream out) throws DataFormatException, IOException {
if (_reason == null) throw new DataFormatException("Invalid abuse reason");
DataHelper.writeString(out, _reason);

View File

@ -41,10 +41,12 @@ public class AbuseSeverity extends DataStructureImpl {
_severityId = id;
}
@Override
public void readBytes(InputStream in) throws DataFormatException, IOException {
_severityId = (int) DataHelper.readLong(in, 1);
}
@Override
public void writeBytes(OutputStream out) throws DataFormatException, IOException {
if (_severityId < 0) throw new DataFormatException("Invalid abuse severity: " + _severityId);
DataHelper.writeLong(out, 1, _severityId);

View File

@ -73,6 +73,7 @@ public class CreateLeaseSetMessage extends I2CPMessageImpl {
_leaseSet = leaseSet;
}
@Override
protected void doReadMessage(InputStream in, int size) throws I2CPMessageException, IOException {
try {
_sessionId = new SessionId();
@ -88,6 +89,7 @@ public class CreateLeaseSetMessage extends I2CPMessageImpl {
}
}
@Override
protected byte[] doWriteMessage() throws I2CPMessageException, IOException {
if ((_sessionId == null) || (_signingPrivateKey == null) || (_privateKey == null) || (_leaseSet == null))
throw new I2CPMessageException("Unable to write out the message as there is not enough data");
@ -107,6 +109,7 @@ public class CreateLeaseSetMessage extends I2CPMessageImpl {
return os.toByteArray();
}
@Override
public int getType() {
return MESSAGE_TYPE;
}

View File

@ -44,6 +44,7 @@ public class CreateSessionMessage extends I2CPMessageImpl {
_sessionConfig = config;
}
@Override
protected void doReadMessage(InputStream in, int size) throws I2CPMessageException, IOException {
SessionConfig config = new SessionConfig();
try {
@ -54,6 +55,7 @@ public class CreateSessionMessage extends I2CPMessageImpl {
setSessionConfig(config);
}
@Override
protected byte[] doWriteMessage() throws I2CPMessageException, IOException {
if (_sessionConfig == null)
throw new I2CPMessageException("Unable to write out the message as there is not enough data");
@ -66,6 +68,7 @@ public class CreateSessionMessage extends I2CPMessageImpl {
return os.toByteArray();
}
@Override
public int getType() {
return MESSAGE_TYPE;
}

View File

@ -40,6 +40,7 @@ public class DestroySessionMessage extends I2CPMessageImpl {
_sessionId = id;
}
@Override
protected void doReadMessage(InputStream in, int size) throws I2CPMessageException, IOException {
SessionId id = new SessionId();
try {
@ -50,6 +51,7 @@ public class DestroySessionMessage extends I2CPMessageImpl {
setSessionId(id);
}
@Override
protected byte[] doWriteMessage() throws I2CPMessageException, IOException {
if (_sessionId == null)
throw new I2CPMessageException("Unable to write out the message as there is not enough data");

View File

@ -40,6 +40,7 @@ public class DisconnectMessage extends I2CPMessageImpl {
_reason = reason;
}
@Override
protected void doReadMessage(InputStream in, int size) throws I2CPMessageException, IOException {
try {
_reason = DataHelper.readString(in);
@ -48,6 +49,7 @@ public class DisconnectMessage extends I2CPMessageImpl {
}
}
@Override
protected byte[] doWriteMessage() throws I2CPMessageException, IOException {
ByteArrayOutputStream os = new ByteArrayOutputStream(64);
try {
@ -58,6 +60,7 @@ public class DisconnectMessage extends I2CPMessageImpl {
return os.toByteArray();
}
@Override
public int getType() {
return MESSAGE_TYPE;
}

View File

@ -26,15 +26,18 @@ public class GetDateMessage extends I2CPMessageImpl {
super();
}
@Override
protected void doReadMessage(InputStream in, int size) throws I2CPMessageException, IOException {
// noop
}
@Override
protected byte[] doWriteMessage() throws I2CPMessageException, IOException {
byte rv[] = new byte[0];
return rv;
}
@Override
public int getType() {
return MESSAGE_TYPE;
}

View File

@ -34,6 +34,7 @@ public abstract class I2CPMessageImpl extends DataStructureImpl implements I2CPM
*
* @throws IOException
*/
@Override
public void readMessage(InputStream in) throws I2CPMessageException, IOException {
int length = 0;
try {
@ -57,6 +58,7 @@ public abstract class I2CPMessageImpl extends DataStructureImpl implements I2CPM
* @param length number of bytes in the message payload
* @throws IOException
*/
@Override
public void readMessage(InputStream in, int length, int type) throws I2CPMessageException, IOException {
if (type != getType())
throw new I2CPMessageException("Invalid message type (found: " + type + " supported: " + getType()
@ -103,6 +105,7 @@ public abstract class I2CPMessageImpl extends DataStructureImpl implements I2CPM
*
* @throws IOException
*/
@Override
public void writeMessage(OutputStream out) throws I2CPMessageException, IOException {
byte[] data = doWriteMessage();
try {
@ -114,6 +117,7 @@ public abstract class I2CPMessageImpl extends DataStructureImpl implements I2CPM
out.write(data);
}
@Override
public void readBytes(InputStream in) throws DataFormatException, IOException {
try {
readMessage(in);
@ -122,6 +126,7 @@ public abstract class I2CPMessageImpl extends DataStructureImpl implements I2CPM
}
}
@Override
public void writeBytes(OutputStream out) throws DataFormatException, IOException {
try {
writeMessage(out);

View File

@ -144,6 +144,7 @@ public class I2CPMessageReader {
_stream = null;
}
@Override
public void run() {
while (_stayAlive) {
while (_doRun) {

View File

@ -43,10 +43,12 @@ public class MessageId extends DataStructureImpl {
_messageId = id;
}
@Override
public void readBytes(InputStream in) throws DataFormatException, IOException {
_messageId = DataHelper.readLong(in, 4);
}
@Override
public void writeBytes(OutputStream out) throws DataFormatException, IOException {
if (_messageId < 0) throw new DataFormatException("Invalid message ID: " + _messageId);
DataHelper.writeLong(out, 4, _messageId);

View File

@ -61,6 +61,7 @@ public class MessagePayloadMessage extends I2CPMessageImpl {
_payload = payload;
}
@Override
protected void doReadMessage(InputStream in, int size) throws I2CPMessageException, IOException {
try {
_sessionId = DataHelper.readLong(in, 2);
@ -72,6 +73,7 @@ public class MessagePayloadMessage extends I2CPMessageImpl {
}
}
@Override
protected byte[] doWriteMessage() throws I2CPMessageException, IOException {
throw new RuntimeException("go away, we dont want any");
}
@ -104,6 +106,7 @@ public class MessagePayloadMessage extends I2CPMessageImpl {
}
}
@Override
public int getType() {
return MESSAGE_TYPE;
}

View File

@ -106,6 +106,7 @@ public class MessageStatusMessage extends I2CPMessageImpl {
}
}
@Override
protected void doReadMessage(InputStream in, int size) throws I2CPMessageException, IOException {
try {
_sessionId = DataHelper.readLong(in, 2);
@ -144,10 +145,12 @@ public class MessageStatusMessage extends I2CPMessageImpl {
}
}
@Override
protected byte[] doWriteMessage() throws I2CPMessageException, IOException {
throw new UnsupportedOperationException("This shouldn't be called... use writeMessage(out)");
}
@Override
public int getType() {
return MESSAGE_TYPE;
}

View File

@ -50,6 +50,7 @@ public class ReceiveMessageBeginMessage extends I2CPMessageImpl {
_messageId = id;
}
@Override
protected void doReadMessage(InputStream in, int size) throws I2CPMessageException, IOException {
try {
_sessionId = DataHelper.readLong(in, 2);
@ -59,6 +60,7 @@ public class ReceiveMessageBeginMessage extends I2CPMessageImpl {
}
}
@Override
protected byte[] doWriteMessage() throws I2CPMessageException, IOException {
throw new UnsupportedOperationException("This shouldn't be called... use writeMessage(out)");
}
@ -83,7 +85,7 @@ public class ReceiveMessageBeginMessage extends I2CPMessageImpl {
}
}
@Override
public int getType() {
return MESSAGE_TYPE;
}

View File

@ -49,6 +49,7 @@ public class ReceiveMessageEndMessage extends I2CPMessageImpl {
_messageId = id;
}
@Override
protected void doReadMessage(InputStream in, int size) throws I2CPMessageException, IOException {
try {
_sessionId = DataHelper.readLong(in, 2);
@ -58,6 +59,7 @@ public class ReceiveMessageEndMessage extends I2CPMessageImpl {
}
}
@Override
protected byte[] doWriteMessage() throws I2CPMessageException, IOException {
if ((_sessionId < 0) || (_messageId < 0))
throw new I2CPMessageException("Unable to write out the message as there is not enough data");
@ -67,6 +69,7 @@ public class ReceiveMessageEndMessage extends I2CPMessageImpl {
return rv;
}
@Override
public int getType() {
return MESSAGE_TYPE;
}

View File

@ -70,6 +70,7 @@ public class ReportAbuseMessage extends I2CPMessageImpl {
_messageId = id;
}
@Override
protected void doReadMessage(InputStream in, int size) throws I2CPMessageException, IOException {
try {
_sessionId = new SessionId();
@ -85,6 +86,7 @@ public class ReportAbuseMessage extends I2CPMessageImpl {
}
}
@Override
protected byte[] doWriteMessage() throws I2CPMessageException, IOException {
if ((_sessionId == null) || (_severity == null) || (_reason == null))
throw new I2CPMessageException("Not enough information to construct the message");
@ -104,6 +106,7 @@ public class ReportAbuseMessage extends I2CPMessageImpl {
return os.toByteArray();
}
@Override
public int getType() {
return MESSAGE_TYPE;
}

View File

@ -81,6 +81,7 @@ public class RequestLeaseSetMessage extends I2CPMessageImpl {
_end = end;
}
@Override
protected void doReadMessage(InputStream in, int size) throws I2CPMessageException, IOException {
try {
_sessionId = new SessionId();
@ -100,6 +101,7 @@ public class RequestLeaseSetMessage extends I2CPMessageImpl {
}
}
@Override
protected byte[] doWriteMessage() throws I2CPMessageException, IOException {
if ((_sessionId == null) || (_endpoints == null))
throw new I2CPMessageException("Unable to write out the message as there is not enough data");
@ -120,6 +122,7 @@ public class RequestLeaseSetMessage extends I2CPMessageImpl {
return os.toByteArray();
}
@Override
public int getType() {
return MESSAGE_TYPE;
}

View File

@ -72,6 +72,7 @@ public class SendMessageMessage extends I2CPMessageImpl {
_nonce = nonce;
}
@Override
protected void doReadMessage(InputStream in, int size) throws I2CPMessageException, IOException {
if (true) throw new IllegalStateException("wtf, do not run me");
}
@ -101,6 +102,7 @@ public class SendMessageMessage extends I2CPMessageImpl {
}
}
@Override
protected byte[] doWriteMessage() throws I2CPMessageException, IOException {
throw new RuntimeException("wtf, dont run me");
}
@ -129,6 +131,7 @@ public class SendMessageMessage extends I2CPMessageImpl {
}
}
@Override
public int getType() {
return MESSAGE_TYPE;
}

View File

@ -185,6 +185,7 @@ public class SessionConfig extends DataStructureImpl {
return out.toByteArray();
}
@Override
public void readBytes(InputStream rawConfig) throws DataFormatException, IOException {
_destination = new Destination();
_destination.readBytes(rawConfig);
@ -194,6 +195,7 @@ public class SessionConfig extends DataStructureImpl {
_signature.readBytes(rawConfig);
}
@Override
public void writeBytes(OutputStream out) throws DataFormatException, IOException {
if ((_destination == null) || (_options == null) || (_signature == null) || (_creationDate == null))
throw new DataFormatException("Not enough data to create the session config");

View File

@ -40,10 +40,12 @@ public class SessionId extends DataStructureImpl {
_sessionId = id;
}
@Override
public void readBytes(InputStream in) throws DataFormatException, IOException {
_sessionId = (int) DataHelper.readLong(in, 2);
}
@Override
public void writeBytes(OutputStream out) throws DataFormatException, IOException {
if (_sessionId < 0) throw new DataFormatException("Invalid session ID: " + _sessionId);
DataHelper.writeLong(out, 2, _sessionId);

View File

@ -55,6 +55,7 @@ public class SessionStatusMessage extends I2CPMessageImpl {
_status = status;
}
@Override
protected void doReadMessage(InputStream in, int size) throws I2CPMessageException, IOException {
try {
_sessionId = new SessionId();
@ -65,6 +66,7 @@ public class SessionStatusMessage extends I2CPMessageImpl {
}
}
@Override
protected byte[] doWriteMessage() throws I2CPMessageException, IOException {
if (_sessionId == null)
throw new I2CPMessageException("Unable to write out the message as there is not enough data");
@ -78,6 +80,7 @@ public class SessionStatusMessage extends I2CPMessageImpl {
return os.toByteArray();
}
@Override
public int getType() {
return MESSAGE_TYPE;
}

View File

@ -41,6 +41,7 @@ public class SetDateMessage extends I2CPMessageImpl {
_date = date;
}
@Override
protected void doReadMessage(InputStream in, int size) throws I2CPMessageException, IOException {
try {
_date = DataHelper.readDate(in);
@ -49,6 +50,7 @@ public class SetDateMessage extends I2CPMessageImpl {
}
}
@Override
protected byte[] doWriteMessage() throws I2CPMessageException, IOException {
if (_date == null)
throw new I2CPMessageException("Unable to write out the message as there is not enough data");
@ -61,6 +63,7 @@ public class SetDateMessage extends I2CPMessageImpl {
return os.toByteArray();
}
@Override
public int getType() {
return MESSAGE_TYPE;
}