From: David ‘Bombe’ Roden Date: Wed, 5 Sep 2012 10:26:32 +0000 (+0200) Subject: Only add get-trust jobs if there are none for the given identities yet. X-Git-Tag: 0.8.3^2~54^2~6 X-Git-Url: https://git.pterodactylus.net/?a=commitdiff_plain;h=7adb27cbfa8dd5b6f844eb07f5ef0307aeacee1b;p=Sone.git Only add get-trust jobs if there are none for the given identities yet. --- diff --git a/src/main/java/net/pterodactylus/sone/core/TrustUpdater.java b/src/main/java/net/pterodactylus/sone/core/TrustUpdater.java index d122235..91e1783 100644 --- a/src/main/java/net/pterodactylus/sone/core/TrustUpdater.java +++ b/src/main/java/net/pterodactylus/sone/core/TrustUpdater.java @@ -78,7 +78,15 @@ public class TrustUpdater extends AbstractService { * The identity receiving the trust */ public void getTrust(OwnIdentity truster, Identity trustee) { - updateJobs.add(new GetTrustJob(truster, trustee)); + GetTrustJob getTrustJob = new GetTrustJob(truster, trustee); + if (!updateJobs.contains(getTrustJob)) { + logger.log(Level.FINER, "Adding Trust Update Job: " + getTrustJob); + try { + updateJobs.put(getTrustJob); + } catch (InterruptedException ie1) { + /* the queue is unbounded so it should never block. */ + } + } } /**