diff --git a/api/net/sf/briar/api/protocol/Offer.java b/api/net/sf/briar/api/protocol/Offer.java index 1f57685a97bbcb012c41df6746e12a0636a56a4d..6ff90d833997557e1f755f39d6ba33fb0492962e 100644 --- a/api/net/sf/briar/api/protocol/Offer.java +++ b/api/net/sf/briar/api/protocol/Offer.java @@ -8,9 +8,6 @@ public interface Offer { /** The maximum number of message IDs per offer. */ static final int MAX_IDS_PER_OFFER = 29959; - /** Returns the offer's unique identifier. */ - OfferId getId(); - /** Returns the message IDs contained in the offer. */ Collection<MessageId> getMessageIds(); } diff --git a/api/net/sf/briar/api/protocol/OfferId.java b/api/net/sf/briar/api/protocol/OfferId.java deleted file mode 100644 index 1d235cfe71815f2d49c53b4e59d0cf54ca2866c7..0000000000000000000000000000000000000000 --- a/api/net/sf/briar/api/protocol/OfferId.java +++ /dev/null @@ -1,26 +0,0 @@ -package net.sf.briar.api.protocol; - -import java.io.IOException; -import java.util.Arrays; - -import net.sf.briar.api.serial.Writer; - -/** Type-safe wrapper for a byte array that uniquely identifies an offer. */ -public class OfferId extends UniqueId { - - public OfferId(byte[] id) { - super(id); - } - - public void writeTo(Writer w) throws IOException { - w.writeUserDefinedTag(Tags.OFFER_ID); - w.writeBytes(id); - } - - @Override - public boolean equals(Object o) { - if(o instanceof OfferId) - return Arrays.equals(id, ((OfferId) o).id); - return false; - } -} diff --git a/api/net/sf/briar/api/protocol/Request.java b/api/net/sf/briar/api/protocol/Request.java index 9cc8dce438c818e5b989aa8888ecddb8e85676a9..a17023020748cc95dd8a0499ae5047d0d3e29e21 100644 --- a/api/net/sf/briar/api/protocol/Request.java +++ b/api/net/sf/briar/api/protocol/Request.java @@ -5,12 +5,6 @@ import java.util.BitSet; /** A packet requesting some or all of the messages from an offer. */ public interface Request { - /** - * Returns the unique identifier of the offer to which this request - * responds. - */ - OfferId getOfferId(); - /** * Returns a sequence of bits corresponding to the sequence of messages in * the offer, where the i^th bit is set if the i^th message should be sent. diff --git a/api/net/sf/briar/api/protocol/Tags.java b/api/net/sf/briar/api/protocol/Tags.java index 7013d9c665f1314527687494cb7eccdcf3d5743b..60b3be884a0d700b3021e00e3613cdfa414eb577 100644 --- a/api/net/sf/briar/api/protocol/Tags.java +++ b/api/net/sf/briar/api/protocol/Tags.java @@ -17,7 +17,7 @@ public interface Tags { static final int MESSAGE = 7; static final int MESSAGE_ID = 8; static final int OFFER = 9; - static final int OFFER_ID = 10; + // FIXME: Renumber static final int REQUEST = 11; static final int SUBSCRIPTION_UPDATE = 12; static final int TRANSPORT_PROPERTIES = 13; diff --git a/api/net/sf/briar/api/protocol/writers/OfferWriter.java b/api/net/sf/briar/api/protocol/writers/OfferWriter.java index 9a5b945ae600d67e42ce2d0f222c446a55447110..8faee5bed2fc010b292b74f5f7626106d6255e70 100644 --- a/api/net/sf/briar/api/protocol/writers/OfferWriter.java +++ b/api/net/sf/briar/api/protocol/writers/OfferWriter.java @@ -3,7 +3,6 @@ package net.sf.briar.api.protocol.writers; import java.io.IOException; import net.sf.briar.api.protocol.MessageId; -import net.sf.briar.api.protocol.OfferId; /** An interface for creating an offer packet. */ public interface OfferWriter { @@ -14,6 +13,6 @@ public interface OfferWriter { */ boolean writeMessageId(MessageId m) throws IOException; - /** Finishes writing the offer and returns its unique identifier. */ - OfferId finish() throws IOException; + /** Finishes writing the offer. */ + void finish() throws IOException; } diff --git a/api/net/sf/briar/api/protocol/writers/RequestWriter.java b/api/net/sf/briar/api/protocol/writers/RequestWriter.java index d284f5c0c17e521fd67fe08b90bf6f5a9c8906d2..01f4b0c1179a1f6c17c76b54e38d98ba0497279b 100644 --- a/api/net/sf/briar/api/protocol/writers/RequestWriter.java +++ b/api/net/sf/briar/api/protocol/writers/RequestWriter.java @@ -3,11 +3,9 @@ package net.sf.briar.api.protocol.writers; import java.io.IOException; import java.util.BitSet; -import net.sf.briar.api.protocol.OfferId; - /** An interface for creating a request packet. */ public interface RequestWriter { /** Writes the contents of the request. */ - void writeRequest(OfferId offerId, BitSet b, int length) throws IOException; + void writeRequest(BitSet b, int length) throws IOException; } diff --git a/components/net/sf/briar/db/ReadWriteLockDatabaseComponent.java b/components/net/sf/briar/db/ReadWriteLockDatabaseComponent.java index 43b382a26caf4f4dbd64b36751ac6e66d7a58437..f0211d04a8738617c0e0389339196b1b413351c1 100644 --- a/components/net/sf/briar/db/ReadWriteLockDatabaseComponent.java +++ b/components/net/sf/briar/db/ReadWriteLockDatabaseComponent.java @@ -815,7 +815,7 @@ class ReadWriteLockDatabaseComponent<Txn> extends DatabaseComponentImpl<Txn> { db.abortTransaction(txn); throw e; } - r.writeRequest(o.getId(), request, offered.size()); + r.writeRequest(request, offered.size()); } finally { subscriptionLock.readLock().unlock(); } diff --git a/components/net/sf/briar/db/SynchronizedDatabaseComponent.java b/components/net/sf/briar/db/SynchronizedDatabaseComponent.java index 42048e12a66f104022376692fa4251a7f6c7af54..f27f9f86ffcd24de462fd6228805b5ee3549ffc3 100644 --- a/components/net/sf/briar/db/SynchronizedDatabaseComponent.java +++ b/components/net/sf/briar/db/SynchronizedDatabaseComponent.java @@ -627,7 +627,7 @@ class SynchronizedDatabaseComponent<Txn> extends DatabaseComponentImpl<Txn> { db.abortTransaction(txn); throw e; } - r.writeRequest(o.getId(), request, offered.size()); + r.writeRequest(request, offered.size()); } } } diff --git a/components/net/sf/briar/protocol/OfferFactory.java b/components/net/sf/briar/protocol/OfferFactory.java index c9a1c33cc790be75f19dc6cf93a607dc18196762..6f19d4e29192edd0eadd298b67d398f050391337 100644 --- a/components/net/sf/briar/protocol/OfferFactory.java +++ b/components/net/sf/briar/protocol/OfferFactory.java @@ -4,9 +4,8 @@ import java.util.Collection; import net.sf.briar.api.protocol.MessageId; import net.sf.briar.api.protocol.Offer; -import net.sf.briar.api.protocol.OfferId; interface OfferFactory { - Offer createOffer(OfferId id, Collection<MessageId> offered); + Offer createOffer(Collection<MessageId> offered); } diff --git a/components/net/sf/briar/protocol/OfferFactoryImpl.java b/components/net/sf/briar/protocol/OfferFactoryImpl.java index f76802c2053216a7fb36830afd499dab595b5071..075527d14768faa86d022cfe308f8f7eda203b4b 100644 --- a/components/net/sf/briar/protocol/OfferFactoryImpl.java +++ b/components/net/sf/briar/protocol/OfferFactoryImpl.java @@ -4,11 +4,10 @@ import java.util.Collection; import net.sf.briar.api.protocol.MessageId; import net.sf.briar.api.protocol.Offer; -import net.sf.briar.api.protocol.OfferId; class OfferFactoryImpl implements OfferFactory { - public Offer createOffer(OfferId id, Collection<MessageId> offered) { - return new OfferImpl(id, offered); + public Offer createOffer(Collection<MessageId> offered) { + return new OfferImpl(offered); } } diff --git a/components/net/sf/briar/protocol/OfferIdReader.java b/components/net/sf/briar/protocol/OfferIdReader.java deleted file mode 100644 index 3c1fe80aad2d418ab8aedc4ba406f19e3f6f51e4..0000000000000000000000000000000000000000 --- a/components/net/sf/briar/protocol/OfferIdReader.java +++ /dev/null @@ -1,20 +0,0 @@ -package net.sf.briar.protocol; - -import java.io.IOException; - -import net.sf.briar.api.FormatException; -import net.sf.briar.api.protocol.OfferId; -import net.sf.briar.api.protocol.Tags; -import net.sf.briar.api.protocol.UniqueId; -import net.sf.briar.api.serial.ObjectReader; -import net.sf.briar.api.serial.Reader; - -class OfferIdReader implements ObjectReader<OfferId> { - - public OfferId readObject(Reader r) throws IOException { - r.readUserDefinedTag(Tags.OFFER_ID); - byte[] b = r.readBytes(UniqueId.LENGTH); - if(b.length != UniqueId.LENGTH) throw new FormatException(); - return new OfferId(b); - } -} diff --git a/components/net/sf/briar/protocol/OfferImpl.java b/components/net/sf/briar/protocol/OfferImpl.java index 0ce2e6bfe943e60c55e0e8e95739b1e82557c84b..de892202e64c2fc1fe435767993734920aeda5cf 100644 --- a/components/net/sf/briar/protocol/OfferImpl.java +++ b/components/net/sf/briar/protocol/OfferImpl.java @@ -4,22 +4,15 @@ import java.util.Collection; import net.sf.briar.api.protocol.MessageId; import net.sf.briar.api.protocol.Offer; -import net.sf.briar.api.protocol.OfferId; class OfferImpl implements Offer { - private final OfferId id; private final Collection<MessageId> offered; - OfferImpl(OfferId id, Collection<MessageId> offered) { - this.id = id; + OfferImpl(Collection<MessageId> offered) { this.offered = offered; } - public OfferId getId() { - return id; - } - public Collection<MessageId> getMessageIds() { return offered; } diff --git a/components/net/sf/briar/protocol/OfferReader.java b/components/net/sf/briar/protocol/OfferReader.java index 5dc7e9754673a4e01efb1cf549ad24db3a429785..970b96453c9a2ab153baa9cabe7ffc3e0569c0c4 100644 --- a/components/net/sf/briar/protocol/OfferReader.java +++ b/components/net/sf/briar/protocol/OfferReader.java @@ -1,14 +1,11 @@ package net.sf.briar.protocol; import java.io.IOException; -import java.security.MessageDigest; import java.util.Collection; import net.sf.briar.api.FormatException; -import net.sf.briar.api.crypto.CryptoComponent; import net.sf.briar.api.protocol.MessageId; import net.sf.briar.api.protocol.Offer; -import net.sf.briar.api.protocol.OfferId; import net.sf.briar.api.protocol.ProtocolConstants; import net.sf.briar.api.protocol.Tags; import net.sf.briar.api.serial.Consumer; @@ -17,36 +14,29 @@ import net.sf.briar.api.serial.Reader; class OfferReader implements ObjectReader<Offer> { - private final MessageDigest messageDigest; private final ObjectReader<MessageId> messageIdReader; private final OfferFactory offerFactory; - OfferReader(CryptoComponent crypto, ObjectReader<MessageId> messageIdReader, + OfferReader(ObjectReader<MessageId> messageIdReader, OfferFactory offerFactory) { - messageDigest = crypto.getMessageDigest(); this.messageIdReader = messageIdReader; this.offerFactory = offerFactory; } public Offer readObject(Reader r) throws IOException { - // Initialise the consumers + // Initialise the consumer Consumer counting = new CountingConsumer(ProtocolConstants.MAX_PACKET_LENGTH); - DigestingConsumer digesting = new DigestingConsumer(messageDigest); - messageDigest.reset(); // Read the data r.addConsumer(counting); - r.addConsumer(digesting); r.readUserDefinedTag(Tags.OFFER); r.addObjectReader(Tags.MESSAGE_ID, messageIdReader); Collection<MessageId> messages = r.readList(MessageId.class); if(messages.size() > Offer.MAX_IDS_PER_OFFER) throw new FormatException(); r.removeObjectReader(Tags.MESSAGE_ID); - r.removeConsumer(digesting); r.removeConsumer(counting); // Build and return the offer - OfferId id = new OfferId(messageDigest.digest()); - return offerFactory.createOffer(id, messages); + return offerFactory.createOffer(messages); } } diff --git a/components/net/sf/briar/protocol/ProtocolModule.java b/components/net/sf/briar/protocol/ProtocolModule.java index 79d4bac5867c3dae02210951d8c2b7194e535492..6d36d8efb38cc18522aa7a1f9d5a7f83dcb95c53 100644 --- a/components/net/sf/briar/protocol/ProtocolModule.java +++ b/components/net/sf/briar/protocol/ProtocolModule.java @@ -12,7 +12,6 @@ import net.sf.briar.api.protocol.Message; import net.sf.briar.api.protocol.MessageEncoder; import net.sf.briar.api.protocol.MessageId; import net.sf.briar.api.protocol.Offer; -import net.sf.briar.api.protocol.OfferId; import net.sf.briar.api.protocol.ProtocolReaderFactory; import net.sf.briar.api.protocol.Request; import net.sf.briar.api.protocol.SubscriptionUpdate; @@ -82,21 +81,14 @@ public class ProtocolModule extends AbstractModule { } @Provides - ObjectReader<OfferId> getOfferIdReader() { - return new OfferIdReader(); - } - - @Provides - ObjectReader<Offer> getOfferReader(CryptoComponent crypto, - ObjectReader<MessageId> messageIdReader, + ObjectReader<Offer> getOfferReader(ObjectReader<MessageId> messageIdReader, OfferFactory offerFactory) { - return new OfferReader(crypto, messageIdReader, offerFactory); + return new OfferReader(messageIdReader, offerFactory); } @Provides - ObjectReader<Request> getRequestReader(ObjectReader<OfferId> offerIdReader, - RequestFactory requestFactory) { - return new RequestReader(offerIdReader, requestFactory); + ObjectReader<Request> getRequestReader(RequestFactory requestFactory) { + return new RequestReader(requestFactory); } @Provides diff --git a/components/net/sf/briar/protocol/RequestFactory.java b/components/net/sf/briar/protocol/RequestFactory.java index 09459765a69e7c3a9eaa7ee57944ef6e865c5df7..005982b826a5c32ae72efceb1fe563d24d6406ec 100644 --- a/components/net/sf/briar/protocol/RequestFactory.java +++ b/components/net/sf/briar/protocol/RequestFactory.java @@ -2,10 +2,9 @@ package net.sf.briar.protocol; import java.util.BitSet; -import net.sf.briar.api.protocol.OfferId; import net.sf.briar.api.protocol.Request; interface RequestFactory { - Request createRequest(OfferId offerId, BitSet requested); + Request createRequest(BitSet requested); } diff --git a/components/net/sf/briar/protocol/RequestFactoryImpl.java b/components/net/sf/briar/protocol/RequestFactoryImpl.java index 68cce91c54c76c5a595490d3a09f4337cfbd6bd4..0c2c77cb1cd324c4f292adeba8da1125dfbd21f2 100644 --- a/components/net/sf/briar/protocol/RequestFactoryImpl.java +++ b/components/net/sf/briar/protocol/RequestFactoryImpl.java @@ -2,12 +2,11 @@ package net.sf.briar.protocol; import java.util.BitSet; -import net.sf.briar.api.protocol.OfferId; import net.sf.briar.api.protocol.Request; class RequestFactoryImpl implements RequestFactory { - public Request createRequest(OfferId offerId, BitSet requested) { - return new RequestImpl(offerId, requested); + public Request createRequest(BitSet requested) { + return new RequestImpl(requested); } } diff --git a/components/net/sf/briar/protocol/RequestImpl.java b/components/net/sf/briar/protocol/RequestImpl.java index 42d3247ee94965b0eb7bac502198322831436575..ddb31898aeb2f4f02ae581ce889eaebf22894d09 100644 --- a/components/net/sf/briar/protocol/RequestImpl.java +++ b/components/net/sf/briar/protocol/RequestImpl.java @@ -2,23 +2,16 @@ package net.sf.briar.protocol; import java.util.BitSet; -import net.sf.briar.api.protocol.OfferId; import net.sf.briar.api.protocol.Request; class RequestImpl implements Request { - private final OfferId offerId; private final BitSet requested; - RequestImpl(OfferId offerId, BitSet requested) { - this.offerId = offerId; + RequestImpl(BitSet requested) { this.requested = requested; } - public OfferId getOfferId() { - return offerId; - } - public BitSet getBitmap() { return requested; } diff --git a/components/net/sf/briar/protocol/RequestReader.java b/components/net/sf/briar/protocol/RequestReader.java index 77594c650922d73c92ef7bbf3feaa5c25048137e..88ebec391b77f1a4c8f523632e26e96c1872e5e1 100644 --- a/components/net/sf/briar/protocol/RequestReader.java +++ b/components/net/sf/briar/protocol/RequestReader.java @@ -3,7 +3,6 @@ package net.sf.briar.protocol; import java.io.IOException; import java.util.BitSet; -import net.sf.briar.api.protocol.OfferId; import net.sf.briar.api.protocol.ProtocolConstants; import net.sf.briar.api.protocol.Request; import net.sf.briar.api.protocol.Tags; @@ -13,12 +12,9 @@ import net.sf.briar.api.serial.Reader; class RequestReader implements ObjectReader<Request> { - private final ObjectReader<OfferId> offerIdReader; private final RequestFactory requestFactory; - RequestReader(ObjectReader<OfferId> offerIdReader, - RequestFactory requestFactory) { - this.offerIdReader = offerIdReader; + RequestReader(RequestFactory requestFactory) { this.requestFactory = requestFactory; } @@ -29,8 +25,6 @@ class RequestReader implements ObjectReader<Request> { // Read the data r.addConsumer(counting); r.readUserDefinedTag(Tags.REQUEST); - r.addObjectReader(Tags.OFFER_ID, offerIdReader); - OfferId offerId = r.readUserDefined(Tags.OFFER_ID, OfferId.class); byte[] bitmap = r.readBytes(ProtocolConstants.MAX_PACKET_LENGTH); r.removeConsumer(counting); // Convert the bitmap into a BitSet @@ -41,6 +35,6 @@ class RequestReader implements ObjectReader<Request> { if((bitmap[i] & bit) != 0) b.set(i * 8 + j); } } - return requestFactory.createRequest(offerId, b); + return requestFactory.createRequest(b); } } diff --git a/components/net/sf/briar/protocol/writers/OfferWriterImpl.java b/components/net/sf/briar/protocol/writers/OfferWriterImpl.java index 424a021ebd6344c7e08ef1d3073b86fd40e14119..f606172ea009c723e6c61c5f7885e2a63d6811dc 100644 --- a/components/net/sf/briar/protocol/writers/OfferWriterImpl.java +++ b/components/net/sf/briar/protocol/writers/OfferWriterImpl.java @@ -2,12 +2,9 @@ package net.sf.briar.protocol.writers; import java.io.IOException; import java.io.OutputStream; -import java.security.DigestOutputStream; -import java.security.MessageDigest; import net.sf.briar.api.protocol.MessageId; import net.sf.briar.api.protocol.Offer; -import net.sf.briar.api.protocol.OfferId; import net.sf.briar.api.protocol.Tags; import net.sf.briar.api.protocol.writers.OfferWriter; import net.sf.briar.api.serial.Writer; @@ -17,21 +14,17 @@ class OfferWriterImpl implements OfferWriter { private final OutputStream out; private final Writer w; - private final MessageDigest messageDigest; private boolean started = false; private int idsWritten = 0; - OfferWriterImpl(OutputStream out, WriterFactory writerFactory, - MessageDigest messageDigest) { - this.out = new DigestOutputStream(out, messageDigest); + OfferWriterImpl(OutputStream out, WriterFactory writerFactory) { + this.out = out; w = writerFactory.createWriter(out); - this.messageDigest = messageDigest; } public boolean writeMessageId(MessageId m) throws IOException { if(!started) { - messageDigest.reset(); w.writeUserDefinedTag(Tags.OFFER); w.writeListStart(); started = true; @@ -42,9 +35,8 @@ class OfferWriterImpl implements OfferWriter { return true; } - public OfferId finish() throws IOException { + public void finish() throws IOException { if(!started) { - messageDigest.reset(); w.writeUserDefinedTag(Tags.OFFER); w.writeListStart(); started = true; @@ -52,6 +44,5 @@ class OfferWriterImpl implements OfferWriter { w.writeListEnd(); out.flush(); started = false; - return new OfferId(messageDigest.digest()); } } diff --git a/components/net/sf/briar/protocol/writers/ProtocolWriterFactoryImpl.java b/components/net/sf/briar/protocol/writers/ProtocolWriterFactoryImpl.java index ce14908f1caee20b48565609407d37cf2af20950..25999403679a4406a1246f38cb61ebd77d4035c9 100644 --- a/components/net/sf/briar/protocol/writers/ProtocolWriterFactoryImpl.java +++ b/components/net/sf/briar/protocol/writers/ProtocolWriterFactoryImpl.java @@ -36,7 +36,7 @@ class ProtocolWriterFactoryImpl implements ProtocolWriterFactory { } public OfferWriter createOfferWriter(OutputStream out) { - return new OfferWriterImpl(out, writerFactory, messageDigest); + return new OfferWriterImpl(out, writerFactory); } public RequestWriter createRequestWriter(OutputStream out) { diff --git a/components/net/sf/briar/protocol/writers/RequestWriterImpl.java b/components/net/sf/briar/protocol/writers/RequestWriterImpl.java index d50909dabb849489df723087de4f26a77a5f2813..6e6ce137ad48018cd1f1a45313132c8b5021ea16 100644 --- a/components/net/sf/briar/protocol/writers/RequestWriterImpl.java +++ b/components/net/sf/briar/protocol/writers/RequestWriterImpl.java @@ -4,7 +4,6 @@ import java.io.IOException; import java.io.OutputStream; import java.util.BitSet; -import net.sf.briar.api.protocol.OfferId; import net.sf.briar.api.protocol.Tags; import net.sf.briar.api.protocol.writers.RequestWriter; import net.sf.briar.api.serial.Writer; @@ -20,11 +19,9 @@ class RequestWriterImpl implements RequestWriter { w = writerFactory.createWriter(out); } - public void writeRequest(OfferId offerId, BitSet b, int length) + public void writeRequest(BitSet b, int length) throws IOException { w.writeUserDefinedTag(Tags.REQUEST); - w.writeUserDefinedTag(Tags.OFFER_ID); - w.writeBytes(offerId.getBytes()); // If the number of bits isn't a multiple of 8, round up to a byte int bytes = length % 8 == 0 ? length / 8 : length / 8 + 1; byte[] bitmap = new byte[bytes]; diff --git a/test/net/sf/briar/FileReadWriteTest.java b/test/net/sf/briar/FileReadWriteTest.java index fa54fd4a3a929af906ff270f550dcd6aed66e828..de0dfd619b61d48bbc77e93d136be7eeb4f3a2bb 100644 --- a/test/net/sf/briar/FileReadWriteTest.java +++ b/test/net/sf/briar/FileReadWriteTest.java @@ -27,7 +27,6 @@ import net.sf.briar.api.protocol.Message; import net.sf.briar.api.protocol.MessageEncoder; import net.sf.briar.api.protocol.MessageId; import net.sf.briar.api.protocol.Offer; -import net.sf.briar.api.protocol.OfferId; import net.sf.briar.api.protocol.ProtocolReader; import net.sf.briar.api.protocol.ProtocolReaderFactory; import net.sf.briar.api.protocol.Request; @@ -79,7 +78,6 @@ public class FileReadWriteTest extends TestCase { private final Message message, message1, message2, message3; private final String authorName = "Alice"; private final String messageBody = "Hello world"; - private final OfferId offerId; private final Map<String, Map<String, String>> transports; public FileReadWriteTest() throws Exception { @@ -120,7 +118,6 @@ public class FileReadWriteTest extends TestCase { message3 = messageEncoder.encodeMessage(MessageId.NONE, group1, groupKeyPair.getPrivate(), author, authorKeyPair.getPrivate(), messageBody.getBytes("UTF-8")); - offerId = new OfferId(TestUtils.getRandomId()); transports = Collections.singletonMap("foo", Collections.singletonMap("bar", "baz")); } @@ -160,7 +157,7 @@ public class FileReadWriteTest extends TestCase { BitSet requested = new BitSet(4); requested.set(1); requested.set(3); - r.writeRequest(offerId, requested, 4); + r.writeRequest(requested, 4); SubscriptionWriter s = protocolWriterFactory.createSubscriptionWriter(out); @@ -229,7 +226,6 @@ public class FileReadWriteTest extends TestCase { // Read the request assertTrue(protocolReader.hasRequest()); Request req = protocolReader.readRequest(); - assertEquals(offerId, req.getOfferId()); BitSet requested = req.getBitmap(); assertFalse(requested.get(0)); assertTrue(requested.get(1)); diff --git a/test/net/sf/briar/db/DatabaseComponentTest.java b/test/net/sf/briar/db/DatabaseComponentTest.java index 9454785c95a135ed999a99f4575ddc5055f6079d..04297083df6d9fdefafcbc5ab65094d67d6f5f98 100644 --- a/test/net/sf/briar/db/DatabaseComponentTest.java +++ b/test/net/sf/briar/db/DatabaseComponentTest.java @@ -25,7 +25,6 @@ import net.sf.briar.api.protocol.GroupId; import net.sf.briar.api.protocol.Message; import net.sf.briar.api.protocol.MessageId; import net.sf.briar.api.protocol.Offer; -import net.sf.briar.api.protocol.OfferId; import net.sf.briar.api.protocol.SubscriptionUpdate; import net.sf.briar.api.protocol.TransportUpdate; import net.sf.briar.api.protocol.writers.AckWriter; @@ -50,7 +49,6 @@ public abstract class DatabaseComponentTest extends TestCase { protected final ContactId contactId; protected final GroupId groupId; protected final MessageId messageId, parentId; - protected final OfferId offerId; private final long timestamp; private final int size; private final byte[] raw; @@ -67,7 +65,6 @@ public abstract class DatabaseComponentTest extends TestCase { groupId = new GroupId(TestUtils.getRandomId()); messageId = new MessageId(TestUtils.getRandomId()); parentId = new MessageId(TestUtils.getRandomId()); - offerId = new OfferId(TestUtils.getRandomId()); timestamp = System.currentTimeMillis(); size = 1234; raw = new byte[size]; @@ -1036,9 +1033,7 @@ public abstract class DatabaseComponentTest extends TestCase { will(returnValue(true)); // Visible - do not request message # 1 oneOf(database).setStatusSeenIfVisible(txn, contactId, messageId2); will(returnValue(false)); // Not visible - request message # 2 - oneOf(offer).getId(); - will(returnValue(offerId)); - oneOf(requestWriter).writeRequest(offerId, expectedRequest, 3); + oneOf(requestWriter).writeRequest(expectedRequest, 3); }}); DatabaseComponent db = createDatabaseComponent(database, cleaner); diff --git a/test/net/sf/briar/protocol/ProtocolReadWriteTest.java b/test/net/sf/briar/protocol/ProtocolReadWriteTest.java index 537da36b5e1eb32c0bb852f783294cd2a8363d27..393a86816fff98df3f9b8c426b96fdb9dbfdf555 100644 --- a/test/net/sf/briar/protocol/ProtocolReadWriteTest.java +++ b/test/net/sf/briar/protocol/ProtocolReadWriteTest.java @@ -17,7 +17,6 @@ import net.sf.briar.api.protocol.Message; import net.sf.briar.api.protocol.MessageEncoder; import net.sf.briar.api.protocol.MessageId; import net.sf.briar.api.protocol.Offer; -import net.sf.briar.api.protocol.OfferId; import net.sf.briar.api.protocol.ProtocolReader; import net.sf.briar.api.protocol.ProtocolReaderFactory; import net.sf.briar.api.protocol.Request; @@ -47,7 +46,6 @@ public class ProtocolReadWriteTest extends TestCase { private final Group group; private final Message message; private final String messageBody = "Hello world"; - private final OfferId offerId; private final BitSet bitSet; private final Map<Group, Long> subscriptions; private final Map<String, Map<String, String>> transports; @@ -65,7 +63,6 @@ public class ProtocolReadWriteTest extends TestCase { MessageEncoder messageEncoder = i.getInstance(MessageEncoder.class); message = messageEncoder.encodeMessage(MessageId.NONE, group, messageBody.getBytes("UTF-8")); - offerId = new OfferId(TestUtils.getRandomId()); bitSet = new BitSet(); bitSet.set(3); bitSet.set(7); @@ -92,7 +89,7 @@ public class ProtocolReadWriteTest extends TestCase { o.finish(); RequestWriter r = writerFactory.createRequestWriter(out); - r.writeRequest(offerId, bitSet, 10); + r.writeRequest(bitSet, 10); SubscriptionWriter s = writerFactory.createSubscriptionWriter(out); s.writeSubscriptions(subscriptions, timestamp); diff --git a/test/net/sf/briar/protocol/RequestReaderTest.java b/test/net/sf/briar/protocol/RequestReaderTest.java index 8be4c17049b808a2f7357cfd73c359796cfdb379..d93ec834a668a8246462879be445b0a72777d60c 100644 --- a/test/net/sf/briar/protocol/RequestReaderTest.java +++ b/test/net/sf/briar/protocol/RequestReaderTest.java @@ -6,11 +6,9 @@ import java.util.BitSet; import junit.framework.TestCase; import net.sf.briar.api.FormatException; -import net.sf.briar.api.protocol.OfferId; import net.sf.briar.api.protocol.ProtocolConstants; import net.sf.briar.api.protocol.Request; import net.sf.briar.api.protocol.Tags; -import net.sf.briar.api.protocol.UniqueId; import net.sf.briar.api.serial.Reader; import net.sf.briar.api.serial.ReaderFactory; import net.sf.briar.api.serial.Writer; @@ -41,8 +39,7 @@ public class RequestReaderTest extends TestCase { @Test public void testFormatExceptionIfRequestIsTooLarge() throws Exception { RequestFactory requestFactory = context.mock(RequestFactory.class); - RequestReader requestReader = - new RequestReader(new OfferIdReader(), requestFactory); + RequestReader requestReader = new RequestReader(requestFactory); byte[] b = createRequest(true); ByteArrayInputStream in = new ByteArrayInputStream(b); @@ -60,12 +57,10 @@ public class RequestReaderTest extends TestCase { public void testNoFormatExceptionIfRequestIsMaximumSize() throws Exception { final RequestFactory requestFactory = context.mock(RequestFactory.class); - RequestReader requestReader = - new RequestReader(new OfferIdReader(), requestFactory); + RequestReader requestReader = new RequestReader(requestFactory); final Request request = context.mock(Request.class); context.checking(new Expectations() {{ - oneOf(requestFactory).createRequest(with(any(OfferId.class)), - with(any(BitSet.class))); + oneOf(requestFactory).createRequest(with(any(BitSet.class))); will(returnValue(request)); }}); @@ -101,8 +96,8 @@ public class RequestReaderTest extends TestCase { // Deserialise the request ByteArrayInputStream in = new ByteArrayInputStream(b); Reader reader = readerFactory.createReader(in); - RequestReader requestReader = new RequestReader(new OfferIdReader(), - new RequestFactoryImpl()); + RequestReader requestReader = + new RequestReader(new RequestFactoryImpl()); reader.addObjectReader(Tags.REQUEST, requestReader); Request r = reader.readUserDefined(Tags.REQUEST, Request.class); BitSet decoded = r.getBitmap(); @@ -121,14 +116,9 @@ public class RequestReaderTest extends TestCase { ByteArrayOutputStream out = new ByteArrayOutputStream(); Writer w = writerFactory.createWriter(out); w.writeUserDefinedTag(Tags.REQUEST); - w.writeUserDefinedTag(Tags.OFFER_ID); - w.writeBytes(new byte[UniqueId.LENGTH]); - // Allow one byte for the REQUEST tag, one byte for the OFFER_ID tag, - // one byte for the BYTES tag, one byte for the length as a uint7, - // UniqueID.LENGTH bytes for the offer ID, one byte for the BYTES tag, + // Allow one byte for the REQUEST tag, one byte for the BYTES tag, // and five bytes for the length as an int32 - int overhead = UniqueId.LENGTH + 10; - int size = ProtocolConstants.MAX_PACKET_LENGTH - overhead; + int size = ProtocolConstants.MAX_PACKET_LENGTH - 7; if(tooBig) size++; w.writeBytes(new byte[size]); assertEquals(tooBig, out.size() > ProtocolConstants.MAX_PACKET_LENGTH); @@ -139,8 +129,6 @@ public class RequestReaderTest extends TestCase { ByteArrayOutputStream out = new ByteArrayOutputStream(); Writer w = writerFactory.createWriter(out); w.writeUserDefinedTag(Tags.REQUEST); - w.writeUserDefinedTag(Tags.OFFER_ID); - w.writeBytes(new byte[UniqueId.LENGTH]); w.writeBytes(bitmap); return out.toByteArray(); } diff --git a/test/net/sf/briar/protocol/writers/ConstantsTest.java b/test/net/sf/briar/protocol/writers/ConstantsTest.java index 1a57de911366b383ae6658b9aada4e61390f30af..45b08284dd12802a6bb9930a9136922979e79935 100644 --- a/test/net/sf/briar/protocol/writers/ConstantsTest.java +++ b/test/net/sf/briar/protocol/writers/ConstantsTest.java @@ -108,8 +108,7 @@ public class ConstantsTest extends TestCase { // Create an offer with the maximum number of message IDs ByteArrayOutputStream out = new ByteArrayOutputStream( ProtocolConstants.MAX_PACKET_LENGTH); - OfferWriter o = new OfferWriterImpl(out, writerFactory, - crypto.getMessageDigest()); + OfferWriter o = new OfferWriterImpl(out, writerFactory); for(int i = 0; i < Offer.MAX_IDS_PER_OFFER; i++) { assertTrue(o.writeMessageId(new MessageId( TestUtils.getRandomId()))); diff --git a/test/net/sf/briar/protocol/writers/RequestWriterImplTest.java b/test/net/sf/briar/protocol/writers/RequestWriterImplTest.java index e7e5d7e73f3577cc18fba3bad26003a6a3efa749..c9a5f178fee289eaa3df84b50d40dc73e1adc384 100644 --- a/test/net/sf/briar/protocol/writers/RequestWriterImplTest.java +++ b/test/net/sf/briar/protocol/writers/RequestWriterImplTest.java @@ -5,8 +5,6 @@ import java.io.IOException; import java.util.BitSet; import junit.framework.TestCase; -import net.sf.briar.api.protocol.OfferId; -import net.sf.briar.api.protocol.UniqueId; import net.sf.briar.api.protocol.writers.RequestWriter; import net.sf.briar.api.serial.WriterFactory; import net.sf.briar.serial.SerialModule; @@ -20,13 +18,11 @@ import com.google.inject.Injector; public class RequestWriterImplTest extends TestCase { private final WriterFactory writerFactory; - private final OfferId offerId; public RequestWriterImplTest() { super(); Injector i = Guice.createInjector(new SerialModule()); writerFactory = i.getInstance(WriterFactory.class); - offerId = new OfferId(new byte[UniqueId.LENGTH]); } @Test @@ -45,14 +41,10 @@ public class RequestWriterImplTest extends TestCase { b.set(11); b.set(12); b.set(15); - r.writeRequest(offerId, b, 16); - // Short user tag 11, short user tag 10, bytes with length 32 as a - // uint7, 32 zero bytes, short bytes with length 2, 0xD959 + r.writeRequest(b, 16); + // Short user tag 11, short bytes with length 2, 0xD959 byte[] output = out.toByteArray(); - assertEquals("CB" + "CA" + "F6" + "20" - + "00000000000000000000000000000000" - + "00000000000000000000000000000000" - + "92" + "D959", StringUtils.toHexString(output)); + assertEquals("CB" + "92" + "D959", StringUtils.toHexString(output)); } @Test @@ -70,13 +62,9 @@ public class RequestWriterImplTest extends TestCase { b.set(9); b.set(11); b.set(12); - r.writeRequest(offerId, b, 13); - // Short user tag 11, short user tag 10, bytes with length 32 as a - // uint7, 32 zero bytes, short bytes with length 2, 0x59D8 + r.writeRequest(b, 13); + // Short user tag 11, short bytes with length 2, 0x59D8 byte[] output = out.toByteArray(); - assertEquals("CB" + "CA" + "F6" + "20" - + "00000000000000000000000000000000" - + "00000000000000000000000000000000" - + "92" + "59D8", StringUtils.toHexString(output)); + assertEquals("CB" + "92" + "59D8", StringUtils.toHexString(output)); } }