/**
*
*/
package oboannotator.application;
import java.io.IOException;
import java.util.ArrayList;
import oboannotator.util.AppConfig;
import oboannotator.util.Util;
/**
* @author ahmedabdeenhamed
*
*/
public class UserCustomedAEApplication {
public static void composePrimitiveAE(String dictName, String addUpdateFlag) throws IOException{
//System.out.println("addUpdateFlag : " + addUpdateFlag);
StringBuilder xmlEngineBuilder = new StringBuilder(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" org.apache.uima.java\n");
xmlEngineBuilder.append(" true\n");
xmlEngineBuilder.append(" org.apache.uima.conceptMapper.ConceptMapper\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" ConceptMapper\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" 1\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" caseMatch\n");
xmlEngineBuilder.append(" desc goes here\n");
xmlEngineBuilder.append(" String\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" true\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" Stemmer\n");
xmlEngineBuilder.append(" desc goes here\n");
xmlEngineBuilder.append(" String\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" ResultingAnnotationName\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" Name of the annotation type created by this TAE,\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" String\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" true\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" ResultingEnclosingSpanName\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" Name of the feature in the resultingAnnotation to\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" String\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" AttributeList\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" List of attribute names for XML dictionary entry\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" String\n");
xmlEngineBuilder.append(" true\n");
xmlEngineBuilder.append(" true\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" FeatureList\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" List of feature names for CAS annotation - must\n");
xmlEngineBuilder.append(" correspond to AttributeList\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" String\n");
xmlEngineBuilder.append(" true\n");
xmlEngineBuilder.append(" true\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" TokenAnnotation\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" String\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" true\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" TokenClassFeatureName\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" Name of feature used when doing lookups against\n");
xmlEngineBuilder.append(" IncludedTokenClasses and ExcludedTokenClasses\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" String\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" TokenTextFeatureName\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" String\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" SpanFeatureStructure\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" Type of annotation which corresponds to spans of\n");
xmlEngineBuilder.append(" oboannotator.resources.data for processing (e.g. a Sentence)\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" String\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" true\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" OrderIndependentLookup\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" True if should ignore element order during lookup\n");
xmlEngineBuilder.append(" (i.e., \"top box\" would equal \"box top\"). Default is\n");
xmlEngineBuilder.append(" False.\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" Boolean\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" TokenTypeFeatureName\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" Name of feature used when doing lookups against\n");
xmlEngineBuilder.append(" IncludedTokenTypes and ExcludedTokenTypes\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" String\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append( "false\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" IncludedTokenTypes\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" Type of tokens to include in lookups (if not\n");
xmlEngineBuilder.append(" supplied, then all types are included except those\n");
xmlEngineBuilder.append(" specifically mentioned in ExcludedTokenTypes)\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" Integer\n");
xmlEngineBuilder.append(" true\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" ExcludedTokenTypes\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" Integer\n");
xmlEngineBuilder.append(" true\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" ExcludedTokenClasses\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" Class of tokens to exclude from lookups (if not\n");
xmlEngineBuilder.append(" supplied, then all classes are excluded except those\n");
xmlEngineBuilder.append(" specifically mentioned in IncludedTokenClasses,\n");
xmlEngineBuilder.append(" unless IncludedTokenClasses is not supplied, in\n");
xmlEngineBuilder.append(" which case none are excluded)\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" String\n");
xmlEngineBuilder.append(" true\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" IncludedTokenClasses\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" Class of tokens to include in lookups (if not\n");
xmlEngineBuilder.append(" supplied, then all classes are included except those\n");
xmlEngineBuilder.append(" specifically mentioned in ExcludedTokenClasses)\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" String\n");
xmlEngineBuilder.append(" true\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" TokenClassWriteBackFeatureNames\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" names of features that should be written back to a\n");
xmlEngineBuilder.append(" token, such as a POS tag\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" String\n");
xmlEngineBuilder.append(" true\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" ResultingAnnotationMatchedTextFeature\n");
xmlEngineBuilder.append(" String\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" PrintDictionary\n");
xmlEngineBuilder.append(" Boolean\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" SearchStrategy\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" String\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" StopWords\n");
xmlEngineBuilder.append(" String\n");
xmlEngineBuilder.append(" true\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" FindAllMatches\n");
xmlEngineBuilder.append(" Boolean\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" MatchedTokensFeatureName\n");
xmlEngineBuilder.append(" String\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" ReplaceCommaWithAND\n");
xmlEngineBuilder.append(" Boolean\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" TokenizerDescriptorPath\n");
xmlEngineBuilder.append(" String\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" true\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" LanguageID\n");
xmlEngineBuilder.append(" String\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" caseMatch\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" ignoreall\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" AttributeList\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" canonical\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" FeatureList\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" DictCanon\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" TokenAnnotation\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" uima.tt.TokenAnnotation\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" ResultingAnnotationName\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" org.apache.uima.conceptMapper.DictTerm\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" SpanFeatureStructure\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" uima.tcas.DocumentAnnotation\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" OrderIndependentLookup\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" TokenClassWriteBackFeatureNames\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" IncludedTokenClasses\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" PrintDictionary\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" FindAllMatches\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" StopWords\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" ReplaceCommaWithAND\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" TokenizerDescriptorPath\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" " + AppConfig.PRIMITIVE_AE_DIR + "OffsetTokenizer.xml\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" ResultingEnclosingSpanName\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" enclosingSpan\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" MatchedTokensFeatureName\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" matchedTokens\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" ResultingAnnotationMatchedTextFeature\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" matchedText\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" SearchStrategy\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" ContiguousMatch\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" LanguageID\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" en\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" uima.tt.TokenAnnotation\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" uima.tcas.Annotation\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" SemClass\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" semantic class of token\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" uima.cas.String\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" POS\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" Part of SPeech of term to which this\n");
xmlEngineBuilder.append(" token is a part\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" uima.cas.String\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" frost_TokenType\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" uima.cas.Integer\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" uima.tt.TokenAnnotation\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append("\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" uima.tt.TokenAnnotation\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" true\n");
xmlEngineBuilder.append(" true\n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append("\n");
xmlEngineBuilder.append("\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" DictionaryFile\n");
xmlEngineBuilder.append(" dictionary file loader.\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" org.apache.uima.conceptMapper.support.dictionaryResource.DictionaryResource\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append("\n");
xmlEngineBuilder.append("\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
if(addUpdateFlag.equals(AppConfig.ADD_NEW_DICTION)){
xmlEngineBuilder.append(" " + Util.removeFileExtension(dictName) +"Dictionary\n");
}else if(addUpdateFlag.equals(AppConfig.UPDATE_DICTION)){
xmlEngineBuilder.append(" " + Util.removeFileExtension(dictName) +"Dictionary\n");
}
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" A file containing the dictionary. Modify this URL to\n");
xmlEngineBuilder.append(" use a different dictionary.\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
if(addUpdateFlag.equals(AppConfig.ADD_NEW_DICTION)){
xmlEngineBuilder.append(" file:" + AppConfig.DICTIONARY_DIR+ dictName + AppConfig.XML_EXTENSION + "\n");
}else if(addUpdateFlag.equals(AppConfig.UPDATE_DICTION)){
//System.out.println("Valid dict name in the descreptor: " + Util.removeString(dictName, "AE.xml"));
xmlEngineBuilder.append(" file:" + AppConfig.DICTIONARY_DIR+ Util.removeString(dictName, "AE.xml")+ "\n");
//return;
}
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" org.apache.uima.conceptMapper.support.dictionaryResource.DictionaryResource_impl\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" DictionaryFile\n");
if(addUpdateFlag.equals(AppConfig.ADD_NEW_DICTION)){
xmlEngineBuilder.append(" " + Util.removeFileExtension(dictName) +"Dictionary\n");
}else if(addUpdateFlag.equals(AppConfig.UPDATE_DICTION)){
xmlEngineBuilder.append(" " + Util.removeFileExtension(dictName) +"Dictionary\n");
}
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append("\n");
xmlEngineBuilder.append("\n");
//String primitiveEngineXmlContent = xmlEngineBuilder.toString();
//composePrimitiveAE(String dictDir, String dictName, String primAEDir)
if(addUpdateFlag.equals(AppConfig.ADD_NEW_DICTION)){
Util.writeStringToFile(xmlEngineBuilder.toString(), AppConfig.DICTIONARY_AE_DIR, dictName+AppConfig.AE_STRING+AppConfig.XML_EXTENSION);
}else if(addUpdateFlag.equals(AppConfig.UPDATE_DICTION)){
//System.out.println("Dict name before saving to file: " + dictName);
//Util.writeStringToFile(xmlEngineBuilder.toString(), AppConfig.DICTIONARY_AE_DIR, dictName);
}
}
public static void composeAggregateAE(ArrayList dictionariesList) throws IOException{
StringBuilder xmlEngineBuilder = new StringBuilder();
xmlEngineBuilder.append("");
xmlEngineBuilder.append("\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" org.apache.uima.java\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" false\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
for(String currentDictionary: dictionariesList){
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
}
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" DictMatcher\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" MedlineDocument\n");
xmlEngineBuilder.append(" MedlineField\n");
xmlEngineBuilder.append(" OpenNLPTokenizer\n");
xmlEngineBuilder.append(" Tokenizer\n");
//MedlineDocument
//MedlineField
//MedlineField
for(String dictDescriptor: dictionariesList){
xmlEngineBuilder.append(" " + Util.removeFileExtension(dictDescriptor) + "ConceptMapper" + "\n");
}
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" oboannotator.typesys.MedlineDocument\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" oboannotator.typesys.MedlineField\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" oboannotator.typesys.MedlineDocument\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" oboannotator.typesys.MedlineField\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" org.apache.uima.examples.opennlp.Token\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" org.apache.uima.conceptMapper.DictTerm\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" true\n");
xmlEngineBuilder.append(" true\n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append(" \n");
xmlEngineBuilder.append("\n");
//System.out.println("AppConfig.AGGREGATE_AE_DIR: " + AppConfig.AGGREGATE_AE_DIR);
//System.out.println("AppConfig.USER_ASSEMBLED_AGGREGATE_AE: " + AppConfig.USER_ASSEMBLED_AGGREGATE_AE);
Util.writeStringToFile(xmlEngineBuilder.toString(), AppConfig.AGGREGATE_AE_DIR, AppConfig.USER_ASSEMBLED_AGGREGATE_AE);
}
/**
* @param args
*/
public static void main(String[] args) {
//System.out.println("creating the AE...");
//String aggAEDir = "/Users/ahmedabdeenhamed/Projects/concept-mapper-project/oboannotator.resources.descriptors/analysis_engine/aggregate/";
String dictDir = "src/oboannotator.resources.descriptors/analysis_engine/dictionary/";
ArrayList list = new ArrayList();
list.add("EnvoAE.xml");
//list.add("GazAE.xml");
// String dictDir = "/Users/ahmedabdeenhamed/Projects/concept-mapper-project/oboannotator.resources/dict/";
//String dictName = "testDict.xml";
try {
//UserCustomedAEApplication.composePrimitiveAE("newDictionary", "UPDATE_DICTIONARY");
//composeAggregateAE(list, dictDir, aggAEDir, aggAEName)
UserCustomedAEApplication.composeAggregateAE(list);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}