X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Ffreenet%2Fwot%2FIdentityManager.java;h=77e0480af572e4d6280713a629c53d60cc508ff6;hb=601d1b020d8f5feccda4c2bbe78df2b9f336f0cc;hp=5b86db4bf52b70a434f18ed4e09947a46b6cb67c;hpb=321944aaef9b855078973b96db2df6a7f35c092e;p=Sone.git diff --git a/src/main/java/net/pterodactylus/sone/freenet/wot/IdentityManager.java b/src/main/java/net/pterodactylus/sone/freenet/wot/IdentityManager.java index 5b86db4..77e0480 100644 --- a/src/main/java/net/pterodactylus/sone/freenet/wot/IdentityManager.java +++ b/src/main/java/net/pterodactylus/sone/freenet/wot/IdentityManager.java @@ -1,5 +1,5 @@ /* - * Sone - IdentityManager.java - Copyright © 2010â2012 David Roden + * Sone - IdentityManager.java - Copyright © 2010â2013 David Roden * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -27,9 +27,15 @@ import java.util.logging.Level; import java.util.logging.Logger; import net.pterodactylus.sone.freenet.plugin.PluginException; +import net.pterodactylus.sone.freenet.wot.event.IdentityAddedEvent; +import net.pterodactylus.sone.freenet.wot.event.IdentityRemovedEvent; +import net.pterodactylus.sone.freenet.wot.event.IdentityUpdatedEvent; +import net.pterodactylus.sone.freenet.wot.event.OwnIdentityAddedEvent; +import net.pterodactylus.sone.freenet.wot.event.OwnIdentityRemovedEvent; import net.pterodactylus.util.logging.Logging; import net.pterodactylus.util.service.AbstractService; +import com.google.common.eventbus.EventBus; import com.google.inject.Inject; import com.google.inject.name.Named; @@ -39,7 +45,7 @@ import com.google.inject.name.Named; * exceptions but it only logs them and tries to return sensible defaults. *
* It is also responsible for polling identities from the Web of Trust plugin
- * and notifying registered {@link IdentityListener}s when {@link Identity}s and
+ * and sending events to the {@link EventBus} when {@link Identity}s and
* {@link OwnIdentity}s are discovered or disappearing.
*
* @author David âBombeâ Roden
@@ -55,8 +61,8 @@ public class IdentityManager extends AbstractService {
/** The logger. */
private static final Logger logger = Logging.getLogger(IdentityManager.class);
- /** The event manager. */
- private final IdentityListenerManager identityListenerManager = new IdentityListenerManager();
+ /** The event bus. */
+ private final EventBus eventBus;
/** The Web of Trust connector. */
private final WebOfTrustConnector webOfTrustConnector;
@@ -74,6 +80,8 @@ public class IdentityManager extends AbstractService {
/**
* Creates a new identity manager.
*
+ * @param eventBus
+ * The event bus
* @param webOfTrustConnector
* The Web of Trust connector
* @param context
@@ -81,37 +89,14 @@ public class IdentityManager extends AbstractService {
* contexts)
*/
@Inject
- public IdentityManager(WebOfTrustConnector webOfTrustConnector, @Named("WebOfTrustContext") String context) {
+ public IdentityManager(EventBus eventBus, WebOfTrustConnector webOfTrustConnector, @Named("WebOfTrustContext") String context) {
super("Sone Identity Manager", false);
+ this.eventBus = eventBus;
this.webOfTrustConnector = webOfTrustConnector;
this.context = context;
}
//
- // LISTENER MANAGEMENT
- //
-
- /**
- * Adds a listener for identity events.
- *
- * @param identityListener
- * The listener to add
- */
- public void addIdentityListener(IdentityListener identityListener) {
- identityListenerManager.addListener(identityListener);
- }
-
- /**
- * Removes a listener for identity events.
- *
- * @param identityListener
- * The listener to remove
- */
- public void removeIdentityListener(IdentityListener identityListener) {
- identityListenerManager.removeListener(identityListener);
- }
-
- //
// ACCESSORS
//
@@ -186,7 +171,9 @@ public class IdentityManager extends AbstractService {
boolean identitiesLoaded = false;
try {
/* get all identities with the wanted context from WoT. */
+ logger.finer("Getting all Own Identities from WoT...");
ownIdentities = webOfTrustConnector.loadAllOwnIdentities();
+ logger.finest(String.format("Loaded %d Own Identities.", ownIdentities.size()));
/* load trusted identities. */
for (OwnIdentity ownIdentity : ownIdentities) {
@@ -203,7 +190,9 @@ public class IdentityManager extends AbstractService {
}
/* load trusted identities. */
+ logger.finer(String.format("Getting trusted identities for %s...", ownIdentity.getId()));
Set