X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=blobdiff_plain;f=src%2Fmain%2Fkotlin%2Fnet%2Fpterodactylus%2Fsone%2Ftemplate%2FLinkedElementRenderFilter.kt;h=1ecc0ddaac1892e9174a847beb7a47551c8afcd3;hp=a527a1d2fb9c27cf9bd203047a30f57fff4c1775;hb=7b1d9fb2dfd7859118d48d347becd08b88521586;hpb=d9165cde615f02b1ab342d17456dd124ebc4f5bf diff --git a/src/main/kotlin/net/pterodactylus/sone/template/LinkedElementRenderFilter.kt b/src/main/kotlin/net/pterodactylus/sone/template/LinkedElementRenderFilter.kt index a527a1d..1ecc0dd 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 @@ -14,14 +13,6 @@ 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) }!! - } - override fun format(templateContext: TemplateContext?, data: Any?, parameters: Map?) = when { data is LinkedElement && data.loading -> renderNotLoadedLinkedElement(data) @@ -54,3 +45,7 @@ class LinkedElementRenderFilter @Inject constructor(private val templateContextF }.toString() } + +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()