X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fweb%2Fpage%2FPageToadlet.java;h=f594e5897b9e4d88319e7703f5dc16987a6facbe;hb=c5e641893a2656ebf2c2c8c369fe75eaf3061b52;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..f594e58 100644 --- a/src/main/java/net/pterodactylus/sone/web/page/PageToadlet.java +++ b/src/main/java/net/pterodactylus/sone/web/page/PageToadlet.java @@ -1,5 +1,5 @@ /* - * shortener - PageToadlet.java - Copyright © 2010 David Roden + * Sone - PageToadlet.java - Copyright © 2010 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 @@ -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; }