From 6dff8a7d414714d5521b40748dd62e242f75ca38 Mon Sep 17 00:00:00 2001 From: Bananeweizen Date: Mon, 7 Jan 2013 22:51:25 +0100 Subject: new: remove unneeded paragraphs around log entries * happen often in OC logs and consume much space in log view --- .../src/cgeo/geocaching/connector/oc/OC11XMLParser.java | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'main/src/cgeo/geocaching/connector/oc/OC11XMLParser.java') diff --git a/main/src/cgeo/geocaching/connector/oc/OC11XMLParser.java b/main/src/cgeo/geocaching/connector/oc/OC11XMLParser.java index b80da6b..36292d0 100644 --- a/main/src/cgeo/geocaching/connector/oc/OC11XMLParser.java +++ b/main/src/cgeo/geocaching/connector/oc/OC11XMLParser.java @@ -34,6 +34,8 @@ import java.util.regex.Pattern; public class OC11XMLParser { + private static final String PARAGRAPH_END = "

"; + private static final String PARAGRAPH_BEGIN = "

"; private static Pattern STRIP_DATE = Pattern.compile("\\+0([0-9]){1}\\:00"); private static class CacheHolder { @@ -522,7 +524,7 @@ public class OC11XMLParser { @Override public void end(String logText) { - logHolder.logEntry.log = logText; + logHolder.logEntry.log = stripMarkup(logText); } }); @@ -534,4 +536,17 @@ public class OC11XMLParser { return null; } } + + /** + * removes unneeded markup + */ + protected static String stripMarkup(String input) { + if (StringUtils.startsWith(input, PARAGRAPH_BEGIN) && StringUtils.endsWith(input, PARAGRAPH_END)) { + String inner = input.substring(PARAGRAPH_BEGIN.length(), input.length() - PARAGRAPH_END.length()); + if (inner.indexOf(PARAGRAPH_BEGIN) < 0) { + return inner; + } + } + return input; + } } \ No newline at end of file -- cgit v1.1