From 40a17ccc4208fd614211c8a3a69ebdf330161971 Mon Sep 17 00:00:00 2001 From: =?utf8?q?David=20=E2=80=98Bombe=E2=80=99=20Roden?= Date: Fri, 8 Apr 2011 13:49:33 +0200 Subject: [PATCH] Create page implementation that simply performs a redirect. --- .../pterodactylus/sone/web/page/RedirectPage.java | 62 ++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 src/main/java/net/pterodactylus/sone/web/page/RedirectPage.java diff --git a/src/main/java/net/pterodactylus/sone/web/page/RedirectPage.java b/src/main/java/net/pterodactylus/sone/web/page/RedirectPage.java new file mode 100644 index 0000000..2ce34f9 --- /dev/null +++ b/src/main/java/net/pterodactylus/sone/web/page/RedirectPage.java @@ -0,0 +1,62 @@ +/* + * Sone - RedirectPage.java - Copyright © 2011 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 + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package net.pterodactylus.sone.web.page; + +/** + * Page implementation that redirects the user to another URL. + * + * @author David ‘Bombe’ Roden + */ +public class RedirectPage implements Page { + + /** The original path. */ + private String originalPath; + + /** The path to redirect the browser to. */ + private String newPath; + + /** + * Creates a new redirect page. + * + * @param originalPath + * The original path + * @param newPath + * The path to redirect the browser to + */ + public RedirectPage(String originalPath, String newPath) { + this.originalPath = originalPath; + this.newPath = newPath; + } + + /** + * {@inheritDoc} + */ + @Override + public String getPath() { + return originalPath; + } + + /** + * {@inheritDoc} + */ + @Override + public Response handleRequest(Request request) { + return new RedirectResponse(newPath); + } + +} -- 2.7.4