X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fweb%2Fpage%2FFreenetTemplatePage.java;h=c4b1813f4eeb31f945f8a8b171cee525b75cf693;hp=4c20e1fdb7edebaf465e0c639abbae6a357f17ff;hb=90cd4ab2d7c55e2a8acc9e0fd3d8bad5f9d24efa;hpb=3d6cffe82270a1faacf1f0d39c34b11ab316e0db diff --git a/src/main/java/net/pterodactylus/sone/web/page/FreenetTemplatePage.java b/src/main/java/net/pterodactylus/sone/web/page/FreenetTemplatePage.java index 4c20e1f..c4b1813 100644 --- a/src/main/java/net/pterodactylus/sone/web/page/FreenetTemplatePage.java +++ b/src/main/java/net/pterodactylus/sone/web/page/FreenetTemplatePage.java @@ -1,5 +1,5 @@ /* - * Sone - FreenetTemplatePage.java - Copyright © 2010–2016 David Roden + * Sone - FreenetTemplatePage.java - Copyright © 2010–2019 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 @@ -17,6 +17,7 @@ package net.pterodactylus.sone.web.page; +import static java.lang.String.format; import static java.util.logging.Logger.getLogger; import java.io.IOException; @@ -30,6 +31,7 @@ import java.util.Map.Entry; import java.util.logging.Level; import java.util.logging.Logger; +import net.pterodactylus.sone.main.Loaders; import net.pterodactylus.util.template.Template; import net.pterodactylus.util.template.TemplateContext; import net.pterodactylus.util.template.TemplateContextFactory; @@ -46,8 +48,6 @@ import freenet.support.HTMLNode; /** * Base class for all {@link Page}s that are rendered with {@link Template}s and * fit into Freenet’s web interface. - * - * @author David ‘Bombe’ Roden */ public class FreenetTemplatePage implements FreenetPage, LinkEnabledCallback { @@ -62,26 +62,15 @@ public class FreenetTemplatePage implements FreenetPage, LinkEnabledCallback { /** The template to render. */ private final Template template; + private final Loaders loaders; /** Where to redirect for invalid form passwords. */ private final String invalidFormPasswordRedirectTarget; - /** - * Creates a new template page. - * - * @param path - * The path of the page - * @param templateContextFactory - * The template context factory - * @param template - * The template to render - * @param invalidFormPasswordRedirectTarget - * The target to redirect to if a POST request does not contain - * the correct form password - */ - public FreenetTemplatePage(String path, TemplateContextFactory templateContextFactory, Template template, String invalidFormPasswordRedirectTarget) { + public FreenetTemplatePage(String path, TemplateContextFactory templateContextFactory, Loaders loaders, Template template, String invalidFormPasswordRedirectTarget) { this.path = path; this.templateContextFactory = templateContextFactory; + this.loaders = loaders; this.template = template; this.invalidFormPasswordRedirectTarget = invalidFormPasswordRedirectTarget; } @@ -118,7 +107,7 @@ public class FreenetTemplatePage implements FreenetPage, LinkEnabledCallback { * {@inheritDoc} */ @Override - public Response handleRequest(FreenetRequest request, Response response) throws IOException { + public final Response handleRequest(FreenetRequest request, Response response) throws IOException { String redirectTarget = getRedirectTarget(request); if (redirectTarget != null) { return new RedirectResponse(redirectTarget); @@ -157,7 +146,7 @@ public class FreenetTemplatePage implements FreenetPage, LinkEnabledCallback { long start = System.nanoTime(); processTemplate(request, templateContext); long finish = System.nanoTime(); - logger.log(Level.FINEST, String.format("Template was rendered in %.2fms.", (finish - start) / 1000000.0)); + logger.log(Level.FINEST, format("Template was rendered in %.2fms.", (finish - start) / 1000000.0)); } catch (RedirectException re1) { return new RedirectResponse(re1.getTarget()); } @@ -285,8 +274,6 @@ public class FreenetTemplatePage implements FreenetPage, LinkEnabledCallback { * wants to redirect the user during the * {@link FreenetTemplatePage#processTemplate(FreenetRequest, TemplateContext)} * method call. - * - * @author David ‘Bombe’ Roden */ public static class RedirectException extends Exception { @@ -312,6 +299,11 @@ public class FreenetTemplatePage implements FreenetPage, LinkEnabledCallback { return target; } + @Override + public String toString() { + return format("RedirectException{target='%s'}", target); + } + } }