package net.pterodactylus.sone.fcp;
+import static com.google.common.collect.FluentIterable.from;
+
import java.util.Collection;
import java.util.List;
import net.pterodactylus.sone.freenet.fcp.FcpException;
import net.pterodactylus.sone.template.SoneAccessor;
-import com.google.common.base.Optional;
-import com.google.common.collect.Collections2;
-
import freenet.node.FSParseException;
import freenet.support.SimpleFieldSet;
+import com.google.common.base.Optional;
+
/**
* Abstract base implementation of a {@link Command} with Sone-related helper
* methods.
protected Post getPost(SimpleFieldSet simpleFieldSet, String parameterName) throws FcpException {
try {
String postId = simpleFieldSet.getString(parameterName);
- Optional<Post> post = core.getPost(postId);
+ Optional<Post> post = core.getDatabase().getPost(postId);
if (!post.isPresent()) {
throw new FcpException("Could not load post from “" + postId + "”.");
}
protected PostReply getReply(SimpleFieldSet simpleFieldSet, String parameterName) throws FcpException {
try {
String replyId = simpleFieldSet.getString(parameterName);
- Optional<PostReply> reply = core.getPostReply(replyId);
+ Optional<PostReply> reply = core.getDatabase().getPostReply(replyId);
if (!reply.isPresent()) {
throw new FcpException("Could not load reply from “" + replyId + "”.");
}
postBuilder.put(encodeLikes(core.getLikes(post), prefix + "Likes."));
if (includeReplies) {
- List<PostReply> replies = core.getReplies(post.getId());
+ List<PostReply> replies = post.getReplies();
postBuilder.put(encodeReplies(replies, prefix));
}
String postPrefix = prefix + postIndex++;
postBuilder.put(encodePost(post, postPrefix + ".", includeReplies));
if (includeReplies) {
- postBuilder.put(encodeReplies(Collections2.filter(core.getReplies(post.getId()), Reply.FUTURE_REPLY_FILTER), postPrefix + "."));
+ postBuilder.put(encodeReplies(from(post.getReplies()).filter(Reply.FUTURE_REPLY_FILTER).toList(), postPrefix + "."));
}
}
// OBJECT METHODS
//
- /**
- * {@inheritDoc}
- */
@Override
public String toString() {
return getClass().getName() + "[writeAccess=" + writeAccess + "]";