X-Git-Url: http://gitweb.fperrin.net/?a=blobdiff_plain;f=src%2Fcom%2Fhughes%2Fandroid%2Fdictionary%2Fparser%2Fwiktionary%2FItFunctionCallbacks.java;h=17ee4beabfe7fef12259426eb9918168b0ebfd79;hb=2fc669d88306d563fc9c899d8d91b25d591692ea;hp=3b089fde647838f556469afa320de221dfdcff9b;hpb=481738c6610def8dcd0378f3c419fa8c0a0f6cf3;p=DictionaryPC.git diff --git a/src/com/hughes/android/dictionary/parser/wiktionary/ItFunctionCallbacks.java b/src/com/hughes/android/dictionary/parser/wiktionary/ItFunctionCallbacks.java index 3b089fd..17ee4be 100644 --- a/src/com/hughes/android/dictionary/parser/wiktionary/ItFunctionCallbacks.java +++ b/src/com/hughes/android/dictionary/parser/wiktionary/ItFunctionCallbacks.java @@ -14,37 +14,37 @@ package com.hughes.android.dictionary.parser.wiktionary; +import java.util.List; +import java.util.Map; + import com.hughes.android.dictionary.parser.WikiTokenizer; import com.hughes.android.dictionary.parser.wiktionary.AbstractWiktionaryParser.AppendAndIndexWikiCallback; import com.hughes.android.dictionary.parser.wiktionary.AbstractWiktionaryParser.NameAndArgs; -import java.util.List; -import java.util.Map; - class ItFunctionCallbacks { static void addGenericCallbacks( - Map> callbacks) { - callbacks.put("-hyph-", new Redispatch("\n==== Sillabazione ====\n")); - callbacks.put("-pron-", new Redispatch("\n==== Pronuncia ====\n")); - callbacks.put("-etim-", new Redispatch("\n==== Etimologia / Derivazione ====\n")); - callbacks.put("-syn-", new Redispatch("\n==== Sinonimi ====\n")); - callbacks.put("-ant-", new Redispatch("\n==== Antonimi/Contrari ====\n")); - callbacks.put("-drv-", new Redispatch("\n==== Parole derivate ====\n")); - callbacks.put("-prov-", new Redispatch("\n==== Proverbi e modi di dire ====\n")); - callbacks.put("-ref-", new Redispatch("\n==== Note / Riferimenti ====\n")); - callbacks.put("-rel-", new Redispatch("\n==== Termini correlati ====\n")); - callbacks.put("-var-", new Redispatch("\n==== Varianti ====\n")); + Map> callbacks) { + callbacks.put("-hyph-", new Redispatch<>("\n==== Sillabazione ====\n")); + callbacks.put("-pron-", new Redispatch<>("\n==== Pronuncia ====\n")); + callbacks.put("-etim-", new Redispatch<>("\n==== Etimologia / Derivazione ====\n")); + callbacks.put("-syn-", new Redispatch<>("\n==== Sinonimi ====\n")); + callbacks.put("-ant-", new Redispatch<>("\n==== Antonimi/Contrari ====\n")); + callbacks.put("-drv-", new Redispatch<>("\n==== Parole derivate ====\n")); + callbacks.put("-prov-", new Redispatch<>("\n==== Proverbi e modi di dire ====\n")); + callbacks.put("-ref-", new Redispatch<>("\n==== Note / Riferimenti ====\n")); + callbacks.put("-rel-", new Redispatch<>("\n==== Termini correlati ====\n")); + callbacks.put("-var-", new Redispatch<>("\n==== Varianti ====\n")); - callbacks.put("-trans1-", new SkipSection()); - callbacks.put("-trans2-", new SkipSection()); - callbacks.put("-ref-", new SkipSection()); + callbacks.put("-trans1-", new SkipSection<>()); + callbacks.put("-trans2-", new SkipSection<>()); + callbacks.put("-ref-", new SkipSection<>()); } - static final NameAndArgs NAME_AND_ARGS = new NameAndArgs(); + static final NameAndArgs NAME_AND_ARGS = new NameAndArgs<>(); static final class Redispatch implements - FunctionCallback { + FunctionCallback { final String newText; public Redispatch(String newText) { @@ -53,10 +53,10 @@ class ItFunctionCallbacks { @Override public boolean onWikiFunction(final WikiTokenizer wikiTokenizer, final String name, - final List args, - final Map namedArgs, - final T parser, - final AppendAndIndexWikiCallback appendAndIndexWikiCallback) { + final List args, + final Map namedArgs, + final T parser, + final AppendAndIndexWikiCallback appendAndIndexWikiCallback) { if (!namedArgs.isEmpty() || args.size() != 0) { return false; } @@ -66,18 +66,18 @@ class ItFunctionCallbacks { } static final class SkipSection implements - FunctionCallback { + FunctionCallback { public SkipSection() { } @Override public boolean onWikiFunction(final WikiTokenizer wikiTokenizer, final String name, - final List args, - final Map namedArgs, - final T parser, - final AppendAndIndexWikiCallback appendAndIndexWikiCallback) { + final List args, + final Map namedArgs, + final T parser, + final AppendAndIndexWikiCallback appendAndIndexWikiCallback) { while (wikiTokenizer.nextToken() != null) { - if (wikiTokenizer.isFunction() + if (wikiTokenizer.isFunction() && wikiTokenizer.functionName().startsWith("-") && wikiTokenizer.functionName().endsWith("-") // Hack to prevent infinite-looping, would be better to check that this func was at the start of the line.