/*
- * Sone - PageToadletFactory.java - Copyright © 2010–2019 David Roden
+ * Sone - PageToadletFactory.kt - 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
package net.pterodactylus.sone.web.page
-import freenet.client.HighLevelSimpleClient
-import net.pterodactylus.util.web.Page
+import freenet.client.*
+import freenet.clients.http.*
+import net.pterodactylus.util.web.*
+import javax.inject.*
-class PageToadletFactory(private val highLevelSimpleClient: HighLevelSimpleClient, private val pathPrefix: String) {
+class PageToadletFactory @Inject constructor(
+ private val highLevelSimpleClient: HighLevelSimpleClient,
+ private val sessionManager: SessionManager,
+ @Named("toadletPathPrefix") private val pathPrefix: String
+) {
@JvmOverloads
fun createPageToadlet(page: Page<FreenetRequest>, menuName: String? = null) =
- PageToadlet(highLevelSimpleClient, menuName ?: page.menuName, page, pathPrefix)
+ PageToadlet(highLevelSimpleClient, sessionManager, menuName ?: page.menuName, page, pathPrefix)
}
-
-private val Page<*>.menuName get() = javaClass.getAnnotation(MenuName::class.java)?.value