Minor refactoring.

This commit is contained in:
akwizgran
2011-11-14 22:14:52 +00:00
parent 73aa7d14d7
commit 72be34768b
24 changed files with 130 additions and 177 deletions

View File

@@ -24,6 +24,7 @@ import net.sf.briar.api.protocol.BatchId;
import net.sf.briar.api.protocol.Group;
import net.sf.briar.api.protocol.GroupFactory;
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.ProtocolReader;
@@ -37,12 +38,11 @@ import net.sf.briar.api.protocol.TransportUpdate;
import net.sf.briar.api.protocol.UniqueId;
import net.sf.briar.api.protocol.writers.AckWriter;
import net.sf.briar.api.protocol.writers.BatchWriter;
import net.sf.briar.api.protocol.writers.MessageEncoder;
import net.sf.briar.api.protocol.writers.OfferWriter;
import net.sf.briar.api.protocol.writers.ProtocolWriterFactory;
import net.sf.briar.api.protocol.writers.RequestWriter;
import net.sf.briar.api.protocol.writers.SubscriptionWriter;
import net.sf.briar.api.protocol.writers.TransportWriter;
import net.sf.briar.api.protocol.writers.SubscriptionUpdateWriter;
import net.sf.briar.api.protocol.writers.TransportUpdateWriter;
import net.sf.briar.api.transport.ConnectionReader;
import net.sf.briar.api.transport.ConnectionReaderFactory;
import net.sf.briar.api.transport.ConnectionWriter;
@@ -167,15 +167,16 @@ public class ProtocolIntegrationTest extends TestCase {
requested.set(3);
r.writeRequest(requested, 4);
SubscriptionWriter s =
protocolWriterFactory.createSubscriptionWriter(out1);
SubscriptionUpdateWriter s =
protocolWriterFactory.createSubscriptionUpdateWriter(out1);
// Use a LinkedHashMap for predictable iteration order
Map<Group, Long> subs = new LinkedHashMap<Group, Long>();
subs.put(group, 0L);
subs.put(group1, 0L);
s.writeSubscriptions(subs, timestamp);
TransportWriter t = protocolWriterFactory.createTransportWriter(out1);
TransportUpdateWriter t =
protocolWriterFactory.createTransportUpdateWriter(out1);
t.writeTransports(transports, timestamp);
out1.close();

View File

@@ -40,8 +40,8 @@ import net.sf.briar.api.protocol.writers.AckWriter;
import net.sf.briar.api.protocol.writers.BatchWriter;
import net.sf.briar.api.protocol.writers.OfferWriter;
import net.sf.briar.api.protocol.writers.RequestWriter;
import net.sf.briar.api.protocol.writers.SubscriptionWriter;
import net.sf.briar.api.protocol.writers.TransportWriter;
import net.sf.briar.api.protocol.writers.SubscriptionUpdateWriter;
import net.sf.briar.api.protocol.writers.TransportUpdateWriter;
import net.sf.briar.api.transport.ConnectionWindow;
import org.jmock.Expectations;
@@ -488,10 +488,10 @@ public abstract class DatabaseComponentTest extends TestCase {
final AckWriter ackWriter = context.mock(AckWriter.class);
final BatchWriter batchWriter = context.mock(BatchWriter.class);
final OfferWriter offerWriter = context.mock(OfferWriter.class);
final SubscriptionWriter subscriptionWriter =
context.mock(SubscriptionWriter.class);
final TransportWriter transportWriter =
context.mock(TransportWriter.class);
final SubscriptionUpdateWriter subscriptionUpdateWriter =
context.mock(SubscriptionUpdateWriter.class);
final TransportUpdateWriter transportUpdateWriter =
context.mock(TransportUpdateWriter.class);
final Ack ack = context.mock(Ack.class);
final Batch batch = context.mock(Batch.class);
final Offer offer = context.mock(Offer.class);
@@ -537,12 +537,12 @@ public abstract class DatabaseComponentTest extends TestCase {
} catch(NoSuchContactException expected) {}
try {
db.generateSubscriptionUpdate(contactId, subscriptionWriter);
db.generateSubscriptionUpdate(contactId, subscriptionUpdateWriter);
fail();
} catch(NoSuchContactException expected) {}
try {
db.generateTransportUpdate(contactId, transportWriter);
db.generateTransportUpdate(contactId, transportUpdateWriter);
fail();
} catch(NoSuchContactException expected) {}
@@ -771,8 +771,8 @@ public abstract class DatabaseComponentTest extends TestCase {
@SuppressWarnings("unchecked")
final Database<Object> database = context.mock(Database.class);
final DatabaseCleaner cleaner = context.mock(DatabaseCleaner.class);
final SubscriptionWriter subscriptionWriter =
context.mock(SubscriptionWriter.class);
final SubscriptionUpdateWriter subscriptionUpdateWriter =
context.mock(SubscriptionUpdateWriter.class);
context.checking(new Expectations() {{
allowing(database).startTransaction();
will(returnValue(txn));
@@ -787,7 +787,7 @@ public abstract class DatabaseComponentTest extends TestCase {
}});
DatabaseComponent db = createDatabaseComponent(database, cleaner);
db.generateSubscriptionUpdate(contactId, subscriptionWriter);
db.generateSubscriptionUpdate(contactId, subscriptionUpdateWriter);
context.assertIsSatisfied();
}
@@ -802,8 +802,8 @@ public abstract class DatabaseComponentTest extends TestCase {
@SuppressWarnings("unchecked")
final Database<Object> database = context.mock(Database.class);
final DatabaseCleaner cleaner = context.mock(DatabaseCleaner.class);
final SubscriptionWriter subscriptionWriter =
context.mock(SubscriptionWriter.class);
final SubscriptionUpdateWriter subscriptionUpdateWriter =
context.mock(SubscriptionUpdateWriter.class);
context.checking(new Expectations() {{
allowing(database).startTransaction();
will(returnValue(txn));
@@ -821,13 +821,13 @@ public abstract class DatabaseComponentTest extends TestCase {
oneOf(database).setSubscriptionsSent(with(txn), with(contactId),
with(any(long.class)));
// Add the subscriptions to the writer
oneOf(subscriptionWriter).writeSubscriptions(
oneOf(subscriptionUpdateWriter).writeSubscriptions(
with(Collections.singletonMap(group, 0L)),
with(any(long.class)));
}});
DatabaseComponent db = createDatabaseComponent(database, cleaner);
db.generateSubscriptionUpdate(contactId, subscriptionWriter);
db.generateSubscriptionUpdate(contactId, subscriptionUpdateWriter);
context.assertIsSatisfied();
}
@@ -839,8 +839,8 @@ public abstract class DatabaseComponentTest extends TestCase {
@SuppressWarnings("unchecked")
final Database<Object> database = context.mock(Database.class);
final DatabaseCleaner cleaner = context.mock(DatabaseCleaner.class);
final TransportWriter transportWriter =
context.mock(TransportWriter.class);
final TransportUpdateWriter transportUpdateWriter =
context.mock(TransportUpdateWriter.class);
context.checking(new Expectations() {{
allowing(database).startTransaction();
will(returnValue(txn));
@@ -855,7 +855,7 @@ public abstract class DatabaseComponentTest extends TestCase {
}});
DatabaseComponent db = createDatabaseComponent(database, cleaner);
db.generateTransportUpdate(contactId, transportWriter);
db.generateTransportUpdate(contactId, transportUpdateWriter);
context.assertIsSatisfied();
}
@@ -870,8 +870,8 @@ public abstract class DatabaseComponentTest extends TestCase {
@SuppressWarnings("unchecked")
final Database<Object> database = context.mock(Database.class);
final DatabaseCleaner cleaner = context.mock(DatabaseCleaner.class);
final TransportWriter transportWriter =
context.mock(TransportWriter.class);
final TransportUpdateWriter transportUpdateWriter =
context.mock(TransportUpdateWriter.class);
context.checking(new Expectations() {{
allowing(database).startTransaction();
will(returnValue(txn));
@@ -889,12 +889,12 @@ public abstract class DatabaseComponentTest extends TestCase {
oneOf(database).setTransportsSent(with(txn), with(contactId),
with(any(long.class)));
// Add the properties to the writer
oneOf(transportWriter).writeTransports(with(transports),
oneOf(transportUpdateWriter).writeTransports(with(transports),
with(any(long.class)));
}});
DatabaseComponent db = createDatabaseComponent(database, cleaner);
db.generateTransportUpdate(contactId, transportWriter);
db.generateTransportUpdate(contactId, transportUpdateWriter);
context.assertIsSatisfied();
}

View File

@@ -15,6 +15,7 @@ import net.sf.briar.api.protocol.BatchId;
import net.sf.briar.api.protocol.Group;
import net.sf.briar.api.protocol.GroupFactory;
import net.sf.briar.api.protocol.Message;
import net.sf.briar.api.protocol.MessageEncoder;
import net.sf.briar.api.protocol.Offer;
import net.sf.briar.api.protocol.ProtocolReader;
import net.sf.briar.api.protocol.ProtocolReaderFactory;
@@ -26,12 +27,11 @@ import net.sf.briar.api.protocol.TransportIndex;
import net.sf.briar.api.protocol.TransportUpdate;
import net.sf.briar.api.protocol.writers.AckWriter;
import net.sf.briar.api.protocol.writers.BatchWriter;
import net.sf.briar.api.protocol.writers.MessageEncoder;
import net.sf.briar.api.protocol.writers.OfferWriter;
import net.sf.briar.api.protocol.writers.ProtocolWriterFactory;
import net.sf.briar.api.protocol.writers.RequestWriter;
import net.sf.briar.api.protocol.writers.SubscriptionWriter;
import net.sf.briar.api.protocol.writers.TransportWriter;
import net.sf.briar.api.protocol.writers.SubscriptionUpdateWriter;
import net.sf.briar.api.protocol.writers.TransportUpdateWriter;
import net.sf.briar.crypto.CryptoModule;
import net.sf.briar.protocol.writers.ProtocolWritersModule;
import net.sf.briar.serial.SerialModule;
@@ -99,10 +99,12 @@ public class ProtocolReadWriteTest extends TestCase {
RequestWriter r = writerFactory.createRequestWriter(out);
r.writeRequest(bitSet, 10);
SubscriptionWriter s = writerFactory.createSubscriptionWriter(out);
SubscriptionUpdateWriter s =
writerFactory.createSubscriptionUpdateWriter(out);
s.writeSubscriptions(subscriptions, timestamp);
TransportWriter t = writerFactory.createTransportWriter(out);
TransportUpdateWriter t =
writerFactory.createTransportUpdateWriter(out);
t.writeTransports(transports, timestamp);
// Read

View File

@@ -27,6 +27,7 @@ import net.sf.briar.api.protocol.BatchId;
import net.sf.briar.api.protocol.Group;
import net.sf.briar.api.protocol.GroupFactory;
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.Transport;
import net.sf.briar.api.protocol.TransportId;
@@ -34,10 +35,9 @@ import net.sf.briar.api.protocol.TransportIndex;
import net.sf.briar.api.protocol.UniqueId;
import net.sf.briar.api.protocol.writers.AckWriter;
import net.sf.briar.api.protocol.writers.BatchWriter;
import net.sf.briar.api.protocol.writers.MessageEncoder;
import net.sf.briar.api.protocol.writers.OfferWriter;
import net.sf.briar.api.protocol.writers.SubscriptionWriter;
import net.sf.briar.api.protocol.writers.TransportWriter;
import net.sf.briar.api.protocol.writers.SubscriptionUpdateWriter;
import net.sf.briar.api.protocol.writers.TransportUpdateWriter;
import net.sf.briar.api.serial.SerialComponent;
import net.sf.briar.api.serial.WriterFactory;
import net.sf.briar.crypto.CryptoModule;
@@ -61,8 +61,7 @@ public class ConstantsTest extends TestCase {
public ConstantsTest() throws Exception {
super();
Injector i = Guice.createInjector(new CryptoModule(),
new ProtocolModule(), new ProtocolWritersModule(),
new SerialModule());
new ProtocolModule(), new SerialModule());
writerFactory = i.getInstance(WriterFactory.class);
crypto = i.getInstance(CryptoComponent.class);
serial = i.getInstance(SerialComponent.class);
@@ -191,7 +190,8 @@ public class ConstantsTest extends TestCase {
// Add the subscriptions to an update
ByteArrayOutputStream out =
new ByteArrayOutputStream(MAX_PACKET_LENGTH);
SubscriptionWriter s = new SubscriptionWriterImpl(out, writerFactory);
SubscriptionUpdateWriter s =
new SubscriptionUpdateWriterImpl(out, writerFactory);
s.writeSubscriptions(subs, Long.MAX_VALUE);
// Check the size of the serialised update
assertTrue(out.size() > MAX_GROUPS *
@@ -218,7 +218,8 @@ public class ConstantsTest extends TestCase {
// Add the transports to an update
ByteArrayOutputStream out =
new ByteArrayOutputStream(MAX_PACKET_LENGTH);
TransportWriter t = new TransportWriterImpl(out, writerFactory);
TransportUpdateWriter t =
new TransportUpdateWriterImpl(out, writerFactory);
t.writeTransports(transports, Long.MAX_VALUE);
// Check the size of the serialised update
assertTrue(out.size() > MAX_TRANSPORTS * (UniqueId.LENGTH + 4 +

View File

@@ -19,12 +19,12 @@ import net.sf.briar.api.db.event.DatabaseEvent;
import net.sf.briar.api.db.event.DatabaseListener;
import net.sf.briar.api.db.event.MessagesAddedEvent;
import net.sf.briar.api.protocol.Message;
import net.sf.briar.api.protocol.MessageEncoder;
import net.sf.briar.api.protocol.ProtocolReaderFactory;
import net.sf.briar.api.protocol.Transport;
import net.sf.briar.api.protocol.TransportId;
import net.sf.briar.api.protocol.TransportIndex;
import net.sf.briar.api.protocol.TransportUpdate;
import net.sf.briar.api.protocol.writers.MessageEncoder;
import net.sf.briar.api.protocol.writers.ProtocolWriterFactory;
import net.sf.briar.api.transport.BatchTransportReader;
import net.sf.briar.api.transport.BatchTransportWriter;