Implement Service interface rather than extending it.

Whether or not a class needs to run as a service is an implementation decision.
This commit is contained in:
akwizgran
2016-01-19 15:50:29 +00:00
parent 2cd3a3a4f0
commit 33ef09a6bf
12 changed files with 90 additions and 72 deletions

View File

@@ -15,6 +15,7 @@ import org.briarproject.api.data.MetadataEncoder;
import org.briarproject.api.data.ObjectReader;
import org.briarproject.api.db.Metadata;
import org.briarproject.api.identity.Author;
import org.briarproject.api.lifecycle.Service;
import org.briarproject.api.sync.Message;
import org.briarproject.api.sync.MessageId;
import org.briarproject.api.sync.MessageValidator;
@@ -36,7 +37,7 @@ import static org.briarproject.api.sync.SyncConstants.MESSAGE_HEADER_LENGTH;
import static org.briarproject.api.transport.TransportConstants.MAX_CLOCK_DIFFERENCE;
import static org.briarproject.forum.ForumManagerImpl.CLIENT_ID;
class ForumPostValidator implements MessageValidator {
class ForumPostValidator implements MessageValidator, Service {
private static final Logger LOG =
Logger.getLogger(ForumPostValidator.class.getName());

View File

@@ -7,6 +7,7 @@ import org.briarproject.api.data.BdfReader;
import org.briarproject.api.data.BdfReaderFactory;
import org.briarproject.api.data.MetadataEncoder;
import org.briarproject.api.db.Metadata;
import org.briarproject.api.lifecycle.Service;
import org.briarproject.api.sync.Message;
import org.briarproject.api.sync.MessageId;
import org.briarproject.api.sync.MessageValidator;
@@ -25,7 +26,7 @@ import static org.briarproject.api.sync.SyncConstants.MESSAGE_HEADER_LENGTH;
import static org.briarproject.api.transport.TransportConstants.MAX_CLOCK_DIFFERENCE;
import static org.briarproject.messaging.MessagingManagerImpl.CLIENT_ID;
class PrivateMessageValidator implements MessageValidator {
class PrivateMessageValidator implements MessageValidator, Service {
private static final Logger LOG =
Logger.getLogger(PrivateMessageValidator.class.getName());

View File

@@ -10,6 +10,7 @@ import org.briarproject.api.event.EventBus;
import org.briarproject.api.event.TransportDisabledEvent;
import org.briarproject.api.event.TransportEnabledEvent;
import org.briarproject.api.lifecycle.IoExecutor;
import org.briarproject.api.lifecycle.Service;
import org.briarproject.api.plugins.ConnectionManager;
import org.briarproject.api.plugins.Plugin;
import org.briarproject.api.plugins.PluginCallback;
@@ -46,7 +47,7 @@ import javax.inject.Inject;
import static java.util.logging.Level.INFO;
import static java.util.logging.Level.WARNING;
class PluginManagerImpl implements PluginManager {
class PluginManagerImpl implements PluginManager, Service {
private static final Logger LOG =
Logger.getLogger(PluginManagerImpl.class.getName());
@@ -88,6 +89,7 @@ class PluginManagerImpl implements PluginManager {
duplexPlugins = new CopyOnWriteArrayList<DuplexPlugin>();
}
@Override
public boolean start() {
// Instantiate and start the simplex plugins
LOG.info("Starting simplex plugins");
@@ -115,6 +117,7 @@ class PluginManagerImpl implements PluginManager {
return true;
}
@Override
public boolean stop() {
// Stop the poller
LOG.info("Stopping poller");

View File

@@ -14,6 +14,7 @@ import org.briarproject.api.event.Event;
import org.briarproject.api.event.EventBus;
import org.briarproject.api.event.EventListener;
import org.briarproject.api.event.MessageAddedEvent;
import org.briarproject.api.lifecycle.Service;
import org.briarproject.api.sync.ClientId;
import org.briarproject.api.sync.GroupId;
import org.briarproject.api.sync.Message;
@@ -30,7 +31,8 @@ import java.util.logging.Logger;
import static java.util.logging.Level.WARNING;
import static org.briarproject.api.sync.SyncConstants.MESSAGE_HEADER_LENGTH;
class ValidationManagerImpl implements ValidationManager, EventListener {
class ValidationManagerImpl implements ValidationManager, Service,
EventListener {
private static final Logger LOG =
Logger.getLogger(ValidationManagerImpl.class.getName());

View File

@@ -13,6 +13,7 @@ import org.briarproject.api.event.EventBus;
import org.briarproject.api.event.EventListener;
import org.briarproject.api.event.TransportAddedEvent;
import org.briarproject.api.event.TransportRemovedEvent;
import org.briarproject.api.lifecycle.Service;
import org.briarproject.api.system.Clock;
import org.briarproject.api.system.Timer;
import org.briarproject.api.transport.KeyManager;
@@ -29,7 +30,7 @@ import javax.inject.Inject;
import static java.util.logging.Level.WARNING;
class KeyManagerImpl implements KeyManager, EventListener {
class KeyManagerImpl implements KeyManager, Service, EventListener {
private static final Logger LOG =
Logger.getLogger(KeyManagerImpl.class.getName());
@@ -55,6 +56,7 @@ class KeyManagerImpl implements KeyManager, EventListener {
managers = new ConcurrentHashMap<TransportId, TransportKeyManager>();
}
@Override
public boolean start() {
eventBus.addListener(this);
try {
@@ -68,6 +70,7 @@ class KeyManagerImpl implements KeyManager, EventListener {
return true;
}
@Override
public boolean stop() {
eventBus.removeListener(this);
return true;