X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Ftemplate%2FParserFilter.java;h=a53184369cdd78d493a2a1ffe89447bd34cdc411;hb=9411a2829261e28c88709228b07e1784e7333bd6;hp=b8af83174bda1f2370205145a4ac1cc503923908;hpb=d11409a9e2c072ad69be7d19f1fe715cafae0a65;p=Sone.git diff --git a/src/main/java/net/pterodactylus/sone/template/ParserFilter.java b/src/main/java/net/pterodactylus/sone/template/ParserFilter.java index b8af831..a531843 100644 --- a/src/main/java/net/pterodactylus/sone/template/ParserFilter.java +++ b/src/main/java/net/pterodactylus/sone/template/ParserFilter.java @@ -1,5 +1,5 @@ /* - * Sone - ParserFilter.java - Copyright © 2011–2012 David Roden + * Sone - ParserFilter.java - Copyright © 2011–2013 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 @@ -84,9 +84,6 @@ public class ParserFilter implements Filter { this.soneTextParser = soneTextParser; } - /** - * {@inheritDoc} - */ @Override public Object format(TemplateContext templateContext, Object data, Map parameters) { String text = String.valueOf(data); @@ -94,10 +91,10 @@ public class ParserFilter implements Filter { int cutOffLength = Numbers.safeParseInteger(parameters.get("cut-off-length"), Numbers.safeParseInteger(templateContext.get(String.valueOf(parameters.get("cut-off-length"))), length)); Object sone = parameters.get("sone"); if (sone instanceof String) { - sone = core.getSone((String) sone, false); + sone = core.getSone((String) sone).orNull(); } FreenetRequest request = (FreenetRequest) templateContext.get("request"); - SoneTextParserContext context = new SoneTextParserContext(request, (Sone) sone); + SoneTextParserContext context = new SoneTextParserContext((Sone) sone); StringWriter parsedTextWriter = new StringWriter(); try { Iterable parts = soneTextParser.parse(context, new StringReader(text)); @@ -248,8 +245,8 @@ public class ParserFilter implements Filter { * The part to render */ private void render(Writer writer, PostPart postPart) { - SoneTextParser parser = new SoneTextParser(core, core); - SoneTextParserContext parserContext = new SoneTextParserContext(null, postPart.getPost().getSone()); + SoneTextParser parser = new SoneTextParser(core.getDatabase()); + SoneTextParserContext parserContext = new SoneTextParserContext(postPart.getPost().getSone()); try { Iterable parts = parser.parse(parserContext, new StringReader(postPart.getPost().getText())); StringBuilder excerpt = new StringBuilder();