X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fweb%2Fpage%2FPageToadlet.java;h=f7f59a613be27e504000b51d80c42fdd990c7a75;hb=a23c4f218c3adf236d89d5927cae37d6e6e4feda;hp=af826f18d84f1a44e90fbd82e50de7a9aece4d3a;hpb=b2bc9337f91c303e2700f001c785e8b14a9990ec;p=Sone.git diff --git a/src/main/java/net/pterodactylus/sone/web/page/PageToadlet.java b/src/main/java/net/pterodactylus/sone/web/page/PageToadlet.java index af826f1..f7f59a6 100644 --- a/src/main/java/net/pterodactylus/sone/web/page/PageToadlet.java +++ b/src/main/java/net/pterodactylus/sone/web/page/PageToadlet.java @@ -21,6 +21,7 @@ import java.io.IOException; import java.net.URI; import java.util.Map.Entry; +import net.pterodactylus.sone.web.page.Page.Request.Method; import freenet.client.HighLevelSimpleClient; import freenet.clients.http.LinkEnabledCallback; import freenet.clients.http.Toadlet; @@ -34,7 +35,7 @@ import freenet.support.io.Closer; /** * {@link Toadlet} implementation that is wrapped around a {@link Page}. - * + * * @author David ‘Bombe’ Roden */ public class PageToadlet extends Toadlet implements LinkEnabledCallback { @@ -50,8 +51,9 @@ public class PageToadlet extends Toadlet implements LinkEnabledCallback { /** * Creates a new toadlet that hands off processing to a {@link Page}. - * + * * @param highLevelSimpleClient + * The high-level simple client * @param menuName * The name of the menu item * @param page @@ -69,7 +71,7 @@ public class PageToadlet extends Toadlet implements LinkEnabledCallback { /** * Returns the name to display in the menu. - * + * * @return The name in the menu */ public String getMenuName() { @@ -86,7 +88,7 @@ public class PageToadlet extends Toadlet implements LinkEnabledCallback { /** * Handles a HTTP GET request. - * + * * @param uri * The URI of the request * @param httpRequest @@ -99,12 +101,12 @@ public class PageToadlet extends Toadlet implements LinkEnabledCallback { * if the toadlet context is closed */ public void handleMethodGET(URI uri, HTTPRequest httpRequest, ToadletContext toadletContext) throws IOException, ToadletContextClosedException { - handleRequest(new Page.Request(uri, "GET", httpRequest, toadletContext)); + handleRequest(new Page.Request(uri, Method.GET, httpRequest, toadletContext)); } /** * Handles a HTTP POST request. - * + * * @param uri * The URI of the request * @param httpRequest @@ -117,7 +119,7 @@ public class PageToadlet extends Toadlet implements LinkEnabledCallback { * if the toadlet context is closed */ public void handleMethodPOST(URI uri, HTTPRequest httpRequest, ToadletContext toadletContext) throws IOException, ToadletContextClosedException { - handleRequest(new Page.Request(uri, "POST", httpRequest, toadletContext)); + handleRequest(new Page.Request(uri, Method.POST, httpRequest, toadletContext)); } /** @@ -130,7 +132,7 @@ public class PageToadlet extends Toadlet implements LinkEnabledCallback { /** * Handles a HTTP request. - * + * * @param pageRequest * The request to handle * @throws IOException @@ -172,6 +174,9 @@ public class PageToadlet extends Toadlet implements LinkEnabledCallback { */ @Override public boolean isEnabled(ToadletContext toadletContext) { + if (page instanceof LinkEnabledCallback) { + return ((LinkEnabledCallback) page).isEnabled(toadletContext); + } return true; }