X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fcore%2FCore.java;h=5018b258b1305d3aa5e37ae323cd871249e89e20;hb=4850adf910f409f122e3df9cd0be1d0dad9e19e5;hp=60c2506cab82b6805e68781949d28b251c73a1d4;hpb=f944a04f057879ce845cd47df35e33e8b4c15f06;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 60c2506..5018b25 100644 --- a/src/main/java/net/pterodactylus/sone/core/Core.java +++ b/src/main/java/net/pterodactylus/sone/core/Core.java @@ -603,7 +603,7 @@ public class Core extends AbstractService implements SoneProvider, PostProvider, synchronized (bookmarkedPosts) { for (String bookmarkedPostId : bookmarkedPosts) { Optional post = getPost(bookmarkedPostId); - if (!post.isPresent()) { + if (post.isPresent()) { posts.add(post.get()); } } @@ -1051,6 +1051,15 @@ public class Core extends AbstractService implements SoneProvider, PostProvider, } synchronized (sones) { sone.setOptions(storedSone.get().getOptions()); + sone.setKnown(storedSone.get().isKnown()); + sone.setStatus((sone.getTime() == 0) ? SoneStatus.unknown : SoneStatus.idle); + if (sone.isLocal()) { + soneInserters.remove(storedSone.get()).stop(); + SoneInserter soneInserter = new SoneInserter(this, eventBus, freenetInterface, sone); + soneInserters.put(sone, soneInserter); + soneInserter.start(); + touchConfiguration(); + } sones.put(sone.getId(), sone); } } @@ -2164,6 +2173,9 @@ public class Core extends AbstractService implements SoneProvider, PostProvider, @SuppressWarnings("synthetic-access") public void run() { Sone sone = getRemoteSone(identity.getId(), false); + if (sone.isLocal()) { + return; + } sone.setIdentity(identity); sone.setLatestEdition(Numbers.safeParseLong(identity.getProperty("Sone.LatestEdition"), sone.getLatestEdition())); soneDownloader.addSone(sone);