X-Git-Url: http://gitweb.fperrin.net/?a=blobdiff_plain;f=src%2Fcom%2Fhughes%2Fandroid%2Fdictionary%2Fparser%2Fwiktionary%2FEnFunctionCallbacks.java;h=15dae48c2afda3125a62e6a05dfc034e1cf0fb5f;hb=791f149be5b2297b492467f55ea332378819a9d9;hp=5593ffd8bc31826ef782853eebfb37a2d8876f9b;hpb=84c4e4a87d7d02d81f762c567c09156cba68e7b1;p=DictionaryPC.git diff --git a/src/com/hughes/android/dictionary/parser/wiktionary/EnFunctionCallbacks.java b/src/com/hughes/android/dictionary/parser/wiktionary/EnFunctionCallbacks.java index 5593ffd..15dae48 100644 --- a/src/com/hughes/android/dictionary/parser/wiktionary/EnFunctionCallbacks.java +++ b/src/com/hughes/android/dictionary/parser/wiktionary/EnFunctionCallbacks.java @@ -32,7 +32,13 @@ import com.hughes.util.ListUtil; class EnFunctionCallbacks { static final Map> DEFAULT = new LinkedHashMap>(); - + + static final Map> DEFAULT_GENERIC = new LinkedHashMap>(); + static { + FunctionCallback callback = new TranslationCallback(); + DEFAULT_GENERIC.put("t", callback); + } + static { FunctionCallback callback = new TranslationCallback(); DEFAULT.put("t", callback); @@ -100,7 +106,7 @@ class EnFunctionCallbacks { callback = new AppendName(); DEFAULT.put("...", callback); - DEFAULT.put("qualifier", new QualifierCallback()); + DEFAULT.put("qualifier", new QualifierCallback()); DEFAULT.put("italbrac", new italbrac()); DEFAULT.put("gloss", new gloss()); DEFAULT.put("not used", new not_used()); @@ -173,12 +179,12 @@ class EnFunctionCallbacks { // ------------------------------------------------------------------ - static final class QualifierCallback implements FunctionCallback { + static final class QualifierCallback implements FunctionCallback { @Override public boolean onWikiFunction(final WikiTokenizer wikiTokenizer, final String name, final List args, final Map namedArgs, - final EnParser parser, - final AppendAndIndexWikiCallback appendAndIndexWikiCallback) { + final T parser, + final AppendAndIndexWikiCallback appendAndIndexWikiCallback) { if (args.size() != 1 || !namedArgs.isEmpty()) { EnParser.LOG.warning("weird qualifier: "); return false; @@ -193,12 +199,12 @@ class EnFunctionCallbacks { // ------------------------------------------------------------------ - static final class EncodingCallback implements FunctionCallback { + static final class EncodingCallback implements FunctionCallback { @Override public boolean onWikiFunction(final WikiTokenizer wikiTokenizer, final String name, final List args, final Map namedArgs, - final EnParser parser, - final AppendAndIndexWikiCallback appendAndIndexWikiCallback) { + final T parser, + final AppendAndIndexWikiCallback appendAndIndexWikiCallback) { if (!namedArgs.isEmpty()) { EnParser.LOG.warning("weird encoding: " + wikiTokenizer.token()); } @@ -224,12 +230,12 @@ class EnFunctionCallbacks { // ------------------------------------------------------------------ - static final class Gender implements FunctionCallback { + static final class Gender implements FunctionCallback { @Override public boolean onWikiFunction(final WikiTokenizer wikiTokenizer, final String name, final List args, final Map namedArgs, - final EnParser parser, - final AppendAndIndexWikiCallback appendAndIndexWikiCallback) { + final T parser, + final AppendAndIndexWikiCallback appendAndIndexWikiCallback) { if (!namedArgs.isEmpty()) { return false; } @@ -312,7 +318,7 @@ class EnFunctionCallbacks { // ------------------------------------------------------------------ - static final class AppendArg0 implements FunctionCallback { + static final class AppendArg0 implements FunctionCallback { @Override public boolean onWikiFunction(final WikiTokenizer wikiTokenizer, final String name, final List args, final Map namedArgs, @@ -337,12 +343,12 @@ class EnFunctionCallbacks { // ------------------------------------------------------------------ - static final class italbrac implements FunctionCallback { + static final class italbrac implements FunctionCallback { @Override public boolean onWikiFunction(final WikiTokenizer wikiTokenizer, final String name, final List args, final Map namedArgs, - final EnParser parser, - final AppendAndIndexWikiCallback appendAndIndexWikiCallback) { + final T parser, + final AppendAndIndexWikiCallback appendAndIndexWikiCallback) { if (args.size() != 1 || !namedArgs.isEmpty()) { return false; } @@ -355,12 +361,12 @@ class EnFunctionCallbacks { // ------------------------------------------------------------------ - static final class gloss implements FunctionCallback { + static final class gloss implements FunctionCallback { @Override public boolean onWikiFunction(final WikiTokenizer wikiTokenizer, final String name, final List args, final Map namedArgs, - final EnParser parser, - final AppendAndIndexWikiCallback appendAndIndexWikiCallback) { + final T parser, + final AppendAndIndexWikiCallback appendAndIndexWikiCallback) { if (args.size() != 1 || !namedArgs.isEmpty()) { return false; } @@ -373,24 +379,24 @@ class EnFunctionCallbacks { // ------------------------------------------------------------------ - static final class Ignore implements FunctionCallback { + static final class Ignore implements FunctionCallback { @Override public boolean onWikiFunction(final WikiTokenizer wikiTokenizer, final String name, final List args, final Map namedArgs, - final EnParser parser, - final AppendAndIndexWikiCallback appendAndIndexWikiCallback) { + final T parser, + final AppendAndIndexWikiCallback appendAndIndexWikiCallback) { return true; } } // ------------------------------------------------------------------ - static final class not_used implements FunctionCallback { + static final class not_used implements FunctionCallback { @Override public boolean onWikiFunction(final WikiTokenizer wikiTokenizer, final String name, final List args, final Map namedArgs, - final EnParser parser, - final AppendAndIndexWikiCallback appendAndIndexWikiCallback) { + final T parser, + final AppendAndIndexWikiCallback appendAndIndexWikiCallback) { appendAndIndexWikiCallback.builder.append("(not used)"); return true; } @@ -399,12 +405,12 @@ class EnFunctionCallbacks { // ------------------------------------------------------------------ - static final class AppendName implements FunctionCallback { + static final class AppendName implements FunctionCallback { @Override public boolean onWikiFunction(final WikiTokenizer wikiTokenizer, final String name, final List args, final Map namedArgs, - final EnParser parser, - final AppendAndIndexWikiCallback appendAndIndexWikiCallback) { + final T parser, + final AppendAndIndexWikiCallback appendAndIndexWikiCallback) { if (!args.isEmpty() || !namedArgs.isEmpty()) { return false; } @@ -460,12 +466,12 @@ class EnFunctionCallbacks { // -------------------------------------------------------------------- // -------------------------------------------------------------------- - static final class wikipedia implements FunctionCallback { + static final class wikipedia implements FunctionCallback { @Override public boolean onWikiFunction(final WikiTokenizer wikiTokenizer, final String name, final List args, final Map namedArgs, - final EnParser parser, - final AppendAndIndexWikiCallback appendAndIndexWikiCallback) { + final T parser, + final AppendAndIndexWikiCallback appendAndIndexWikiCallback) { namedArgs.remove("lang"); if (args.size() > 1 || !namedArgs.isEmpty()) { // Unindexed!