X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fweb%2FMarkAsKnownPage.java;h=57ea00ff2b0b48e1b431a9beecb56aaf3efa643e;hp=8cca4d1f79000a54955423b00ec76f7abc311065;hb=9acbc5bdec4ccb752e0856a501568b0bb6161579;hpb=54e35873a9660bc51aae7cdb4c1e7d399e50986b diff --git a/src/main/java/net/pterodactylus/sone/web/MarkAsKnownPage.java b/src/main/java/net/pterodactylus/sone/web/MarkAsKnownPage.java index 8cca4d1..57ea00f 100644 --- a/src/main/java/net/pterodactylus/sone/web/MarkAsKnownPage.java +++ b/src/main/java/net/pterodactylus/sone/web/MarkAsKnownPage.java @@ -1,5 +1,5 @@ /* - * Sone - MarkAsKnownPage.java - Copyright © 2011 David Roden + * Sone - MarkAsKnownPage.java - Copyright © 2011–2016 David Roden * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -27,6 +27,8 @@ import net.pterodactylus.sone.web.page.FreenetRequest; import net.pterodactylus.util.template.Template; import net.pterodactylus.util.template.TemplateContext; +import com.google.common.base.Optional; + /** * Page that lets the user mark a number of {@link Sone}s, {@link Post}s, or * {@link Reply Replie}s as known. @@ -55,8 +57,7 @@ public class MarkAsKnownPage extends SoneTemplatePage { * {@inheritDoc} */ @Override - protected void processTemplate(FreenetRequest request, TemplateContext templateContext) throws RedirectException { - super.processTemplate(request, templateContext); + protected void handleRequest(FreenetRequest request, TemplateContext templateContext) throws RedirectException { String type = request.getHttpRequest().getPartAsStringFailsafe("type", 5); if (!type.equals("sone") && !type.equals("post") && !type.equals("reply")) { throw new RedirectException("invalid.html"); @@ -65,23 +66,23 @@ public class MarkAsKnownPage extends SoneTemplatePage { for (StringTokenizer idTokenizer = new StringTokenizer(ids); idTokenizer.hasMoreTokens();) { String id = idTokenizer.nextToken(); if (type.equals("post")) { - Post post = webInterface.getCore().getPost(id, false); - if (post == null) { + Optional post = webInterface.getCore().getPost(id); + if (!post.isPresent()) { continue; } - webInterface.getCore().markPostKnown(post); + webInterface.getCore().markPostKnown(post.get()); } else if (type.equals("reply")) { - PostReply reply = webInterface.getCore().getReply(id, false); - if (reply == null) { + Optional reply = webInterface.getCore().getPostReply(id); + if (!reply.isPresent()) { continue; } - webInterface.getCore().markReplyKnown(reply); - } else if (type.equals("sone")) { - Sone sone = webInterface.getCore().getSone(id, false); - if (sone == null) { + webInterface.getCore().markReplyKnown(reply.get()); + } else { + Optional sone = webInterface.getCore().getSone(id); + if (!sone.isPresent()) { continue; } - webInterface.getCore().markSoneKnown(sone); + webInterface.getCore().markSoneKnown(sone.get()); } } String returnPage = request.getHttpRequest().getPartAsStringFailsafe("returnPage", 256);