import net.pterodactylus.util.collection.SetBuilder;
import net.pterodactylus.util.logging.Logging;
+import net.pterodactylus.util.object.Default;
import net.pterodactylus.util.service.AbstractService;
import net.pterodactylus.wotns.freenet.plugin.PluginException;
identities.add(ownIdentity);
}
synchronized (syncObject) {
- identities.addAll(currentTrustedIdentities.get(ownIdentity));
+ identities.addAll(Default.forNull(currentTrustedIdentities.get(ownIdentity), Collections.<Identity> emptySet()));
}
return identities.get();
}
for (Identity identity : trustedIdentities) {
identities.put(identity.getId(), identity);
}
+
+ /* add own identities, too, as long as the WoT doesn’t do that. */
+ for (OwnIdentity additionalOwnIdentity : ownIdentities) {
+ if (additionalOwnIdentity == ownIdentity) {
+ continue;
+ }
+ if ((context != null) && !additionalOwnIdentity.hasContext(context)) {
+ continue;
+ }
+ identities.put(additionalOwnIdentity.getId(), additionalOwnIdentity);
+ }
}
identitiesLoaded = true;
} catch (WebOfTrustException wote1) {