X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=blobdiff_plain;f=src%2Fmain%2Fkotlin%2Fnet%2Fpterodactylus%2Fsone%2Ffreenet%2Fwot%2FIdentityManagerImpl.kt;fp=src%2Fmain%2Fkotlin%2Fnet%2Fpterodactylus%2Fsone%2Ffreenet%2Fwot%2FIdentityManagerImpl.kt;h=5f087c7eb899555fee35ffafd0d53f31d83140cc;hp=67e70e08814570b0d1b900db45908ed40dc6c55b;hb=a6aaf80dbee1c4b6e70159bf6b3c26609d8c3974;hpb=ecfd4c5a91d204ce4c001d19fa600cf42ac4cf43 diff --git a/src/main/kotlin/net/pterodactylus/sone/freenet/wot/IdentityManagerImpl.kt b/src/main/kotlin/net/pterodactylus/sone/freenet/wot/IdentityManagerImpl.kt index 67e70e0..5f087c7 100644 --- a/src/main/kotlin/net/pterodactylus/sone/freenet/wot/IdentityManagerImpl.kt +++ b/src/main/kotlin/net/pterodactylus/sone/freenet/wot/IdentityManagerImpl.kt @@ -58,6 +58,13 @@ class IdentityManagerImpl @Inject constructor( try { val currentIdentities = identityLoader.loadIdentities() + val onlyTrustedByAll = currentIdentities.mapValues { (ownIdentity, trustedIdentities) -> + trustedIdentities.filter { trustedIdentity -> + currentIdentities.all { trustedIdentity in it.value } + } + } + logger.log(Level.FINE, "Reduced (${currentIdentities.size},(${currentIdentities.values.joinToString { it.size.toString() }})) identities to (${onlyTrustedByAll.size},(${onlyTrustedByAll.values.joinToString { it.size.toString() }})).") + val identityChangeEventSender = IdentityChangeEventSender(eventBus, oldIdentities) identityChangeEventSender.detectChanges(currentIdentities)