X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fcore%2FCore.java;h=20c5884a609f40344eef3c015467fb3442bf28dc;hb=12d730a1e5cee435e3146cede32134f5234b0b01;hp=d63b938307b7bd7bd724f69ca76311252e2de635;hpb=549697938ac2e2407183c1db511dfa79f8c059f1;p=Sone.git diff --git a/src/main/java/net/pterodactylus/sone/core/Core.java b/src/main/java/net/pterodactylus/sone/core/Core.java index d63b938..20c5884 100644 --- a/src/main/java/net/pterodactylus/sone/core/Core.java +++ b/src/main/java/net/pterodactylus/sone/core/Core.java @@ -389,7 +389,7 @@ public class Core implements IdentityListener { public Set getLikes(Reply reply) { Set sones = new HashSet(); for (Sone sone : getSones()) { - if (sone.getLikedPostIds().contains(reply.getId())) { + if (sone.getLikedReplyIds().contains(reply.getId())) { sones.add(sone); } } @@ -436,10 +436,6 @@ public class Core implements IdentityListener { return null; } synchronized (localSones) { - if (localSones.containsKey(ownIdentity.getId())) { - logger.log(Level.FINE, "Tried to add known local Sone: %s", ownIdentity); - return localSones.get(ownIdentity.getId()); - } final Sone sone; try { sone = getLocalSone(ownIdentity.getId()).setIdentity(ownIdentity).setInsertUri(new FreenetURI(ownIdentity.getInsertUri())).setRequestUri(new FreenetURI(ownIdentity.getRequestUri())); @@ -490,10 +486,6 @@ public class Core implements IdentityListener { } synchronized (remoteSones) { final Sone sone = getRemoteSone(identity.getId()).setIdentity(identity); - if (remoteSones.containsKey(identity.getId())) { - logger.log(Level.FINE, "Identity already exists: %s", identity); - return remoteSones.get(identity.getId()); - } sone.setRequestUri(getSoneUri(identity.getRequestUri(), identity.getProperty("Sone.LatestEdition"))); remoteSones.put(identity.getId(), sone); soneDownloader.addSone(sone); @@ -572,9 +564,15 @@ public class Core implements IdentityListener { return; } localSones.remove(sone.getId()); - soneInserters.remove(sone.getId()).stop(); + soneInserters.remove(sone).stop(); } identityManager.removeContext((OwnIdentity) sone.getIdentity(), "Sone"); + identityManager.removeProperty((OwnIdentity) sone.getIdentity(), "Sone.LatestEdition"); + try { + configuration.getLongValue("Sone/" + sone.getId() + "/Time").setValue(null); + } catch (ConfigurationException ce1) { + logger.log(Level.WARNING, "Could not remove Sone from configuration!", ce1); + } } /** @@ -592,7 +590,11 @@ public class Core implements IdentityListener { /* load Sone. */ String sonePrefix = "Sone/" + sone.getId(); - long soneTime = configuration.getLongValue(sonePrefix + "/Time").getValue((long) 0); + Long soneTime = configuration.getLongValue(sonePrefix + "/Time").getValue(null); + if (soneTime == null) { + logger.log(Level.INFO, "Could not load Sone because no Sone has been saved."); + return; + } long soneModificationCounter = configuration.getLongValue(sonePrefix + "/ModificationCounter").getValue((long) 0); /* load profile. */ @@ -989,7 +991,7 @@ public class Core implements IdentityListener { */ @Override public void ownIdentityRemoved(OwnIdentity ownIdentity) { - /* TODO */ + logger.log(Level.FINEST, "Removing OwnIdentity: " + ownIdentity); } /**