X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fkotlin%2Fnet%2Fpterodactylus%2Fsone%2Ftemplate%2FLinkedElementRenderFilter.kt;h=4536c042309a6e8da3e55e0e616417c833e14617;hb=613d9d78ad0382c6efb834bdf0a479737b59dc0e;hp=e15f68ba2edeb0c44e86ea3cc9ab518f1129085c;hpb=19e49c0a2463b90c3468903672d8ba600da217d2;p=Sone.git diff --git a/src/main/kotlin/net/pterodactylus/sone/template/LinkedElementRenderFilter.kt b/src/main/kotlin/net/pterodactylus/sone/template/LinkedElementRenderFilter.kt index e15f68b..4536c04 100644 --- a/src/main/kotlin/net/pterodactylus/sone/template/LinkedElementRenderFilter.kt +++ b/src/main/kotlin/net/pterodactylus/sone/template/LinkedElementRenderFilter.kt @@ -1,11 +1,10 @@ package net.pterodactylus.sone.template import net.pterodactylus.sone.core.LinkedElement +import net.pterodactylus.sone.utils.asTemplate import net.pterodactylus.util.template.Filter import net.pterodactylus.util.template.TemplateContext import net.pterodactylus.util.template.TemplateContextFactory -import net.pterodactylus.util.template.TemplateParser -import java.io.StringReader import java.io.StringWriter import javax.inject.Inject @@ -15,11 +14,9 @@ import javax.inject.Inject class LinkedElementRenderFilter @Inject constructor(private val templateContextFactory: TemplateContextFactory): Filter { companion object { - private val loadedImageTemplate = """<%include linked/image.html>""".parse() - private val loadedHtmlPageTemplate = """<%include linked/html-page.html>""".parse() - private val notLoadedImageTemplate = """<%include linked/notLoaded.html>""".parse() - - private fun String.parse() = StringReader(this).use { TemplateParser.parse(it) }!! + private val loadedImageTemplate = """<%include linked/image.html>""".asTemplate() + private val loadedHtmlPageTemplate = """<%include linked/html-page.html>""".asTemplate() + private val notLoadedImageTemplate = """<%include linked/notLoaded.html>""".asTemplate() } override fun format(templateContext: TemplateContext?, data: Any?, parameters: Map?) = @@ -34,8 +31,7 @@ class LinkedElementRenderFilter @Inject constructor(private val templateContextF StringWriter().use { val templateContext = templateContextFactory.createTemplateContext() templateContext["link"] = linkedElement.link - loadedImageTemplate.render(templateContext, it) - it + it.also { loadedImageTemplate.render(templateContext, it) } }.toString() private fun renderHtmlPage(linkedElement: LinkedElement) = @@ -51,8 +47,7 @@ class LinkedElementRenderFilter @Inject constructor(private val templateContextF StringWriter().use { val templateContext = templateContextFactory.createTemplateContext() templateContext["link"] = linkedElement.link - notLoadedImageTemplate.render(templateContext, it) - it + it.also { notLoadedImageTemplate.render(templateContext, it) } }.toString() }