Update year in copyright lines
[Sone.git] / src / main / java / net / pterodactylus / sone / main / ReparseFilter.java
1 package net.pterodactylus.sone.main;
2
3 import java.io.StringReader;
4 import java.io.StringWriter;
5 import java.util.Map;
6
7 import net.pterodactylus.util.template.Filter;
8 import net.pterodactylus.util.template.Template;
9 import net.pterodactylus.util.template.TemplateContext;
10 import net.pterodactylus.util.template.TemplateException;
11 import net.pterodactylus.util.template.TemplateParser;
12
13 /**
14  * Takes the input and parses it as a new {@link Template}.
15  */
16 public class ReparseFilter implements Filter {
17
18         @Override
19         public Object format(TemplateContext templateContext, Object data, Map<String, Object> parameters) {
20                 Template template = TemplateParser.parse(new StringReader(String.valueOf(data)));
21                 StringWriter stringWriter = new StringWriter();
22                 try {
23                         template.render(templateContext, stringWriter);
24                 } catch (TemplateException e) {
25                         throw new RuntimeException(e);
26                 } finally {
27                         return stringWriter.toString();
28                 }
29         }
30
31 }