X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Ffreenet%2Fwot%2FIdentityManager.java;h=bca6ac11a962ddb961fc2c8e28b94395ec1c978b;hb=36a908ed376d95bbddc6473769edfb7b7e0fe446;hp=3c3c9f9221cc64e8e0c7276fe80cfb07a80a0df6;hpb=4970a2332d0295fa4e428e1f4ea54bd2d839e464;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 3c3c9f9..bca6ac1 100644 --- a/src/main/java/net/pterodactylus/sone/freenet/wot/IdentityManager.java +++ b/src/main/java/net/pterodactylus/sone/freenet/wot/IdentityManager.java @@ -59,21 +59,28 @@ public class IdentityManager extends AbstractService { private final WebOfTrustConnector webOfTrustConnector; /** The context to filter for. */ - private volatile String context; + private final String context; /** The currently known own identities. */ /* synchronize access on syncObject. */ - private Map currentOwnIdentities = new HashMap(); + private final Map currentOwnIdentities = new HashMap(); + + /** The last time all identities were loaded. */ + private volatile long identitiesLastLoaded; /** * Creates a new identity manager. * * @param webOfTrustConnector * The Web of Trust connector + * @param context + * The context to focus on (may be {@code null} to ignore + * contexts) */ - public IdentityManager(WebOfTrustConnector webOfTrustConnector) { + public IdentityManager(WebOfTrustConnector webOfTrustConnector, String context) { super("Sone Identity Manager", false); this.webOfTrustConnector = webOfTrustConnector; + this.context = context; } // @@ -105,13 +112,13 @@ public class IdentityManager extends AbstractService { // /** - * Sets the context to filter own identities and trusted identities for. + * Returns the last time all identities were loaded. * - * @param context - * The context to filter for, or {@code null} to not filter + * @return The last time all identities were loaded (in milliseconds since + * Jan 1, 1970 UTC) */ - public void setContext(String context) { - this.context = context; + public long getIdentitiesLastLoaded() { + return identitiesLastLoaded; } /** @@ -192,6 +199,7 @@ public class IdentityManager extends AbstractService { } } identitiesLoaded = true; + identitiesLastLoaded = System.currentTimeMillis(); } catch (WebOfTrustException wote1) { logger.log(Level.WARNING, "WoT has disappeared!", wote1); }