X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Ffreenet%2Fwot%2FIdentityLoader.java;h=75ec8284f7c6ad94613a7c4b5d3101327ee32d86;hb=0e8f7804ce344bdd69f5ecc7febe25a60a53561d;hp=5498eec116bb6b05ef4e1b563980788d5bfaebb2;hpb=e7e16a55d9ce8bb104b3bd1260875ede6fd921e5;p=Sone.git diff --git a/src/main/java/net/pterodactylus/sone/freenet/wot/IdentityLoader.java b/src/main/java/net/pterodactylus/sone/freenet/wot/IdentityLoader.java index 5498eec..75ec828 100644 --- a/src/main/java/net/pterodactylus/sone/freenet/wot/IdentityLoader.java +++ b/src/main/java/net/pterodactylus/sone/freenet/wot/IdentityLoader.java @@ -17,19 +17,19 @@ package net.pterodactylus.sone.freenet.wot; -import static com.google.common.collect.HashMultimap.create; +import static java.util.Collections.emptySet; import static net.pterodactylus.sone.freenet.wot.Context.extractContext; import java.util.Collection; +import java.util.Collections; +import java.util.HashMap; +import java.util.Map; import java.util.Set; -import javax.annotation.Nullable; - import net.pterodactylus.sone.freenet.plugin.PluginException; -import com.google.common.base.Function; import com.google.common.base.Optional; -import com.google.common.collect.Multimap; +import com.google.inject.Inject; /** * Loads {@link OwnIdentity}s and the {@link Identity}s they trust. @@ -45,26 +45,28 @@ public class IdentityLoader { this(webOfTrustConnector, Optional.absent()); } + @Inject public IdentityLoader(WebOfTrustConnector webOfTrustConnector, Optional context) { this.webOfTrustConnector = webOfTrustConnector; this.context = context; } - public Multimap loadIdentities() throws WebOfTrustException { + public Map> loadIdentities() throws WebOfTrustException { Collection currentOwnIdentities = webOfTrustConnector.loadAllOwnIdentities(); return loadTrustedIdentitiesForOwnIdentities(currentOwnIdentities); } - private Multimap loadTrustedIdentitiesForOwnIdentities(Collection ownIdentities) throws PluginException { - Multimap currentIdentities = create(); + private Map> loadTrustedIdentitiesForOwnIdentities(Collection ownIdentities) throws PluginException { + Map> currentIdentities = new HashMap>(); for (OwnIdentity ownIdentity : ownIdentities) { if (identityDoesNotHaveTheCorrectContext(ownIdentity)) { + currentIdentities.put(ownIdentity, Collections.emptySet()); continue; } Set trustedIdentities = webOfTrustConnector.loadTrustedIdentities(ownIdentity, context.transform(extractContext)); - currentIdentities.putAll(ownIdentity, trustedIdentities); + currentIdentities.put(ownIdentity, trustedIdentities); } return currentIdentities;