]> gitweb.fperrin.net Git - DictionaryPC.git/blobdiff - src/com/hughes/android/dictionary/engine/DictionaryBuilder.java
Got rid of Category:.
[DictionaryPC.git] / src / com / hughes / android / dictionary / engine / DictionaryBuilder.java
index 7aee4428655fc02335479cf77d617acf73dcba68..7c1c27586c1fd1c1a64b5a11ed07091278eb915a 100644 (file)
@@ -35,6 +35,7 @@ import com.hughes.android.dictionary.parser.Parser;
 import com.hughes.android.dictionary.parser.wiktionary.EnForeignParser;
 import com.hughes.android.dictionary.parser.wiktionary.EnToTranslationParser;
 import com.hughes.android.dictionary.parser.wiktionary.EnTranslationToTranslationParser;
+import com.hughes.android.dictionary.parser.wiktionary.WholeSectionToHtmlParser;
 import com.hughes.util.Args;
 import com.hughes.util.FileUtil;
 
@@ -166,9 +167,19 @@ public class DictionaryBuilder {
           }
           parser.parse(file, entrySource, pageLimit);
         } else if (EnTranslationToTranslationParser.NAME.equals(inputFormat)) {
-          final Pattern codePattern1 = Pattern.compile(keyValueArgs.remove(prefix + "LangPattern1"), Pattern.CASE_INSENSITIVE);
-          final Pattern codePattern2 = Pattern.compile(keyValueArgs.remove(prefix + "LangPattern2"), Pattern.CASE_INSENSITIVE);
+          final String code1 = keyValueArgs.remove(prefix + "LangPattern1");
+          final String code2 = keyValueArgs.remove(prefix + "LangPattern2");
+          if (code1 == null || code2 == null) {
+            fatalError("Must specify LangPattern1 and LangPattern2.");
+            return;
+          }
+          final Pattern codePattern1 = Pattern.compile(code1, Pattern.CASE_INSENSITIVE);
+          final Pattern codePattern2 = Pattern.compile(code2, Pattern.CASE_INSENSITIVE);
           new EnTranslationToTranslationParser(dictionaryBuilder.indexBuilders, new Pattern[] {codePattern1, codePattern2}).parse(file, entrySource, pageLimit);
+        } else if (WholeSectionToHtmlParser.NAME.equals(inputFormat)) {
+          final int titleIndex = Integer.parseInt(keyValueArgs.remove(prefix + "TitleIndex")) - 1;
+          final String wiktionaryLang = keyValueArgs.remove(prefix + "WiktionaryLang");
+          new WholeSectionToHtmlParser(dictionaryBuilder.indexBuilders.get(titleIndex), wiktionaryLang).parse(file, entrySource, pageLimit);
         } else {
           fatalError("Invalid or missing input format: " + inputFormat);
         }