X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Ffcp%2FAbstractSoneCommand.java;h=baa3129e4f7f723cad8634ba212ab0d0157721c1;hb=f10d40f746f6c7c716f783da11791d28c1117447;hp=b4c24bb51e53c3507401afc4c39c7a1a1b533ee5;hpb=be4ea80290e01809356b960d9cd771f041ff3fce;p=Sone.git diff --git a/src/main/java/net/pterodactylus/sone/fcp/AbstractSoneCommand.java b/src/main/java/net/pterodactylus/sone/fcp/AbstractSoneCommand.java index b4c24bb..baa3129 100644 --- a/src/main/java/net/pterodactylus/sone/fcp/AbstractSoneCommand.java +++ b/src/main/java/net/pterodactylus/sone/fcp/AbstractSoneCommand.java @@ -18,6 +18,7 @@ package net.pterodactylus.sone.fcp; import static com.google.common.collect.FluentIterable.from; +import static net.pterodactylus.sone.data.Reply.FUTURE_REPLY_FILTER; import java.util.Collection; import java.util.List; @@ -27,7 +28,6 @@ import net.pterodactylus.sone.data.Post; import net.pterodactylus.sone.data.PostReply; import net.pterodactylus.sone.data.Profile; import net.pterodactylus.sone.data.Profile.Field; -import net.pterodactylus.sone.data.Reply; import net.pterodactylus.sone.data.Sone; import net.pterodactylus.sone.freenet.SimpleFieldSetBuilder; import net.pterodactylus.sone.freenet.fcp.AbstractCommand; @@ -119,8 +119,8 @@ public abstract class AbstractSoneCommand extends AbstractCommand { } protected Optional getOptionalSone(SimpleFieldSet simpleFieldSet, String parameterName) throws FcpException { - String soneId = getMandatoryParameter(simpleFieldSet, parameterName); - return core.getSone(soneId); + String soneId = getString(simpleFieldSet, parameterName, null); + return (soneId == null) ? Optional.absent() : core.getSone(soneId); } protected Sone getMandatoryLocalSone(SimpleFieldSet simpleFieldSet, String parameterName) throws FcpException { @@ -273,7 +273,7 @@ public abstract class AbstractSoneCommand extends AbstractCommand { protected SimpleFieldSet encodePostWithReplies(Post post, String prefix) { SimpleFieldSetBuilder postBuilder = createPostBuilderFromPost(post, prefix); - List replies = post.getReplies(); + List replies = from(post.getReplies()).filter(FUTURE_REPLY_FILTER).toList(); postBuilder.put(encodeReplies(replies, prefix)); return postBuilder.get(); @@ -289,7 +289,7 @@ public abstract class AbstractSoneCommand extends AbstractCommand { } postBuilder.put(prefix + "Time", post.getTime()); postBuilder.put(prefix + "Text", encodeString(post.getText())); - postBuilder.put(encodeLikes(core.getLikes(post), prefix + "Likes.")); + postBuilder.put(encodeLikes(post.getLikes(), prefix + "Likes.")); return postBuilder; } @@ -319,7 +319,7 @@ public abstract class AbstractSoneCommand extends AbstractCommand { int postIndex = 0; for (Post post : posts) { String postPrefix = prefix + postIndex++; - postBuilder.put(encodeReplies(from(post.getReplies()).filter(Reply.FUTURE_REPLY_FILTER).toList(), postPrefix + ".")); + postBuilder.put(encodeReplies(from(post.getReplies()).filter(FUTURE_REPLY_FILTER).toList(), postPrefix + ".")); } return postBuilder.get();