X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fweb%2Fajax%2FJsonPage.java;h=2f84d279192039eb53e11219a44c45958b73e57d;hb=6610d8a9946508f17fc0ed2f0a7ff806a60c357f;hp=6d6d92a934f2b930b4bb070a3d46f3b06e0210b7;hpb=0e8f7804ce344bdd69f5ecc7febe25a60a53561d;p=Sone.git diff --git a/src/main/java/net/pterodactylus/sone/web/ajax/JsonPage.java b/src/main/java/net/pterodactylus/sone/web/ajax/JsonPage.java index 6d6d92a..2f84d27 100644 --- a/src/main/java/net/pterodactylus/sone/web/ajax/JsonPage.java +++ b/src/main/java/net/pterodactylus/sone/web/ajax/JsonPage.java @@ -1,5 +1,5 @@ /* - * Sone - JsonPage.java - Copyright © 2010–2013 David Roden + * Sone - JsonPage.java - Copyright © 2010–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,7 +27,10 @@ import java.net.URI; import java.util.logging.Level; import java.util.logging.Logger; +import javax.annotation.Nonnull; + import net.pterodactylus.sone.data.Sone; +import net.pterodactylus.sone.web.SessionProvider; import net.pterodactylus.sone.web.WebInterface; import net.pterodactylus.sone.web.page.FreenetPage; import net.pterodactylus.sone.web.page.FreenetRequest; @@ -36,7 +39,6 @@ import net.pterodactylus.util.web.Page; import net.pterodactylus.util.web.Response; import com.fasterxml.jackson.databind.ObjectMapper; -import freenet.clients.http.SessionManager.Session; import freenet.clients.http.ToadletContext; /** @@ -48,7 +50,7 @@ import freenet.clients.http.ToadletContext; public abstract class JsonPage implements FreenetPage { /** The logger. */ - private static final Logger logger = getLogger("Sone.Web.Ajax"); + private static final Logger logger = getLogger(JsonPage.class.getName()); /** The JSON serializer. */ private static final ObjectMapper objectMapper = new ObjectMapper(); @@ -58,6 +60,7 @@ public abstract class JsonPage implements FreenetPage { /** The Sone web interface. */ protected final WebInterface webInterface; + private final SessionProvider sessionProvider; /** * Creates a new JSON page at the given path. @@ -70,66 +73,19 @@ public abstract class JsonPage implements FreenetPage { public JsonPage(String path, WebInterface webInterface) { this.path = path; this.webInterface = webInterface; + this.sessionProvider = webInterface; } // // ACCESSORS // - /** - * Returns the current session, creating a new session if there is no - * current session. - * - * @param toadletContenxt - * The toadlet context - * @return The current session, or {@code null} if there is no current - * session - */ - protected Session getCurrentSession(ToadletContext toadletContenxt) { - return webInterface.getCurrentSession(toadletContenxt); - } - - /** - * Returns the current session, creating a new session if there is no - * current session and {@code create} is {@code true}. - * - * @param toadletContenxt - * The toadlet context - * @param create - * {@code true} to create a new session if there is no current - * session, {@code false} otherwise - * @return The current session, or {@code null} if there is no current - * session - */ - protected Session getCurrentSession(ToadletContext toadletContenxt, boolean create) { - return webInterface.getCurrentSession(toadletContenxt, create); - } - - /** - * Returns the currently logged in Sone. - * - * @param toadletContext - * The toadlet context - * @return The currently logged in Sone, or {@code null} if no Sone is - * currently logged in - */ protected Sone getCurrentSone(ToadletContext toadletContext) { - return webInterface.getCurrentSone(toadletContext); + return sessionProvider.getCurrentSone(toadletContext, true); } - /** - * Returns the currently logged in Sone. - * - * @param toadletContext - * The toadlet context - * @param create - * {@code true} to create a new session if no session exists, - * {@code false} to not create a new session - * @return The currently logged in Sone, or {@code null} if no Sone is - * currently logged in - */ - protected Sone getCurrentSone(ToadletContext toadletContext, boolean create) { - return webInterface.getCurrentSone(toadletContext, create); + protected Sone getCurrentSone(ToadletContext toadletContext, boolean createSession) { + return sessionProvider.getCurrentSone(toadletContext, createSession); } // @@ -178,6 +134,7 @@ public abstract class JsonPage implements FreenetPage { * * @return A reply signaling success */ + @Nonnull protected static JsonReturnObject createSuccessJsonObject() { return new JsonReturnObject(true); } @@ -189,6 +146,7 @@ public abstract class JsonPage implements FreenetPage { * The error that has occured * @return The JSON object, signalling failure and the error code */ + @Nonnull protected static JsonReturnObject createErrorJsonObject(String error) { return new JsonErrorReturnObject(error); }