X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fcore%2FSoneInserter.java;h=12abc53ce3a1157242442bb5e39dfc32948b84dd;hb=f1a337e97c0188170e8ea8bb06b99324f3a07dee;hp=01e414d814b99825768bd2c485bf8249a00cd61a;hpb=9a920789e2b9109d4de0adb676a00797f2d36bfb;p=Sone.git diff --git a/src/main/java/net/pterodactylus/sone/core/SoneInserter.java b/src/main/java/net/pterodactylus/sone/core/SoneInserter.java index 01e414d..12abc53 100644 --- a/src/main/java/net/pterodactylus/sone/core/SoneInserter.java +++ b/src/main/java/net/pterodactylus/sone/core/SoneInserter.java @@ -18,6 +18,8 @@ package net.pterodactylus.sone.core; import static com.google.common.base.Preconditions.checkArgument; +import static net.pterodactylus.sone.data.Album.NOT_EMPTY; +import static net.pterodactylus.sone.data.Sone.TO_FREENET_URI; import java.io.InputStreamReader; import java.io.StringWriter; @@ -50,13 +52,13 @@ import net.pterodactylus.util.template.TemplateException; import net.pterodactylus.util.template.TemplateParser; import net.pterodactylus.util.template.XmlFilter; +import freenet.client.async.ManifestElement; +import freenet.keys.FreenetURI; + import com.google.common.collect.FluentIterable; import com.google.common.collect.Ordering; import com.google.common.eventbus.EventBus; -import freenet.client.async.ManifestElement; -import freenet.keys.FreenetURI; - /** * A Sone inserter is responsible for inserting a Sone if it has changed. * @@ -182,9 +184,6 @@ public class SoneInserter extends AbstractService { // SERVICE METHODS // - /** - * {@inheritDoc} - */ @Override protected void serviceRun() { long lastModificationTime = 0; @@ -246,7 +245,7 @@ public class SoneInserter extends AbstractService { break; } sone.setTime(insertTime); - sone.setLatestEdition(finalUri.getEdition()); + sone.modify().setLatestEdition(finalUri.getEdition()).update(); core.touchConfiguration(); success = true; logger.log(Level.INFO, String.format("Inserted Sone “%s” at %s.", sone.getName(), finalUri)); @@ -301,14 +300,13 @@ public class SoneInserter extends AbstractService { soneProperties.put("id", sone.getId()); soneProperties.put("name", sone.getName()); soneProperties.put("time", sone.getTime()); - soneProperties.put("requestUri", sone.getRequestUri()); - soneProperties.put("insertUri", sone.getInsertUri()); + soneProperties.put("requestUri", TO_FREENET_URI.apply(sone)); soneProperties.put("profile", sone.getProfile()); soneProperties.put("posts", Ordering.from(Post.TIME_COMPARATOR).sortedCopy(sone.getPosts())); soneProperties.put("replies", Ordering.from(Reply.TIME_COMPARATOR).reverse().sortedCopy(sone.getReplies())); soneProperties.put("likedPostIds", new HashSet(sone.getLikedPostIds())); soneProperties.put("likedReplyIds", new HashSet(sone.getLikedReplyIds())); - soneProperties.put("albums", FluentIterable.from(sone.getAlbums()).transformAndConcat(Album.FLATTENER).toList()); + soneProperties.put("albums", FluentIterable.from(sone.getRootAlbum().getAlbums()).transformAndConcat(Album.FLATTENER).filter(NOT_EMPTY).toList()); } //