projects
/
Sone.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
🐛 Fix new-sone handler
[Sone.git]
/
src
/
main
/
kotlin
/
net
/
pterodactylus
/
sone
/
web
/
PageToadletRegistry.kt
diff --git
a/src/main/kotlin/net/pterodactylus/sone/web/PageToadletRegistry.kt
b/src/main/kotlin/net/pterodactylus/sone/web/PageToadletRegistry.kt
index
97e6cfe
..
651bffd
100644
(file)
--- a/
src/main/kotlin/net/pterodactylus/sone/web/PageToadletRegistry.kt
+++ b/
src/main/kotlin/net/pterodactylus/sone/web/PageToadletRegistry.kt
@@
-18,21
+18,28
@@
class PageToadletRegistry @Inject constructor(
) {
private val pages = mutableListOf<Page<FreenetRequest>>()
) {
private val pages = mutableListOf<Page<FreenetRequest>>()
+ private val debugPages = mutableListOf<Page<FreenetRequest>>()
private val registeredToadlets = mutableListOf<PageToadlet>()
private val registered = AtomicBoolean(false)
private val registeredToadlets = mutableListOf<PageToadlet>()
private val registered = AtomicBoolean(false)
+ private val debugActivated = AtomicBoolean(false)
fun addPage(page: Page<FreenetRequest>) {
if (registered.get()) throw IllegalStateException()
pages += page
}
fun addPage(page: Page<FreenetRequest>) {
if (registered.get()) throw IllegalStateException()
pages += page
}
+ fun addDebugPage(page: Page<FreenetRequest>) {
+ if (registered.get()) throw IllegalStateException()
+ debugPages += page
+ }
+
fun registerToadlets() {
registered.set(true)
pageMaker.addNavigationCategory("/Sone/index.html", soneMenuName, "$soneMenu.Tooltip", sonePlugin)
addPages()
}
fun registerToadlets() {
registered.set(true)
pageMaker.addNavigationCategory("/Sone/index.html", soneMenuName, "$soneMenu.Tooltip", sonePlugin)
addPages()
}
- private fun addPages() =
+ private fun addPages(
pages: List<Page<FreenetRequest>> = this.pages
) =
pages
.map { pageToadletFactory.createPageToadlet(it) }
.onEach(registeredToadlets::plusAssign)
pages
.map { pageToadletFactory.createPageToadlet(it) }
.onEach(registeredToadlets::plusAssign)
@@
-55,4
+62,11
@@
class PageToadletRegistry @Inject constructor(
registeredToadlets.forEach(toadletContainer::unregister)
}
registeredToadlets.forEach(toadletContainer::unregister)
}
+ fun activateDebugMode() {
+ if (!debugActivated.get()) {
+ addPages(debugPages)
+ debugActivated.set(true)
+ }
+ }
+
}
}