Merged clock and os packages, moved events into their own package.

This commit is contained in:
akwizgran
2014-01-08 15:45:02 +00:00
parent 58da9c2265
commit dce70f487c
89 changed files with 288 additions and 288 deletions

View File

@@ -8,9 +8,9 @@ import java.util.logging.Logger;
import javax.inject.Inject;
import net.sf.briar.api.clock.Timer;
import net.sf.briar.api.db.DbClosedException;
import net.sf.briar.api.db.DbException;
import net.sf.briar.api.system.Timer;
class DatabaseCleanerImpl extends TimerTask implements DatabaseCleaner {

View File

@@ -30,7 +30,6 @@ import net.sf.briar.api.LocalAuthor;
import net.sf.briar.api.TransportConfig;
import net.sf.briar.api.TransportId;
import net.sf.briar.api.TransportProperties;
import net.sf.briar.api.clock.Clock;
import net.sf.briar.api.db.ContactExistsException;
import net.sf.briar.api.db.DatabaseComponent;
import net.sf.briar.api.db.DbException;
@@ -41,26 +40,26 @@ import net.sf.briar.api.db.NoSuchLocalAuthorException;
import net.sf.briar.api.db.NoSuchMessageException;
import net.sf.briar.api.db.NoSuchSubscriptionException;
import net.sf.briar.api.db.NoSuchTransportException;
import net.sf.briar.api.db.event.ContactAddedEvent;
import net.sf.briar.api.db.event.ContactRemovedEvent;
import net.sf.briar.api.db.event.DatabaseEvent;
import net.sf.briar.api.db.event.DatabaseListener;
import net.sf.briar.api.db.event.LocalAuthorAddedEvent;
import net.sf.briar.api.db.event.LocalAuthorRemovedEvent;
import net.sf.briar.api.db.event.LocalSubscriptionsUpdatedEvent;
import net.sf.briar.api.db.event.LocalTransportsUpdatedEvent;
import net.sf.briar.api.db.event.MessageAddedEvent;
import net.sf.briar.api.db.event.MessageExpiredEvent;
import net.sf.briar.api.db.event.MessageRequestedEvent;
import net.sf.briar.api.db.event.MessageToAckEvent;
import net.sf.briar.api.db.event.MessageToRequestEvent;
import net.sf.briar.api.db.event.RemoteRetentionTimeUpdatedEvent;
import net.sf.briar.api.db.event.RemoteSubscriptionsUpdatedEvent;
import net.sf.briar.api.db.event.RemoteTransportsUpdatedEvent;
import net.sf.briar.api.db.event.SubscriptionAddedEvent;
import net.sf.briar.api.db.event.SubscriptionRemovedEvent;
import net.sf.briar.api.db.event.TransportAddedEvent;
import net.sf.briar.api.db.event.TransportRemovedEvent;
import net.sf.briar.api.event.ContactAddedEvent;
import net.sf.briar.api.event.ContactRemovedEvent;
import net.sf.briar.api.event.Event;
import net.sf.briar.api.event.EventListener;
import net.sf.briar.api.event.LocalAuthorAddedEvent;
import net.sf.briar.api.event.LocalAuthorRemovedEvent;
import net.sf.briar.api.event.LocalSubscriptionsUpdatedEvent;
import net.sf.briar.api.event.LocalTransportsUpdatedEvent;
import net.sf.briar.api.event.MessageAddedEvent;
import net.sf.briar.api.event.MessageExpiredEvent;
import net.sf.briar.api.event.MessageRequestedEvent;
import net.sf.briar.api.event.MessageToAckEvent;
import net.sf.briar.api.event.MessageToRequestEvent;
import net.sf.briar.api.event.RemoteRetentionTimeUpdatedEvent;
import net.sf.briar.api.event.RemoteSubscriptionsUpdatedEvent;
import net.sf.briar.api.event.RemoteTransportsUpdatedEvent;
import net.sf.briar.api.event.SubscriptionAddedEvent;
import net.sf.briar.api.event.SubscriptionRemovedEvent;
import net.sf.briar.api.event.TransportAddedEvent;
import net.sf.briar.api.event.TransportRemovedEvent;
import net.sf.briar.api.lifecycle.ShutdownManager;
import net.sf.briar.api.messaging.Ack;
import net.sf.briar.api.messaging.Group;
@@ -76,6 +75,7 @@ import net.sf.briar.api.messaging.SubscriptionAck;
import net.sf.briar.api.messaging.SubscriptionUpdate;
import net.sf.briar.api.messaging.TransportAck;
import net.sf.briar.api.messaging.TransportUpdate;
import net.sf.briar.api.system.Clock;
import net.sf.briar.api.transport.Endpoint;
import net.sf.briar.api.transport.TemporarySecret;
@@ -117,8 +117,8 @@ DatabaseCleaner.Callback {
private final ShutdownManager shutdown;
private final Clock clock;
private final Collection<DatabaseListener> listeners =
new CopyOnWriteArrayList<DatabaseListener>();
private final Collection<EventListener> listeners =
new CopyOnWriteArrayList<EventListener>();
private final Object spaceLock = new Object();
private long bytesStoredSinceLastCheck = 0; // Locking: spaceLock
@@ -174,11 +174,11 @@ DatabaseCleaner.Callback {
}
}
public void addListener(DatabaseListener d) {
public void addListener(EventListener d) {
listeners.add(d);
}
public void removeListener(DatabaseListener d) {
public void removeListener(EventListener d) {
listeners.remove(d);
}
@@ -237,8 +237,8 @@ DatabaseCleaner.Callback {
}
/** Notifies all listeners of a database event. */
private void callListeners(DatabaseEvent e) {
for(DatabaseListener d : listeners) d.eventOccurred(e);
private void callListeners(Event e) {
for(EventListener d : listeners) d.eventOccurred(e);
}
public void addEndpoint(Endpoint ep) throws DbException {

View File

@@ -12,14 +12,14 @@ import java.util.concurrent.ThreadPoolExecutor;
import javax.inject.Singleton;
import net.sf.briar.api.clock.Clock;
import net.sf.briar.api.clock.SystemClock;
import net.sf.briar.api.db.DatabaseComponent;
import net.sf.briar.api.db.DatabaseConfig;
import net.sf.briar.api.db.DatabaseExecutor;
import net.sf.briar.api.lifecycle.LifecycleManager;
import net.sf.briar.api.lifecycle.ShutdownManager;
import net.sf.briar.api.os.FileUtils;
import net.sf.briar.api.system.Clock;
import net.sf.briar.api.system.FileUtils;
import net.sf.briar.api.system.SystemClock;
import com.google.inject.AbstractModule;
import com.google.inject.Provides;

View File

@@ -10,10 +10,10 @@ import java.util.Properties;
import javax.inject.Inject;
import net.sf.briar.api.clock.Clock;
import net.sf.briar.api.db.DatabaseConfig;
import net.sf.briar.api.db.DbException;
import net.sf.briar.api.os.FileUtils;
import net.sf.briar.api.system.Clock;
import net.sf.briar.api.system.FileUtils;
import net.sf.briar.util.StringUtils;
/** Contains all the H2-specific code for the database. */

View File

@@ -32,7 +32,6 @@ import net.sf.briar.api.LocalAuthor;
import net.sf.briar.api.TransportConfig;
import net.sf.briar.api.TransportId;
import net.sf.briar.api.TransportProperties;
import net.sf.briar.api.clock.Clock;
import net.sf.briar.api.db.DbClosedException;
import net.sf.briar.api.db.DbException;
import net.sf.briar.api.db.MessageHeader;
@@ -47,6 +46,7 @@ import net.sf.briar.api.messaging.SubscriptionAck;
import net.sf.briar.api.messaging.SubscriptionUpdate;
import net.sf.briar.api.messaging.TransportAck;
import net.sf.briar.api.messaging.TransportUpdate;
import net.sf.briar.api.system.Clock;
import net.sf.briar.api.transport.Endpoint;
import net.sf.briar.api.transport.TemporarySecret;

View File

@@ -15,7 +15,6 @@ import net.sf.briar.api.AuthorFactory;
import net.sf.briar.api.LocalAuthor;
import net.sf.briar.api.TransportId;
import net.sf.briar.api.TransportProperties;
import net.sf.briar.api.clock.Clock;
import net.sf.briar.api.crypto.CryptoComponent;
import net.sf.briar.api.crypto.KeyManager;
import net.sf.briar.api.crypto.PseudoRandom;
@@ -28,6 +27,7 @@ import net.sf.briar.api.serial.Reader;
import net.sf.briar.api.serial.ReaderFactory;
import net.sf.briar.api.serial.Writer;
import net.sf.briar.api.serial.WriterFactory;
import net.sf.briar.api.system.Clock;
import net.sf.briar.api.transport.ConnectionDispatcher;
import net.sf.briar.api.transport.ConnectionReader;
import net.sf.briar.api.transport.ConnectionReaderFactory;

View File

@@ -15,7 +15,6 @@ import net.sf.briar.api.AuthorFactory;
import net.sf.briar.api.LocalAuthor;
import net.sf.briar.api.TransportId;
import net.sf.briar.api.TransportProperties;
import net.sf.briar.api.clock.Clock;
import net.sf.briar.api.crypto.CryptoComponent;
import net.sf.briar.api.crypto.KeyManager;
import net.sf.briar.api.crypto.PseudoRandom;
@@ -28,6 +27,7 @@ import net.sf.briar.api.serial.Reader;
import net.sf.briar.api.serial.ReaderFactory;
import net.sf.briar.api.serial.Writer;
import net.sf.briar.api.serial.WriterFactory;
import net.sf.briar.api.system.Clock;
import net.sf.briar.api.transport.ConnectionDispatcher;
import net.sf.briar.api.transport.ConnectionReader;
import net.sf.briar.api.transport.ConnectionReaderFactory;

View File

@@ -30,7 +30,6 @@ import net.sf.briar.api.LocalAuthor;
import net.sf.briar.api.TransportId;
import net.sf.briar.api.TransportProperties;
import net.sf.briar.api.UniqueId;
import net.sf.briar.api.clock.Clock;
import net.sf.briar.api.crypto.CryptoComponent;
import net.sf.briar.api.crypto.KeyManager;
import net.sf.briar.api.crypto.KeyPair;
@@ -50,6 +49,7 @@ import net.sf.briar.api.serial.Reader;
import net.sf.briar.api.serial.ReaderFactory;
import net.sf.briar.api.serial.Writer;
import net.sf.briar.api.serial.WriterFactory;
import net.sf.briar.api.system.Clock;
import net.sf.briar.api.transport.ConnectionDispatcher;
import net.sf.briar.api.transport.ConnectionReaderFactory;
import net.sf.briar.api.transport.ConnectionWriterFactory;

View File

@@ -18,7 +18,6 @@ import net.sf.briar.api.AuthorId;
import net.sf.briar.api.LocalAuthor;
import net.sf.briar.api.TransportId;
import net.sf.briar.api.TransportProperties;
import net.sf.briar.api.clock.Clock;
import net.sf.briar.api.crypto.CryptoComponent;
import net.sf.briar.api.crypto.KeyManager;
import net.sf.briar.api.crypto.PseudoRandom;
@@ -32,6 +31,7 @@ import net.sf.briar.api.plugins.PluginManager;
import net.sf.briar.api.plugins.duplex.DuplexPlugin;
import net.sf.briar.api.serial.ReaderFactory;
import net.sf.briar.api.serial.WriterFactory;
import net.sf.briar.api.system.Clock;
import net.sf.briar.api.transport.ConnectionDispatcher;
import net.sf.briar.api.transport.ConnectionReaderFactory;
import net.sf.briar.api.transport.ConnectionWriterFactory;

View File

@@ -4,7 +4,6 @@ import javax.inject.Inject;
import net.sf.briar.api.AuthorFactory;
import net.sf.briar.api.AuthorId;
import net.sf.briar.api.clock.Clock;
import net.sf.briar.api.crypto.CryptoComponent;
import net.sf.briar.api.crypto.KeyManager;
import net.sf.briar.api.db.DatabaseComponent;
@@ -14,6 +13,7 @@ import net.sf.briar.api.messaging.GroupFactory;
import net.sf.briar.api.plugins.PluginManager;
import net.sf.briar.api.serial.ReaderFactory;
import net.sf.briar.api.serial.WriterFactory;
import net.sf.briar.api.system.Clock;
import net.sf.briar.api.transport.ConnectionDispatcher;
import net.sf.briar.api.transport.ConnectionReaderFactory;
import net.sf.briar.api.transport.ConnectionWriterFactory;

View File

@@ -7,7 +7,6 @@ import java.security.GeneralSecurityException;
import javax.inject.Inject;
import net.sf.briar.api.Author;
import net.sf.briar.api.clock.Clock;
import net.sf.briar.api.crypto.CryptoComponent;
import net.sf.briar.api.crypto.KeyParser;
import net.sf.briar.api.crypto.MessageDigest;
@@ -17,6 +16,7 @@ import net.sf.briar.api.messaging.Message;
import net.sf.briar.api.messaging.MessageId;
import net.sf.briar.api.messaging.MessageVerifier;
import net.sf.briar.api.messaging.UnverifiedMessage;
import net.sf.briar.api.system.Clock;
class MessageVerifierImpl implements MessageVerifier {

View File

@@ -20,19 +20,19 @@ import net.sf.briar.api.FormatException;
import net.sf.briar.api.TransportId;
import net.sf.briar.api.db.DatabaseComponent;
import net.sf.briar.api.db.DbException;
import net.sf.briar.api.db.event.ContactRemovedEvent;
import net.sf.briar.api.db.event.DatabaseEvent;
import net.sf.briar.api.db.event.DatabaseListener;
import net.sf.briar.api.db.event.LocalSubscriptionsUpdatedEvent;
import net.sf.briar.api.db.event.LocalTransportsUpdatedEvent;
import net.sf.briar.api.db.event.MessageAddedEvent;
import net.sf.briar.api.db.event.MessageExpiredEvent;
import net.sf.briar.api.db.event.MessageRequestedEvent;
import net.sf.briar.api.db.event.MessageToAckEvent;
import net.sf.briar.api.db.event.MessageToRequestEvent;
import net.sf.briar.api.db.event.RemoteRetentionTimeUpdatedEvent;
import net.sf.briar.api.db.event.RemoteSubscriptionsUpdatedEvent;
import net.sf.briar.api.db.event.RemoteTransportsUpdatedEvent;
import net.sf.briar.api.event.ContactRemovedEvent;
import net.sf.briar.api.event.Event;
import net.sf.briar.api.event.EventListener;
import net.sf.briar.api.event.LocalSubscriptionsUpdatedEvent;
import net.sf.briar.api.event.LocalTransportsUpdatedEvent;
import net.sf.briar.api.event.MessageAddedEvent;
import net.sf.briar.api.event.MessageExpiredEvent;
import net.sf.briar.api.event.MessageRequestedEvent;
import net.sf.briar.api.event.MessageToAckEvent;
import net.sf.briar.api.event.MessageToRequestEvent;
import net.sf.briar.api.event.RemoteRetentionTimeUpdatedEvent;
import net.sf.briar.api.event.RemoteSubscriptionsUpdatedEvent;
import net.sf.briar.api.event.RemoteTransportsUpdatedEvent;
import net.sf.briar.api.messaging.Ack;
import net.sf.briar.api.messaging.Message;
import net.sf.briar.api.messaging.MessageVerifier;
@@ -58,7 +58,7 @@ import net.sf.briar.api.transport.ConnectionWriter;
import net.sf.briar.api.transport.ConnectionWriterFactory;
import net.sf.briar.util.ByteUtils;
abstract class DuplexConnection implements DatabaseListener {
abstract class DuplexConnection implements EventListener {
private static final Logger LOG =
Logger.getLogger(DuplexConnection.class.getName());
@@ -122,7 +122,7 @@ abstract class DuplexConnection implements DatabaseListener {
protected abstract ConnectionWriter createConnectionWriter()
throws IOException;
public void eventOccurred(DatabaseEvent e) {
public void eventOccurred(Event e) {
if(e instanceof ContactRemovedEvent) {
ContactRemovedEvent c = (ContactRemovedEvent) e;
if(contactId.equals(c.getContactId())) writerTasks.add(CLOSE);

View File

@@ -11,9 +11,9 @@ import java.util.logging.Logger;
import javax.inject.Inject;
import net.sf.briar.api.ContactId;
import net.sf.briar.api.clock.Clock;
import net.sf.briar.api.plugins.Plugin;
import net.sf.briar.api.plugins.PluginExecutor;
import net.sf.briar.api.system.Clock;
import net.sf.briar.api.transport.ConnectionRegistry;
class PollerImpl implements Poller, Runnable {

View File

@@ -13,11 +13,11 @@ import java.util.concurrent.Executor;
import java.util.logging.Logger;
import net.sf.briar.api.ContactId;
import net.sf.briar.api.os.FileUtils;
import net.sf.briar.api.plugins.simplex.SimplexPlugin;
import net.sf.briar.api.plugins.simplex.SimplexPluginCallback;
import net.sf.briar.api.plugins.simplex.SimplexTransportReader;
import net.sf.briar.api.plugins.simplex.SimplexTransportWriter;
import net.sf.briar.api.system.FileUtils;
public abstract class FilePlugin implements SimplexPlugin {

View File

@@ -23,10 +23,10 @@ import java.util.logging.Logger;
import net.sf.briar.api.TransportId;
import net.sf.briar.api.TransportProperties;
import net.sf.briar.api.clock.Clock;
import net.sf.briar.api.crypto.PseudoRandom;
import net.sf.briar.api.plugins.duplex.DuplexPluginCallback;
import net.sf.briar.api.plugins.duplex.DuplexTransportConnection;
import net.sf.briar.api.system.Clock;
import net.sf.briar.util.ByteUtils;
import net.sf.briar.util.LatchedReference;
import net.sf.briar.util.StringUtils;

View File

@@ -3,11 +3,11 @@ package net.sf.briar.plugins.tcp;
import java.util.concurrent.Executor;
import net.sf.briar.api.TransportId;
import net.sf.briar.api.clock.Clock;
import net.sf.briar.api.clock.SystemClock;
import net.sf.briar.api.plugins.duplex.DuplexPlugin;
import net.sf.briar.api.plugins.duplex.DuplexPluginCallback;
import net.sf.briar.api.plugins.duplex.DuplexPluginFactory;
import net.sf.briar.api.system.Clock;
import net.sf.briar.api.system.SystemClock;
public class LanTcpPluginFactory implements DuplexPluginFactory {

View File

@@ -6,8 +6,8 @@ import java.util.Iterator;
import java.util.SortedSet;
import java.util.TreeSet;
import net.sf.briar.api.clock.Clock;
import net.sf.briar.api.reliability.ReadHandler;
import net.sf.briar.api.system.Clock;
class Receiver implements ReadHandler {

View File

@@ -4,12 +4,12 @@ import java.util.concurrent.Executor;
import javax.inject.Inject;
import net.sf.briar.api.clock.Clock;
import net.sf.briar.api.clock.SystemClock;
import net.sf.briar.api.reliability.ReliabilityExecutor;
import net.sf.briar.api.reliability.ReliabilityLayer;
import net.sf.briar.api.reliability.ReliabilityLayerFactory;
import net.sf.briar.api.reliability.WriteHandler;
import net.sf.briar.api.system.Clock;
import net.sf.briar.api.system.SystemClock;
class ReliabilityLayerFactoryImpl implements ReliabilityLayerFactory {

View File

@@ -11,9 +11,9 @@ import java.util.concurrent.Executor;
import java.util.concurrent.LinkedBlockingQueue;
import java.util.logging.Logger;
import net.sf.briar.api.clock.Clock;
import net.sf.briar.api.reliability.ReliabilityLayer;
import net.sf.briar.api.reliability.WriteHandler;
import net.sf.briar.api.system.Clock;
class ReliabilityLayerImpl implements ReliabilityLayer, WriteHandler {

View File

@@ -6,8 +6,8 @@ import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
import net.sf.briar.api.clock.Clock;
import net.sf.briar.api.reliability.WriteHandler;
import net.sf.briar.api.system.Clock;
class Sender {

View File

@@ -1,9 +1,9 @@
package net.sf.briar.clock;
package net.sf.briar.system;
import net.sf.briar.api.clock.Clock;
import net.sf.briar.api.clock.SystemClock;
import net.sf.briar.api.clock.SystemTimer;
import net.sf.briar.api.clock.Timer;
import net.sf.briar.api.system.Clock;
import net.sf.briar.api.system.SystemClock;
import net.sf.briar.api.system.SystemTimer;
import net.sf.briar.api.system.Timer;
import com.google.inject.AbstractModule;

View File

@@ -18,17 +18,17 @@ import javax.inject.Inject;
import net.sf.briar.api.ContactId;
import net.sf.briar.api.TransportId;
import net.sf.briar.api.clock.Clock;
import net.sf.briar.api.clock.Timer;
import net.sf.briar.api.crypto.CryptoComponent;
import net.sf.briar.api.crypto.KeyManager;
import net.sf.briar.api.db.DatabaseComponent;
import net.sf.briar.api.db.DbException;
import net.sf.briar.api.db.event.ContactRemovedEvent;
import net.sf.briar.api.db.event.DatabaseEvent;
import net.sf.briar.api.db.event.DatabaseListener;
import net.sf.briar.api.db.event.TransportAddedEvent;
import net.sf.briar.api.db.event.TransportRemovedEvent;
import net.sf.briar.api.event.ContactRemovedEvent;
import net.sf.briar.api.event.Event;
import net.sf.briar.api.event.EventListener;
import net.sf.briar.api.event.TransportAddedEvent;
import net.sf.briar.api.event.TransportRemovedEvent;
import net.sf.briar.api.system.Clock;
import net.sf.briar.api.system.Timer;
import net.sf.briar.api.transport.ConnectionContext;
import net.sf.briar.api.transport.ConnectionRecogniser;
import net.sf.briar.api.transport.Endpoint;
@@ -36,7 +36,7 @@ import net.sf.briar.api.transport.TemporarySecret;
import net.sf.briar.util.ByteUtils;
// FIXME: Don't make alien calls with a lock held
class KeyManagerImpl extends TimerTask implements KeyManager, DatabaseListener {
class KeyManagerImpl extends TimerTask implements KeyManager, EventListener {
private static final int MS_BETWEEN_CHECKS = 60 * 1000;
@@ -324,7 +324,7 @@ class KeyManagerImpl extends TimerTask implements KeyManager, DatabaseListener {
}
}
public void eventOccurred(DatabaseEvent e) {
public void eventOccurred(Event e) {
if(e instanceof ContactRemovedEvent) {
ContactRemovedEvent c = (ContactRemovedEvent) e;
timer.schedule(new ContactRemovedTask(c), 0);