From: David ‘Bombe’ Roden Date: Fri, 1 May 2020 14:01:40 +0000 (+0200) Subject: ♻️ Refactor parts of identity removal X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=commitdiff_plain;h=860029508a9860de1c7a0c0b2fdcbe5b642a5f16 ♻️ Refactor parts of identity removal --- diff --git a/src/main/java/net/pterodactylus/sone/core/Core.java b/src/main/java/net/pterodactylus/sone/core/Core.java index da1b2f8..9354063 100644 --- a/src/main/java/net/pterodactylus/sone/core/Core.java +++ b/src/main/java/net/pterodactylus/sone/core/Core.java @@ -1581,13 +1581,8 @@ public class Core extends AbstractService implements SoneProvider, PostProvider, OwnIdentity ownIdentity = identityRemovedEvent.getOwnIdentity(); Identity identity = identityRemovedEvent.getIdentity(); trustedIdentities.remove(ownIdentity, identity); - for (Entry> trustedIdentity : trustedIdentities.asMap().entrySet()) { - if (trustedIdentity.getKey().equals(ownIdentity)) { - continue; - } - if (trustedIdentity.getValue().contains(identity)) { - return; - } + if (otherOwnIdentityStillKnowsIdentity(ownIdentity, identity)) { + return; } Sone sone = getSone(identity.getId()); if (sone == null) { @@ -1604,6 +1599,10 @@ public class Core extends AbstractService implements SoneProvider, PostProvider, database.removeSone(sone); } + private boolean otherOwnIdentityStillKnowsIdentity(OwnIdentity ownIdentity, Identity identity) { + return trustedIdentities.entries().stream().anyMatch(e -> !e.getKey().equals(ownIdentity) && e.getValue().equals(identity)); + } + /** * Deletes the temporary image. *