diff --git a/briar-core/src/net/sf/briar/db/JdbcDatabase.java b/briar-core/src/net/sf/briar/db/JdbcDatabase.java index 81c1f63375e3cfca9540fcd38f749792a3359ed8..d5a4f5544df7fc26e0073d1462107b2d1122fae4 100644 --- a/briar-core/src/net/sf/briar/db/JdbcDatabase.java +++ b/briar-core/src/net/sf/briar/db/JdbcDatabase.java @@ -1,5 +1,6 @@ package net.sf.briar.db; +import static java.sql.Types.BINARY; import static java.util.logging.Level.INFO; import static java.util.logging.Level.WARNING; import static net.sf.briar.db.DatabaseConstants.EXPIRY_MODULUS; @@ -12,7 +13,6 @@ import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; -import java.sql.Types; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; @@ -514,10 +514,10 @@ abstract class JdbcDatabase implements Database<Connection> { + " VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ZERO())"; ps = txn.prepareStatement(sql); ps.setBytes(1, m.getId().getBytes()); - if(m.getParent() == null) ps.setNull(2, Types.BINARY); + if(m.getParent() == null) ps.setNull(2, BINARY); else ps.setBytes(2, m.getParent().getBytes()); ps.setBytes(3, m.getGroup().getBytes()); - if(m.getAuthor() == null) ps.setNull(4, Types.BINARY); + if(m.getAuthor() == null) ps.setNull(4, BINARY); else ps.setBytes(4, m.getAuthor().getBytes()); ps.setString(5, m.getSubject()); ps.setLong(6, m.getTimestamp()); @@ -607,7 +607,7 @@ abstract class JdbcDatabase implements Database<Connection> { + " VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)"; ps = txn.prepareStatement(sql); ps.setBytes(1, m.getId().getBytes()); - if(m.getParent() == null) ps.setNull(2, Types.BINARY); + if(m.getParent() == null) ps.setNull(2, BINARY); else ps.setBytes(2, m.getParent().getBytes()); ps.setString(3, m.getSubject()); ps.setLong(4, m.getTimestamp()); @@ -795,7 +795,7 @@ abstract class JdbcDatabase implements Database<Connection> { ps = txn.prepareStatement(sql); ps.setInt(1, c.getInt()); ps.setBytes(2, g.getBytes()); - if(nextId == null) ps.setNull(3, Types.BINARY); // At the tail + if(nextId == null) ps.setNull(3, BINARY); // At the tail else ps.setBytes(3, nextId); // In the middle ps.setLong(4, deleted); affected = ps.executeUpdate(); @@ -2086,7 +2086,7 @@ abstract class JdbcDatabase implements Database<Connection> { sql = "UPDATE visibilities SET nextId = ?, deleted = ?" + " WHERE contactId = ? AND nextId = ?"; ps1 = txn.prepareStatement(sql); - if(nextId == null) ps1.setNull(1, Types.BINARY); // At the tail + if(nextId == null) ps1.setNull(1, BINARY); // At the tail else ps1.setBytes(1, nextId); // At the head or in the middle ps1.setLong(2, now); ps1.setInt(3, contactId); @@ -2182,7 +2182,7 @@ abstract class JdbcDatabase implements Database<Connection> { sql = "UPDATE visibilities SET nextId = ?, deleted = ?" + " WHERE contactId = ? AND nextId = ?"; ps = txn.prepareStatement(sql); - if(nextId == null) ps.setNull(1, Types.BINARY); // At the tail + if(nextId == null) ps.setNull(1, BINARY); // At the tail else ps.setBytes(1, nextId); // At the head or in the middle ps.setLong(2, clock.currentTimeMillis()); ps.setInt(3, c.getInt()); diff --git a/briar-core/src/net/sf/briar/protocol/AckReader.java b/briar-core/src/net/sf/briar/protocol/AckReader.java index 397a0b66e49b1273cce502b6ff133c64dbb3e515..b9e55fc5e8a06d58b310448523998762ecb4e023 100644 --- a/briar-core/src/net/sf/briar/protocol/AckReader.java +++ b/briar-core/src/net/sf/briar/protocol/AckReader.java @@ -1,6 +1,7 @@ package net.sf.briar.protocol; import static net.sf.briar.api.protocol.ProtocolConstants.MAX_PACKET_LENGTH; +import static net.sf.briar.api.protocol.Types.ACK; import java.io.IOException; import java.util.ArrayList; @@ -12,12 +13,11 @@ import net.sf.briar.api.FormatException; import net.sf.briar.api.protocol.Ack; import net.sf.briar.api.protocol.MessageId; import net.sf.briar.api.protocol.PacketFactory; -import net.sf.briar.api.protocol.Types; import net.sf.briar.api.protocol.UniqueId; import net.sf.briar.api.serial.Consumer; import net.sf.briar.api.serial.CountingConsumer; -import net.sf.briar.api.serial.StructReader; import net.sf.briar.api.serial.Reader; +import net.sf.briar.api.serial.StructReader; class AckReader implements StructReader<Ack> { @@ -32,7 +32,7 @@ class AckReader implements StructReader<Ack> { Consumer counting = new CountingConsumer(MAX_PACKET_LENGTH); // Read the data r.addConsumer(counting); - r.readStructId(Types.ACK); + r.readStructId(ACK); r.setMaxBytesLength(UniqueId.LENGTH); List<Bytes> raw = r.readList(Bytes.class); r.resetMaxBytesLength(); diff --git a/briar-core/src/net/sf/briar/protocol/AuthorFactoryImpl.java b/briar-core/src/net/sf/briar/protocol/AuthorFactoryImpl.java index ef504758ee2480438f04221a37cf54e96ddf6987..bced33cb328b56422b14bc35ba33e957b31ee862 100644 --- a/briar-core/src/net/sf/briar/protocol/AuthorFactoryImpl.java +++ b/briar-core/src/net/sf/briar/protocol/AuthorFactoryImpl.java @@ -1,5 +1,7 @@ package net.sf.briar.protocol; +import static net.sf.briar.api.protocol.Types.AUTHOR; + import java.io.ByteArrayOutputStream; import java.io.IOException; @@ -8,7 +10,6 @@ import net.sf.briar.api.crypto.MessageDigest; import net.sf.briar.api.protocol.Author; import net.sf.briar.api.protocol.AuthorFactory; import net.sf.briar.api.protocol.AuthorId; -import net.sf.briar.api.protocol.Types; import net.sf.briar.api.serial.Writer; import net.sf.briar.api.serial.WriterFactory; @@ -29,7 +30,7 @@ class AuthorFactoryImpl implements AuthorFactory { throws IOException { ByteArrayOutputStream out = new ByteArrayOutputStream(); Writer w = writerFactory.createWriter(out); - w.writeStructId(Types.AUTHOR); + w.writeStructId(AUTHOR); w.writeString(name); w.writeBytes(publicKey); MessageDigest messageDigest = crypto.getMessageDigest(); diff --git a/briar-core/src/net/sf/briar/protocol/AuthorReader.java b/briar-core/src/net/sf/briar/protocol/AuthorReader.java index b39dff55262ffef91d10135f2c11ff21f5c3efec..9bc177f7287544cf0ca3a058b829948697ad867d 100644 --- a/briar-core/src/net/sf/briar/protocol/AuthorReader.java +++ b/briar-core/src/net/sf/briar/protocol/AuthorReader.java @@ -2,6 +2,7 @@ package net.sf.briar.protocol; import static net.sf.briar.api.protocol.ProtocolConstants.MAX_AUTHOR_NAME_LENGTH; import static net.sf.briar.api.protocol.ProtocolConstants.MAX_PUBLIC_KEY_LENGTH; +import static net.sf.briar.api.protocol.Types.AUTHOR; import java.io.IOException; @@ -10,7 +11,6 @@ import net.sf.briar.api.crypto.MessageDigest; import net.sf.briar.api.protocol.Author; import net.sf.briar.api.protocol.AuthorFactory; import net.sf.briar.api.protocol.AuthorId; -import net.sf.briar.api.protocol.Types; import net.sf.briar.api.serial.DigestingConsumer; import net.sf.briar.api.serial.Reader; import net.sf.briar.api.serial.StructReader; @@ -30,7 +30,7 @@ class AuthorReader implements StructReader<Author> { DigestingConsumer digesting = new DigestingConsumer(messageDigest); // Read and digest the data r.addConsumer(digesting); - r.readStructId(Types.AUTHOR); + r.readStructId(AUTHOR); String name = r.readString(MAX_AUTHOR_NAME_LENGTH); byte[] publicKey = r.readBytes(MAX_PUBLIC_KEY_LENGTH); r.removeConsumer(digesting); diff --git a/briar-core/src/net/sf/briar/protocol/GroupFactoryImpl.java b/briar-core/src/net/sf/briar/protocol/GroupFactoryImpl.java index 7702e2aba77042a90620bf7c193ad23adf44b3ea..893ba9cc987991149b5e3cc61f39c0f2f74fcbbc 100644 --- a/briar-core/src/net/sf/briar/protocol/GroupFactoryImpl.java +++ b/briar-core/src/net/sf/briar/protocol/GroupFactoryImpl.java @@ -1,5 +1,7 @@ package net.sf.briar.protocol; +import static net.sf.briar.api.protocol.Types.GROUP; + import java.io.ByteArrayOutputStream; import java.io.IOException; @@ -8,7 +10,6 @@ import net.sf.briar.api.crypto.MessageDigest; import net.sf.briar.api.protocol.Group; import net.sf.briar.api.protocol.GroupFactory; import net.sf.briar.api.protocol.GroupId; -import net.sf.briar.api.protocol.Types; import net.sf.briar.api.serial.Writer; import net.sf.briar.api.serial.WriterFactory; @@ -28,7 +29,7 @@ class GroupFactoryImpl implements GroupFactory { public Group createGroup(String name, byte[] publicKey) throws IOException { ByteArrayOutputStream out = new ByteArrayOutputStream(); Writer w = writerFactory.createWriter(out); - w.writeStructId(Types.GROUP); + w.writeStructId(GROUP); w.writeString(name); if(publicKey == null) w.writeNull(); else w.writeBytes(publicKey); diff --git a/briar-core/src/net/sf/briar/protocol/GroupReader.java b/briar-core/src/net/sf/briar/protocol/GroupReader.java index 0317e177ed4e607e8fe5211608715be5599c330d..af1fcfc3c56ea00ce4e5127c71f5161c62934ae4 100644 --- a/briar-core/src/net/sf/briar/protocol/GroupReader.java +++ b/briar-core/src/net/sf/briar/protocol/GroupReader.java @@ -2,6 +2,7 @@ package net.sf.briar.protocol; import static net.sf.briar.api.protocol.ProtocolConstants.MAX_GROUP_NAME_LENGTH; import static net.sf.briar.api.protocol.ProtocolConstants.MAX_PUBLIC_KEY_LENGTH; +import static net.sf.briar.api.protocol.Types.GROUP; import java.io.IOException; @@ -9,7 +10,6 @@ import net.sf.briar.api.crypto.CryptoComponent; import net.sf.briar.api.crypto.MessageDigest; import net.sf.briar.api.protocol.Group; import net.sf.briar.api.protocol.GroupId; -import net.sf.briar.api.protocol.Types; import net.sf.briar.api.serial.DigestingConsumer; import net.sf.briar.api.serial.Reader; import net.sf.briar.api.serial.StructReader; @@ -27,7 +27,7 @@ class GroupReader implements StructReader<Group> { DigestingConsumer digesting = new DigestingConsumer(messageDigest); // Read and digest the data r.addConsumer(digesting); - r.readStructId(Types.GROUP); + r.readStructId(GROUP); String name = r.readString(MAX_GROUP_NAME_LENGTH); byte[] publicKey = null; if(r.hasNull()) r.readNull(); diff --git a/briar-core/src/net/sf/briar/protocol/MessageFactoryImpl.java b/briar-core/src/net/sf/briar/protocol/MessageFactoryImpl.java index 85ce10b49f043128e8e7824fa8ecb37607d136a5..4bbcdff101108bb1560ee8b86f76931457cc3a07 100644 --- a/briar-core/src/net/sf/briar/protocol/MessageFactoryImpl.java +++ b/briar-core/src/net/sf/briar/protocol/MessageFactoryImpl.java @@ -5,6 +5,9 @@ import static net.sf.briar.api.protocol.ProtocolConstants.MAX_PACKET_LENGTH; import static net.sf.briar.api.protocol.ProtocolConstants.MAX_SIGNATURE_LENGTH; import static net.sf.briar.api.protocol.ProtocolConstants.MAX_SUBJECT_LENGTH; import static net.sf.briar.api.protocol.ProtocolConstants.SALT_LENGTH; +import static net.sf.briar.api.protocol.Types.AUTHOR; +import static net.sf.briar.api.protocol.Types.GROUP; +import static net.sf.briar.api.protocol.Types.MESSAGE; import java.io.ByteArrayOutputStream; import java.io.IOException; @@ -23,7 +26,6 @@ import net.sf.briar.api.protocol.GroupId; import net.sf.briar.api.protocol.Message; import net.sf.briar.api.protocol.MessageFactory; import net.sf.briar.api.protocol.MessageId; -import net.sf.briar.api.protocol.Types; import net.sf.briar.api.serial.Consumer; import net.sf.briar.api.serial.CountingConsumer; import net.sf.briar.api.serial.DigestingConsumer; @@ -111,7 +113,7 @@ class MessageFactoryImpl implements MessageFactory { w.addConsumer(groupConsumer); } // Write the message - w.writeStructId(Types.MESSAGE); + w.writeStructId(MESSAGE); if(parent == null) w.writeNull(); else w.writeBytes(parent.getBytes()); if(group == null) w.writeNull(); @@ -157,7 +159,7 @@ class MessageFactoryImpl implements MessageFactory { } private void writeGroup(Writer w, Group g) throws IOException { - w.writeStructId(Types.GROUP); + w.writeStructId(GROUP); w.writeString(g.getName()); byte[] publicKey = g.getPublicKey(); if(publicKey == null) w.writeNull(); @@ -165,7 +167,7 @@ class MessageFactoryImpl implements MessageFactory { } private void writeAuthor(Writer w, Author a) throws IOException { - w.writeStructId(Types.AUTHOR); + w.writeStructId(AUTHOR); w.writeString(a.getName()); w.writeBytes(a.getPublicKey()); } diff --git a/briar-core/src/net/sf/briar/protocol/MessageReader.java b/briar-core/src/net/sf/briar/protocol/MessageReader.java index 97e9871e40a60e7dcec8fc1508230db440909b54..9b2f801a1fb1cff03765412efd1873fd2a7179a9 100644 --- a/briar-core/src/net/sf/briar/protocol/MessageReader.java +++ b/briar-core/src/net/sf/briar/protocol/MessageReader.java @@ -5,6 +5,9 @@ import static net.sf.briar.api.protocol.ProtocolConstants.MAX_PACKET_LENGTH; import static net.sf.briar.api.protocol.ProtocolConstants.MAX_SIGNATURE_LENGTH; import static net.sf.briar.api.protocol.ProtocolConstants.MAX_SUBJECT_LENGTH; import static net.sf.briar.api.protocol.ProtocolConstants.SALT_LENGTH; +import static net.sf.briar.api.protocol.Types.AUTHOR; +import static net.sf.briar.api.protocol.Types.GROUP; +import static net.sf.briar.api.protocol.Types.MESSAGE; import java.io.IOException; @@ -12,7 +15,6 @@ import net.sf.briar.api.FormatException; import net.sf.briar.api.protocol.Author; import net.sf.briar.api.protocol.Group; import net.sf.briar.api.protocol.MessageId; -import net.sf.briar.api.protocol.Types; import net.sf.briar.api.protocol.UniqueId; import net.sf.briar.api.protocol.UnverifiedMessage; import net.sf.briar.api.serial.CopyingConsumer; @@ -37,7 +39,7 @@ class MessageReader implements StructReader<UnverifiedMessage> { r.addConsumer(copying); r.addConsumer(counting); // Read the initial tag - r.readStructId(Types.MESSAGE); + r.readStructId(MESSAGE); // Read the parent's message ID, if there is one MessageId parent = null; if(r.hasNull()) { @@ -52,18 +54,18 @@ class MessageReader implements StructReader<UnverifiedMessage> { if(r.hasNull()) { r.readNull(); } else { - r.addStructReader(Types.GROUP, groupReader); - group = r.readStruct(Types.GROUP, Group.class); - r.removeStructReader(Types.GROUP); + r.addStructReader(GROUP, groupReader); + group = r.readStruct(GROUP, Group.class); + r.removeStructReader(GROUP); } // Read the author, if there is one Author author = null; if(r.hasNull()) { r.readNull(); } else { - r.addStructReader(Types.AUTHOR, authorReader); - author = r.readStruct(Types.AUTHOR, Author.class); - r.removeStructReader(Types.AUTHOR); + r.addStructReader(AUTHOR, authorReader); + author = r.readStruct(AUTHOR, Author.class); + r.removeStructReader(AUTHOR); } // Read the subject String subject = r.readString(MAX_SUBJECT_LENGTH); diff --git a/briar-core/src/net/sf/briar/protocol/OfferReader.java b/briar-core/src/net/sf/briar/protocol/OfferReader.java index b5c2ff099f11cbf8c03a3fb57691866b01c3583b..32c0bc5bf8d9e11489405f10ccdb51564d033165 100644 --- a/briar-core/src/net/sf/briar/protocol/OfferReader.java +++ b/briar-core/src/net/sf/briar/protocol/OfferReader.java @@ -1,6 +1,7 @@ package net.sf.briar.protocol; import static net.sf.briar.api.protocol.ProtocolConstants.MAX_PACKET_LENGTH; +import static net.sf.briar.api.protocol.Types.OFFER; import java.io.IOException; import java.util.ArrayList; @@ -12,12 +13,11 @@ import net.sf.briar.api.FormatException; import net.sf.briar.api.protocol.MessageId; import net.sf.briar.api.protocol.Offer; import net.sf.briar.api.protocol.PacketFactory; -import net.sf.briar.api.protocol.Types; import net.sf.briar.api.protocol.UniqueId; import net.sf.briar.api.serial.Consumer; import net.sf.briar.api.serial.CountingConsumer; -import net.sf.briar.api.serial.StructReader; import net.sf.briar.api.serial.Reader; +import net.sf.briar.api.serial.StructReader; class OfferReader implements StructReader<Offer> { @@ -32,7 +32,7 @@ class OfferReader implements StructReader<Offer> { Consumer counting = new CountingConsumer(MAX_PACKET_LENGTH); // Read the data r.addConsumer(counting); - r.readStructId(Types.OFFER); + r.readStructId(OFFER); r.setMaxBytesLength(UniqueId.LENGTH); List<Bytes> raw = r.readList(Bytes.class); r.resetMaxBytesLength(); diff --git a/briar-core/src/net/sf/briar/protocol/ProtocolReaderImpl.java b/briar-core/src/net/sf/briar/protocol/ProtocolReaderImpl.java index 05c2562964ce6bdd6ee3810a08935a824e01ec2b..9d5850b159db15af6310ade2d2d2ac20123c8647 100644 --- a/briar-core/src/net/sf/briar/protocol/ProtocolReaderImpl.java +++ b/briar-core/src/net/sf/briar/protocol/ProtocolReaderImpl.java @@ -1,5 +1,12 @@ package net.sf.briar.protocol; +import static net.sf.briar.api.protocol.Types.ACK; +import static net.sf.briar.api.protocol.Types.MESSAGE; +import static net.sf.briar.api.protocol.Types.OFFER; +import static net.sf.briar.api.protocol.Types.REQUEST; +import static net.sf.briar.api.protocol.Types.SUBSCRIPTION_UPDATE; +import static net.sf.briar.api.protocol.Types.TRANSPORT_UPDATE; + import java.io.IOException; import java.io.InputStream; @@ -9,7 +16,6 @@ import net.sf.briar.api.protocol.ProtocolReader; import net.sf.briar.api.protocol.Request; import net.sf.briar.api.protocol.SubscriptionUpdate; import net.sf.briar.api.protocol.TransportUpdate; -import net.sf.briar.api.protocol.Types; import net.sf.briar.api.protocol.UnverifiedMessage; import net.sf.briar.api.serial.Reader; import net.sf.briar.api.serial.ReaderFactory; @@ -27,12 +33,12 @@ class ProtocolReaderImpl implements ProtocolReader { StructReader<SubscriptionUpdate> subscriptionReader, StructReader<TransportUpdate> transportReader) { reader = readerFactory.createReader(in); - reader.addStructReader(Types.ACK, ackReader); - reader.addStructReader(Types.MESSAGE, messageReader); - reader.addStructReader(Types.OFFER, offerReader); - reader.addStructReader(Types.REQUEST, requestReader); - reader.addStructReader(Types.SUBSCRIPTION_UPDATE, subscriptionReader); - reader.addStructReader(Types.TRANSPORT_UPDATE, transportReader); + reader.addStructReader(ACK, ackReader); + reader.addStructReader(MESSAGE, messageReader); + reader.addStructReader(OFFER, offerReader); + reader.addStructReader(REQUEST, requestReader); + reader.addStructReader(SUBSCRIPTION_UPDATE, subscriptionReader); + reader.addStructReader(TRANSPORT_UPDATE, transportReader); } public boolean eof() throws IOException { @@ -40,51 +46,51 @@ class ProtocolReaderImpl implements ProtocolReader { } public boolean hasAck() throws IOException { - return reader.hasStruct(Types.ACK); + return reader.hasStruct(ACK); } public Ack readAck() throws IOException { - return reader.readStruct(Types.ACK, Ack.class); + return reader.readStruct(ACK, Ack.class); } public boolean hasMessage() throws IOException { - return reader.hasStruct(Types.MESSAGE); + return reader.hasStruct(MESSAGE); } public UnverifiedMessage readMessage() throws IOException { - return reader.readStruct(Types.MESSAGE, UnverifiedMessage.class); + return reader.readStruct(MESSAGE, UnverifiedMessage.class); } public boolean hasOffer() throws IOException { - return reader.hasStruct(Types.OFFER); + return reader.hasStruct(OFFER); } public Offer readOffer() throws IOException { - return reader.readStruct(Types.OFFER, Offer.class); + return reader.readStruct(OFFER, Offer.class); } public boolean hasRequest() throws IOException { - return reader.hasStruct(Types.REQUEST); + return reader.hasStruct(REQUEST); } public Request readRequest() throws IOException { - return reader.readStruct(Types.REQUEST, Request.class); + return reader.readStruct(REQUEST, Request.class); } public boolean hasSubscriptionUpdate() throws IOException { - return reader.hasStruct(Types.SUBSCRIPTION_UPDATE); + return reader.hasStruct(SUBSCRIPTION_UPDATE); } public SubscriptionUpdate readSubscriptionUpdate() throws IOException { - return reader.readStruct(Types.SUBSCRIPTION_UPDATE, + return reader.readStruct(SUBSCRIPTION_UPDATE, SubscriptionUpdate.class); } public boolean hasTransportUpdate() throws IOException { - return reader.hasStruct(Types.TRANSPORT_UPDATE); + return reader.hasStruct(TRANSPORT_UPDATE); } public TransportUpdate readTransportUpdate() throws IOException { - return reader.readStruct(Types.TRANSPORT_UPDATE, TransportUpdate.class); + return reader.readStruct(TRANSPORT_UPDATE, TransportUpdate.class); } } diff --git a/briar-core/src/net/sf/briar/protocol/ProtocolWriterImpl.java b/briar-core/src/net/sf/briar/protocol/ProtocolWriterImpl.java index 0fda3055525c23bccb4d62237044d93359c946a0..87ddf36eb8b74df59648d7a9a3fb74f79737d17b 100644 --- a/briar-core/src/net/sf/briar/protocol/ProtocolWriterImpl.java +++ b/briar-core/src/net/sf/briar/protocol/ProtocolWriterImpl.java @@ -1,6 +1,13 @@ package net.sf.briar.protocol; import static net.sf.briar.api.protocol.ProtocolConstants.MAX_PACKET_LENGTH; +import static net.sf.briar.api.protocol.Types.ACK; +import static net.sf.briar.api.protocol.Types.GROUP; +import static net.sf.briar.api.protocol.Types.OFFER; +import static net.sf.briar.api.protocol.Types.REQUEST; +import static net.sf.briar.api.protocol.Types.SUBSCRIPTION_UPDATE; +import static net.sf.briar.api.protocol.Types.TRANSPORT; +import static net.sf.briar.api.protocol.Types.TRANSPORT_UPDATE; import java.io.IOException; import java.io.OutputStream; @@ -17,7 +24,6 @@ import net.sf.briar.api.protocol.Request; import net.sf.briar.api.protocol.SubscriptionUpdate; import net.sf.briar.api.protocol.Transport; import net.sf.briar.api.protocol.TransportUpdate; -import net.sf.briar.api.protocol.Types; import net.sf.briar.api.serial.SerialComponent; import net.sf.briar.api.serial.Writer; import net.sf.briar.api.serial.WriterFactory; @@ -40,7 +46,7 @@ class ProtocolWriterImpl implements ProtocolWriter { public int getMaxMessagesForAck(long capacity) { int packet = (int) Math.min(capacity, MAX_PACKET_LENGTH); - int overhead = serial.getSerialisedStructIdLength(Types.ACK) + int overhead = serial.getSerialisedStructIdLength(ACK) + serial.getSerialisedListStartLength() + serial.getSerialisedListEndLength(); int idLength = serial.getSerialisedUniqueIdLength(); @@ -49,7 +55,7 @@ class ProtocolWriterImpl implements ProtocolWriter { public int getMaxMessagesForOffer(long capacity) { int packet = (int) Math.min(capacity, MAX_PACKET_LENGTH); - int overhead = serial.getSerialisedStructIdLength(Types.OFFER) + int overhead = serial.getSerialisedStructIdLength(OFFER) + serial.getSerialisedListStartLength() + serial.getSerialisedListEndLength(); int idLength = serial.getSerialisedUniqueIdLength(); @@ -57,7 +63,7 @@ class ProtocolWriterImpl implements ProtocolWriter { } public void writeAck(Ack a) throws IOException { - w.writeStructId(Types.ACK); + w.writeStructId(ACK); w.writeListStart(); for(MessageId m : a.getMessageIds()) w.writeBytes(m.getBytes()); w.writeListEnd(); @@ -70,7 +76,7 @@ class ProtocolWriterImpl implements ProtocolWriter { } public void writeOffer(Offer o) throws IOException { - w.writeStructId(Types.OFFER); + w.writeStructId(OFFER); w.writeListStart(); for(MessageId m : o.getMessageIds()) w.writeBytes(m.getBytes()); w.writeListEnd(); @@ -91,7 +97,7 @@ class ProtocolWriterImpl implements ProtocolWriter { bitmap[offset] |= bit; } } - w.writeStructId(Types.REQUEST); + w.writeStructId(REQUEST); w.writeUint7((byte) (bytes * 8 - length)); w.writeBytes(bitmap); if(flush) out.flush(); @@ -99,7 +105,7 @@ class ProtocolWriterImpl implements ProtocolWriter { public void writeSubscriptionUpdate(SubscriptionUpdate s) throws IOException { - w.writeStructId(Types.SUBSCRIPTION_UPDATE); + w.writeStructId(SUBSCRIPTION_UPDATE); // Holes w.writeMapStart(); for(Entry<GroupId, GroupId> e : s.getHoles().entrySet()) { @@ -122,7 +128,7 @@ class ProtocolWriterImpl implements ProtocolWriter { } private void writeGroup(Writer w, Group g) throws IOException { - w.writeStructId(Types.GROUP); + w.writeStructId(GROUP); w.writeString(g.getName()); byte[] publicKey = g.getPublicKey(); if(publicKey == null) w.writeNull(); @@ -130,10 +136,10 @@ class ProtocolWriterImpl implements ProtocolWriter { } public void writeTransportUpdate(TransportUpdate t) throws IOException { - w.writeStructId(Types.TRANSPORT_UPDATE); + w.writeStructId(TRANSPORT_UPDATE); w.writeListStart(); for(Transport p : t.getTransports()) { - w.writeStructId(Types.TRANSPORT); + w.writeStructId(TRANSPORT); w.writeBytes(p.getId().getBytes()); w.writeMap(p.getProperties()); } diff --git a/briar-core/src/net/sf/briar/protocol/RequestReader.java b/briar-core/src/net/sf/briar/protocol/RequestReader.java index b8e657457036a932d34ea5520b15dc64ecb2f413..0514ddc48591fb8276e19beeaf3a5b6e027bc8bb 100644 --- a/briar-core/src/net/sf/briar/protocol/RequestReader.java +++ b/briar-core/src/net/sf/briar/protocol/RequestReader.java @@ -1,6 +1,7 @@ package net.sf.briar.protocol; import static net.sf.briar.api.protocol.ProtocolConstants.MAX_PACKET_LENGTH; +import static net.sf.briar.api.protocol.Types.REQUEST; import java.io.IOException; import java.util.BitSet; @@ -8,11 +9,10 @@ import java.util.BitSet; import net.sf.briar.api.FormatException; import net.sf.briar.api.protocol.PacketFactory; import net.sf.briar.api.protocol.Request; -import net.sf.briar.api.protocol.Types; import net.sf.briar.api.serial.Consumer; import net.sf.briar.api.serial.CountingConsumer; -import net.sf.briar.api.serial.StructReader; import net.sf.briar.api.serial.Reader; +import net.sf.briar.api.serial.StructReader; class RequestReader implements StructReader<Request> { @@ -27,7 +27,7 @@ class RequestReader implements StructReader<Request> { Consumer counting = new CountingConsumer(MAX_PACKET_LENGTH); // Read the data r.addConsumer(counting); - r.readStructId(Types.REQUEST); + r.readStructId(REQUEST); int padding = r.readUint7(); if(padding > 7) throw new FormatException(); byte[] bitmap = r.readBytes(MAX_PACKET_LENGTH); diff --git a/briar-core/src/net/sf/briar/protocol/SubscriptionUpdateReader.java b/briar-core/src/net/sf/briar/protocol/SubscriptionUpdateReader.java index de003398b46b92f70d9b130c9b5c42d32623bb01..e87c20c7fe73d970d3de0b5148f9b13cfe222f3a 100644 --- a/briar-core/src/net/sf/briar/protocol/SubscriptionUpdateReader.java +++ b/briar-core/src/net/sf/briar/protocol/SubscriptionUpdateReader.java @@ -1,6 +1,8 @@ package net.sf.briar.protocol; import static net.sf.briar.api.protocol.ProtocolConstants.MAX_PACKET_LENGTH; +import static net.sf.briar.api.protocol.Types.GROUP; +import static net.sf.briar.api.protocol.Types.SUBSCRIPTION_UPDATE; import java.io.IOException; import java.util.HashMap; @@ -11,7 +13,6 @@ import net.sf.briar.api.protocol.Group; import net.sf.briar.api.protocol.GroupId; import net.sf.briar.api.protocol.PacketFactory; import net.sf.briar.api.protocol.SubscriptionUpdate; -import net.sf.briar.api.protocol.Types; import net.sf.briar.api.protocol.UniqueId; import net.sf.briar.api.serial.Consumer; import net.sf.briar.api.serial.CountingConsumer; @@ -34,7 +35,7 @@ class SubscriptionUpdateReader implements StructReader<SubscriptionUpdate> { Consumer counting = new CountingConsumer(MAX_PACKET_LENGTH); // Read the data r.addConsumer(counting); - r.readStructId(Types.SUBSCRIPTION_UPDATE); + r.readStructId(SUBSCRIPTION_UPDATE); // Holes Map<GroupId, GroupId> holes = new HashMap<GroupId, GroupId>(); r.setMaxBytesLength(UniqueId.LENGTH); @@ -49,9 +50,9 @@ class SubscriptionUpdateReader implements StructReader<SubscriptionUpdate> { r.readMapEnd(); r.resetMaxBytesLength(); // Subscriptions - r.addStructReader(Types.GROUP, groupReader); + r.addStructReader(GROUP, groupReader); Map<Group, Long> subs = r.readMap(Group.class, Long.class); - r.removeStructReader(Types.GROUP); + r.removeStructReader(GROUP); // Expiry time long expiry = r.readInt64(); if(expiry < 0L) throw new FormatException(); diff --git a/briar-core/src/net/sf/briar/protocol/TransportUpdateReader.java b/briar-core/src/net/sf/briar/protocol/TransportUpdateReader.java index 685a00b1463273740428a9572d56e0fe7357564b..d95c7d8c1c4262d1ef021a90c219d793abdd9139 100644 --- a/briar-core/src/net/sf/briar/protocol/TransportUpdateReader.java +++ b/briar-core/src/net/sf/briar/protocol/TransportUpdateReader.java @@ -4,6 +4,8 @@ import static net.sf.briar.api.protocol.ProtocolConstants.MAX_PACKET_LENGTH; import static net.sf.briar.api.protocol.ProtocolConstants.MAX_PROPERTIES_PER_TRANSPORT; import static net.sf.briar.api.protocol.ProtocolConstants.MAX_PROPERTY_LENGTH; import static net.sf.briar.api.protocol.ProtocolConstants.MAX_TRANSPORTS; +import static net.sf.briar.api.protocol.Types.TRANSPORT; +import static net.sf.briar.api.protocol.Types.TRANSPORT_UPDATE; import java.io.IOException; import java.util.Collection; @@ -16,7 +18,6 @@ import net.sf.briar.api.protocol.PacketFactory; import net.sf.briar.api.protocol.Transport; import net.sf.briar.api.protocol.TransportId; import net.sf.briar.api.protocol.TransportUpdate; -import net.sf.briar.api.protocol.Types; import net.sf.briar.api.protocol.UniqueId; import net.sf.briar.api.serial.Consumer; import net.sf.briar.api.serial.CountingConsumer; @@ -38,10 +39,10 @@ class TransportUpdateReader implements StructReader<TransportUpdate> { Consumer counting = new CountingConsumer(MAX_PACKET_LENGTH); // Read the data r.addConsumer(counting); - r.readStructId(Types.TRANSPORT_UPDATE); - r.addStructReader(Types.TRANSPORT, transportReader); + r.readStructId(TRANSPORT_UPDATE); + r.addStructReader(TRANSPORT, transportReader); Collection<Transport> transports = r.readList(Transport.class); - r.removeStructReader(Types.TRANSPORT); + r.removeStructReader(TRANSPORT); if(transports.size() > MAX_TRANSPORTS) throw new FormatException(); long timestamp = r.readInt64(); r.removeConsumer(counting); @@ -57,7 +58,7 @@ class TransportUpdateReader implements StructReader<TransportUpdate> { private static class TransportReader implements StructReader<Transport> { public Transport readStruct(Reader r) throws IOException { - r.readStructId(Types.TRANSPORT); + r.readStructId(TRANSPORT); // Read the ID byte[] b = r.readBytes(UniqueId.LENGTH); if(b.length != UniqueId.LENGTH) throw new FormatException(); diff --git a/briar-tests/src/net/sf/briar/db/BasicH2Test.java b/briar-tests/src/net/sf/briar/db/BasicH2Test.java index 76e2384f663dd8e2d51f3f6512fb5e1c1f1956b9..f592a9c395d1b8ed075cd09e179bdd51a70cefeb 100644 --- a/briar-tests/src/net/sf/briar/db/BasicH2Test.java +++ b/briar-tests/src/net/sf/briar/db/BasicH2Test.java @@ -1,5 +1,7 @@ package net.sf.briar.db; +import static java.sql.Types.BINARY; + import java.io.File; import java.sql.Connection; import java.sql.DriverManager; @@ -7,7 +9,6 @@ import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; -import java.sql.Types; import java.util.ArrayList; import java.util.List; import java.util.Random; @@ -119,7 +120,7 @@ public class BasicH2Test extends BriarTestCase { String sql = "INSERT INTO foo (uniqueId, name) VALUES (?, ?)"; try { PreparedStatement ps = connection.prepareStatement(sql); - if(id == null) ps.setNull(1, Types.BINARY); + if(id == null) ps.setNull(1, BINARY); else ps.setBytes(1, id); ps.setString(2, name); int rowsAffected = ps.executeUpdate(); diff --git a/briar-tests/src/net/sf/briar/protocol/AckReaderTest.java b/briar-tests/src/net/sf/briar/protocol/AckReaderTest.java index a40a1f297db378d80beac2db7677c570253e4925..d99bc010fc3d1cf9edce3349d2b8acb2939f7bb8 100644 --- a/briar-tests/src/net/sf/briar/protocol/AckReaderTest.java +++ b/briar-tests/src/net/sf/briar/protocol/AckReaderTest.java @@ -1,6 +1,7 @@ package net.sf.briar.protocol; import static net.sf.briar.api.protocol.ProtocolConstants.MAX_PACKET_LENGTH; +import static net.sf.briar.api.protocol.Types.ACK; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; @@ -11,7 +12,6 @@ import net.sf.briar.TestUtils; import net.sf.briar.api.FormatException; import net.sf.briar.api.protocol.Ack; import net.sf.briar.api.protocol.PacketFactory; -import net.sf.briar.api.protocol.Types; import net.sf.briar.api.serial.Reader; import net.sf.briar.api.serial.ReaderFactory; import net.sf.briar.api.serial.SerialComponent; @@ -52,10 +52,10 @@ public class AckReaderTest extends BriarTestCase { byte[] b = createAck(true); ByteArrayInputStream in = new ByteArrayInputStream(b); Reader reader = readerFactory.createReader(in); - reader.addStructReader(Types.ACK, ackReader); + reader.addStructReader(ACK, ackReader); try { - reader.readStruct(Types.ACK, Ack.class); + reader.readStruct(ACK, Ack.class); fail(); } catch(FormatException expected) {} context.assertIsSatisfied(); @@ -75,9 +75,9 @@ public class AckReaderTest extends BriarTestCase { byte[] b = createAck(false); ByteArrayInputStream in = new ByteArrayInputStream(b); Reader reader = readerFactory.createReader(in); - reader.addStructReader(Types.ACK, ackReader); + reader.addStructReader(ACK, ackReader); - assertEquals(ack, reader.readStruct(Types.ACK, Ack.class)); + assertEquals(ack, reader.readStruct(ACK, Ack.class)); context.assertIsSatisfied(); } @@ -89,10 +89,10 @@ public class AckReaderTest extends BriarTestCase { byte[] b = createEmptyAck(); ByteArrayInputStream in = new ByteArrayInputStream(b); Reader reader = readerFactory.createReader(in); - reader.addStructReader(Types.ACK, ackReader); + reader.addStructReader(ACK, ackReader); try { - reader.readStruct(Types.ACK, Ack.class); + reader.readStruct(ACK, Ack.class); fail(); } catch(FormatException expected) {} context.assertIsSatisfied(); @@ -101,7 +101,7 @@ public class AckReaderTest extends BriarTestCase { private byte[] createAck(boolean tooBig) throws Exception { ByteArrayOutputStream out = new ByteArrayOutputStream(); Writer w = writerFactory.createWriter(out); - w.writeStructId(Types.ACK); + w.writeStructId(ACK); w.writeListStart(); while(out.size() + serial.getSerialisedUniqueIdLength() < MAX_PACKET_LENGTH) { @@ -116,7 +116,7 @@ public class AckReaderTest extends BriarTestCase { private byte[] createEmptyAck() throws Exception { ByteArrayOutputStream out = new ByteArrayOutputStream(); Writer w = writerFactory.createWriter(out); - w.writeStructId(Types.ACK); + w.writeStructId(ACK); w.writeListStart(); w.writeListEnd(); return out.toByteArray(); diff --git a/briar-tests/src/net/sf/briar/protocol/OfferReaderTest.java b/briar-tests/src/net/sf/briar/protocol/OfferReaderTest.java index d3ecbc0fbc96e098dd52182e7317c03a123f6755..7b89cc8d06599c71fef1658ec2ee98b6b071e809 100644 --- a/briar-tests/src/net/sf/briar/protocol/OfferReaderTest.java +++ b/briar-tests/src/net/sf/briar/protocol/OfferReaderTest.java @@ -1,6 +1,7 @@ package net.sf.briar.protocol; import static net.sf.briar.api.protocol.ProtocolConstants.MAX_PACKET_LENGTH; +import static net.sf.briar.api.protocol.Types.OFFER; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; @@ -11,7 +12,6 @@ import net.sf.briar.TestUtils; import net.sf.briar.api.FormatException; import net.sf.briar.api.protocol.Offer; import net.sf.briar.api.protocol.PacketFactory; -import net.sf.briar.api.protocol.Types; import net.sf.briar.api.serial.Reader; import net.sf.briar.api.serial.ReaderFactory; import net.sf.briar.api.serial.SerialComponent; @@ -52,10 +52,10 @@ public class OfferReaderTest extends BriarTestCase { byte[] b = createOffer(true); ByteArrayInputStream in = new ByteArrayInputStream(b); Reader reader = readerFactory.createReader(in); - reader.addStructReader(Types.OFFER, offerReader); + reader.addStructReader(OFFER, offerReader); try { - reader.readStruct(Types.OFFER, Offer.class); + reader.readStruct(OFFER, Offer.class); fail(); } catch(FormatException expected) {} context.assertIsSatisfied(); @@ -75,9 +75,9 @@ public class OfferReaderTest extends BriarTestCase { byte[] b = createOffer(false); ByteArrayInputStream in = new ByteArrayInputStream(b); Reader reader = readerFactory.createReader(in); - reader.addStructReader(Types.OFFER, offerReader); + reader.addStructReader(OFFER, offerReader); - assertEquals(offer, reader.readStruct(Types.OFFER, Offer.class)); + assertEquals(offer, reader.readStruct(OFFER, Offer.class)); context.assertIsSatisfied(); } @@ -89,10 +89,10 @@ public class OfferReaderTest extends BriarTestCase { byte[] b = createEmptyOffer(); ByteArrayInputStream in = new ByteArrayInputStream(b); Reader reader = readerFactory.createReader(in); - reader.addStructReader(Types.OFFER, offerReader); + reader.addStructReader(OFFER, offerReader); try { - reader.readStruct(Types.OFFER, Offer.class); + reader.readStruct(OFFER, Offer.class); fail(); } catch(FormatException expected) {} context.assertIsSatisfied(); @@ -101,7 +101,7 @@ public class OfferReaderTest extends BriarTestCase { private byte[] createOffer(boolean tooBig) throws Exception { ByteArrayOutputStream out = new ByteArrayOutputStream(); Writer w = writerFactory.createWriter(out); - w.writeStructId(Types.OFFER); + w.writeStructId(OFFER); w.writeListStart(); while(out.size() + serial.getSerialisedUniqueIdLength() < MAX_PACKET_LENGTH) { @@ -116,7 +116,7 @@ public class OfferReaderTest extends BriarTestCase { private byte[] createEmptyOffer() throws Exception { ByteArrayOutputStream out = new ByteArrayOutputStream(); Writer w = writerFactory.createWriter(out); - w.writeStructId(Types.OFFER); + w.writeStructId(OFFER); w.writeListStart(); w.writeListEnd(); return out.toByteArray(); diff --git a/briar-tests/src/net/sf/briar/protocol/RequestReaderTest.java b/briar-tests/src/net/sf/briar/protocol/RequestReaderTest.java index aee4a7e25e8e4d894bf89b912fb738e88fc04190..d92b0dc420c936facac91620d1995085a1e0996f 100644 --- a/briar-tests/src/net/sf/briar/protocol/RequestReaderTest.java +++ b/briar-tests/src/net/sf/briar/protocol/RequestReaderTest.java @@ -1,6 +1,7 @@ package net.sf.briar.protocol; import static net.sf.briar.api.protocol.ProtocolConstants.MAX_PACKET_LENGTH; +import static net.sf.briar.api.protocol.Types.REQUEST; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; @@ -10,7 +11,6 @@ import net.sf.briar.BriarTestCase; import net.sf.briar.api.FormatException; import net.sf.briar.api.protocol.PacketFactory; import net.sf.briar.api.protocol.Request; -import net.sf.briar.api.protocol.Types; import net.sf.briar.api.serial.Reader; import net.sf.briar.api.serial.ReaderFactory; import net.sf.briar.api.serial.Writer; @@ -53,10 +53,10 @@ public class RequestReaderTest extends BriarTestCase { byte[] b = createRequest(true); ByteArrayInputStream in = new ByteArrayInputStream(b); Reader reader = readerFactory.createReader(in); - reader.addStructReader(Types.REQUEST, requestReader); + reader.addStructReader(REQUEST, requestReader); try { - reader.readStruct(Types.REQUEST, Request.class); + reader.readStruct(REQUEST, Request.class); fail(); } catch(FormatException expected) {} context.assertIsSatisfied(); @@ -76,10 +76,9 @@ public class RequestReaderTest extends BriarTestCase { byte[] b = createRequest(false); ByteArrayInputStream in = new ByteArrayInputStream(b); Reader reader = readerFactory.createReader(in); - reader.addStructReader(Types.REQUEST, requestReader); + reader.addStructReader(REQUEST, requestReader); - assertEquals(request, reader.readStruct(Types.REQUEST, - Request.class)); + assertEquals(request, reader.readStruct(REQUEST, Request.class)); context.assertIsSatisfied(); } @@ -106,8 +105,8 @@ public class RequestReaderTest extends BriarTestCase { ByteArrayInputStream in = new ByteArrayInputStream(b); Reader reader = readerFactory.createReader(in); RequestReader requestReader = new RequestReader(packetFactory); - reader.addStructReader(Types.REQUEST, requestReader); - Request r = reader.readStruct(Types.REQUEST, Request.class); + reader.addStructReader(REQUEST, requestReader); + Request r = reader.readStruct(REQUEST, Request.class); BitSet decoded = r.getBitmap(); // Check that the decoded BitSet matches the original - we can't // use equals() because of padding, but the first i bits should @@ -123,7 +122,7 @@ public class RequestReaderTest extends BriarTestCase { private byte[] createRequest(boolean tooBig) throws Exception { ByteArrayOutputStream out = new ByteArrayOutputStream(); Writer w = writerFactory.createWriter(out); - w.writeStructId(Types.REQUEST); + w.writeStructId(REQUEST); // Allow one byte for the REQUEST tag, one byte for the padding length // as a uint7, one byte for the BYTES tag, and five bytes for the // length of the byte array as an int32 @@ -139,7 +138,7 @@ public class RequestReaderTest extends BriarTestCase { private byte[] createRequest(byte[] bitmap) throws Exception { ByteArrayOutputStream out = new ByteArrayOutputStream(); Writer w = writerFactory.createWriter(out); - w.writeStructId(Types.REQUEST); + w.writeStructId(REQUEST); w.writeUint7((byte) 0); w.writeBytes(bitmap); return out.toByteArray();