X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=blobdiff_plain;f=src%2Fmain%2Fkotlin%2Fnet%2Fpterodactylus%2Fsone%2Fweb%2Fpage%2FFreenetRequest.kt;h=54c8f7fd18a3bb17e63e5aa30ba3aa09d75360ec;hp=00424ff8ed9e607ea333ce599b16265d974df823;hb=fcc0aaae023bbb60b76b5410ee3efc8fdb3d6504;hpb=3f9aed74383ed43027dad4eb9a12eec88d7c479e diff --git a/src/main/kotlin/net/pterodactylus/sone/web/page/FreenetRequest.kt b/src/main/kotlin/net/pterodactylus/sone/web/page/FreenetRequest.kt index 00424ff..54c8f7f 100644 --- a/src/main/kotlin/net/pterodactylus/sone/web/page/FreenetRequest.kt +++ b/src/main/kotlin/net/pterodactylus/sone/web/page/FreenetRequest.kt @@ -1,5 +1,5 @@ /* - * Sone - FreenetRequest.java - Copyright © 2011–2019 David Roden + * Sone - FreenetRequest.kt - Copyright © 2011–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 @@ -18,8 +18,25 @@ package net.pterodactylus.sone.web.page import freenet.clients.http.* +import freenet.clients.http.SessionManager.* +import freenet.l10n.* import freenet.support.api.* import net.pterodactylus.util.web.* import java.net.* +import java.util.UUID.* -class FreenetRequest(uri: URI, method: Method, val httpRequest: HTTPRequest, val toadletContext: ToadletContext) : Request(uri, method) +open class FreenetRequest(uri: URI, method: Method, + val httpRequest: HTTPRequest, + val toadletContext: ToadletContext, + val l10n: BaseL10n, + val sessionManager: SessionManager +) : Request(uri, method) { + + val session: Session + get() = + sessionManager.useSession(toadletContext) + ?: sessionManager.createSession(randomUUID().toString(), toadletContext) + + val existingSession: Session? get() = sessionManager.useSession(toadletContext) + +}