Changeset 13056
- Timestamp:
- 2006-10-09T16:56:50+13:00 (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/gli/src/org/greenstone/gatherer/cdm/CollectionConfiguration.java
r12814 r13056 235 235 return languageMetadataToString(command_element, show_extracted_namespace); 236 236 } 237 else if(command_element_name.equals(StaticStrings. LEVELS_ELEMENT)) {238 return levelsToString(command_element);239 } 240 else if(command_element_name.equals(StaticStrings. LEVEL_DEFAULT_ELEMENT)) {241 return levelDefaultToString(command_element);237 else if(command_element_name.equals(StaticStrings.INDEXOPTIONS_ELEMENT)) { 238 return indexOptionsToString(command_element); 239 } 240 else if(command_element_name.equals(StaticStrings.INDEXOPTION_DEFAULT_ELEMENT)) { 241 return indexOptionDefaultToString(command_element); 242 242 } 243 243 else if(command_element_name.equals(StaticStrings.COLLECTIONMETADATA_ELEMENT)) { … … 259 259 return pluginToString(command_element, show_extracted_namespace); 260 260 } 261 // else if(command_element_name.equals(StaticStrings.SEARCHTYPE_ELEMENT)) {262 // return searchtypeToString(command_element);263 // }264 261 else if(command_element_name.equals(StaticStrings.SUBCOLLECTION_ELEMENT)) { 265 262 return subcollectionToString(command_element, show_extracted_namespace); … … 317 314 318 315 /** Gives the preferred ordering of commands */ 319 static final private String[] COMMAND_ORDER = {StaticStrings.COLLECTIONMETADATA_CREATOR_ELEMENT, StaticStrings.COLLECTIONMETADATA_MAINTAINER_ELEMENT, StaticStrings.COLLECTIONMETADATA_PUBLIC_ELEMENT, StaticStrings.BUILDTYPE_ELEMENT, StaticStrings.PLUGIN_ELEMENT, StaticStrings.INDEXES_ELEMENT, StaticStrings.INDEX_DEFAULT_ELEMENT, StaticStrings. LEVELS_ELEMENT, StaticStrings.LEVEL_DEFAULT_ELEMENT, StaticStrings.LANGUAGES_ELEMENT, StaticStrings.LANGUAGE_DEFAULT_ELEMENT, StaticStrings.LANGUAGE_METADATA_ELEMENT, StaticStrings.SUBCOLLECTION_ELEMENT, StaticStrings.SUBCOLLECTION_INDEXES_ELEMENT, StaticStrings.SUBCOLLECTION_DEFAULT_INDEX_ELEMENT, StaticStrings.SUPERCOLLECTION_ELEMENT, StaticStrings.CLASSIFY_ELEMENT, StaticStrings.FORMAT_ELEMENT, StaticStrings.COLLECTIONMETADATA_ELEMENT};316 static final private String[] COMMAND_ORDER = {StaticStrings.COLLECTIONMETADATA_CREATOR_ELEMENT, StaticStrings.COLLECTIONMETADATA_MAINTAINER_ELEMENT, StaticStrings.COLLECTIONMETADATA_PUBLIC_ELEMENT, StaticStrings.BUILDTYPE_ELEMENT, StaticStrings.PLUGIN_ELEMENT, StaticStrings.INDEXES_ELEMENT, StaticStrings.INDEX_DEFAULT_ELEMENT, StaticStrings.INDEXOPTIONS_ELEMENT, StaticStrings.INDEXOPTION_DEFAULT_ELEMENT, StaticStrings.LANGUAGES_ELEMENT, StaticStrings.LANGUAGE_DEFAULT_ELEMENT, StaticStrings.LANGUAGE_METADATA_ELEMENT, StaticStrings.SUBCOLLECTION_ELEMENT, StaticStrings.SUBCOLLECTION_INDEXES_ELEMENT, StaticStrings.SUBCOLLECTION_DEFAULT_INDEX_ELEMENT, StaticStrings.SUPERCOLLECTION_ELEMENT, StaticStrings.CLASSIFY_ELEMENT, StaticStrings.FORMAT_ELEMENT, StaticStrings.COLLECTIONMETADATA_ELEMENT}; 320 317 321 318 /** ************************** Public Data Members ***************************/ … … 381 378 382 379 public Element getLevels() { 383 return getOrCreateElementByTagName(StaticStrings.LEVELS_ELEMENT, null, null); 384 } 385 380 return getOrCreateElementByTagName(StaticStrings.INDEXOPTIONS_ELEMENT, StaticStrings.NAME_ATTRIBUTE, StaticStrings.LEVELS_STR); 381 } 382 383 public Element getLevelDefault() { 384 return getOrCreateElementByTagName(StaticStrings.INDEXOPTION_DEFAULT_ELEMENT, StaticStrings.NAME_ATTRIBUTE, StaticStrings.LEVEL_DEFAULT_STR); 385 } 386 387 public Element getStemOptions() { 388 return getOrCreateElementByTagName(StaticStrings.INDEXOPTIONS_ELEMENT, StaticStrings.NAME_ATTRIBUTE, StaticStrings.STEMOPTIONS_STR); 389 } 390 391 386 392 public Element getMaintainer() { 387 393 Element element = getOrCreateElementByTagName(StaticStrings.COLLECTIONMETADATA_MAINTAINER_ELEMENT, null, null); … … 452 458 // Anything else we write to file, but only if it has been assigned, except for index and level commands 453 459 // (which just get commented out if unassigned -- a side effect of MG & MGPP compatibility) 454 else if (!command_element.getAttribute(StaticStrings.ASSIGNED_ATTRIBUTE).equals(StaticStrings.FALSE_STR) || command_element.getNodeName().equals(StaticStrings.INDEXES_ELEMENT) || command_element.getNodeName().equals(StaticStrings.INDEX_DEFAULT_ELEMENT) || command_element.getNodeName().equals(StaticStrings. LEVELS_ELEMENT) || command_element.getNodeName().equals(StaticStrings.LEVEL_DEFAULT_ELEMENT)) {460 else if (!command_element.getAttribute(StaticStrings.ASSIGNED_ATTRIBUTE).equals(StaticStrings.FALSE_STR) || command_element.getNodeName().equals(StaticStrings.INDEXES_ELEMENT) || command_element.getNodeName().equals(StaticStrings.INDEX_DEFAULT_ELEMENT) || command_element.getNodeName().equals(StaticStrings.INDEXOPTIONS_ELEMENT) || command_element.getNodeName().equals(StaticStrings.INDEXOPTION_DEFAULT_ELEMENT)) { 455 461 String command; 456 462 if (command_element.getNodeName().equals(StaticStrings.FORMAT_ELEMENT)) { … … 770 776 } 771 777 772 static private String levelsToString(Element command_element) {778 static private String indexOptionsToString(Element command_element) { 773 779 StringBuffer text = new StringBuffer(""); 774 780 if(command_element.getAttribute(StaticStrings.ASSIGNED_ATTRIBUTE).equals(StaticStrings.FALSE_STR)) { 775 781 text.append("#"); 776 782 } 777 text.append( StaticStrings.LEVELS_STR);783 text.append(command_element.getAttribute(StaticStrings.NAME_ATTRIBUTE)); 778 784 text.append(StaticStrings.TAB_CHARACTER); 779 785 text.append(StaticStrings.TAB_CHARACTER); 780 NodeList content_elements = command_element.getElementsByTagName(StaticStrings. LEVEL_ELEMENT);786 NodeList content_elements = command_element.getElementsByTagName(StaticStrings.INDEXOPTION_ELEMENT); 781 787 int content_elements_length = content_elements.getLength(); 782 // Don't output anything if no levels are set.788 // Don't output anything if no options are set. 783 789 if(content_elements_length == 0) { 784 790 return null; … … 792 798 } 793 799 794 static private String levelDefaultToString(Element command_element) {800 static private String indexOptionDefaultToString(Element command_element) { 795 801 StringBuffer text = new StringBuffer(""); 796 802 if(command_element.getAttribute(StaticStrings.ASSIGNED_ATTRIBUTE).equals(StaticStrings.FALSE_STR)) { 797 803 text.append("#"); 798 804 } 799 text.append( StaticStrings.LEVEL_DEFAULT_STR);805 text.append(command_element.getAttribute(StaticStrings.NAME_ATTRIBUTE)); 800 806 text.append(StaticStrings.TAB_CHARACTER); 801 text.append(command_element.getAttribute(StaticStrings. NAME_ATTRIBUTE));807 text.append(command_element.getAttribute(StaticStrings.VALUE_ATTRIBUTE)); 802 808 return text.toString(); 803 809 } 804 810 805 806 807 811 static private String metadataToString(Element command_element, boolean text_value) { 808 812 // lets first check the value - if its empty, don't bother sticking it in the config file … … 937 941 command_element = parseLanguageMetadata(command_str); 938 942 } 939 if(command_element == null && (command_type.equals(StaticStrings.LEVELS_STR) || command_type.equals(StaticStrings.COMMENTED_LEVELS_STR))) { 940 command_element = parseLevels(command_str); 941 } 942 if(command_element == null && (command_type.equals(StaticStrings.LEVEL_DEFAULT_STR) || command_type.equals(StaticStrings.COMMENTED_LEVEL_DEFAULT_STR))) { 943 if(command_element == null && command_type.equals(StaticStrings.LEVELS_STR)) { 944 command_element = parseIndexOptions(command_str, StaticStrings.LEVELS_STR, true); 945 } 946 if (command_element == null && command_type.equals(StaticStrings.COMMENTED_LEVELS_STR)) { 947 command_element = parseIndexOptions(command_str, StaticStrings.LEVELS_STR, false); 948 } 949 if(command_element == null && command_type.equals(StaticStrings.LEVEL_DEFAULT_STR)) { 950 command_element = parseIndexOptionDefault(command_str, StaticStrings.LEVEL_DEFAULT_STR, true); 951 } 952 if(command_element == null && command_type.equals(StaticStrings.COMMENTED_LEVEL_DEFAULT_STR)) { 943 953 944 command_element = parseLevelDefault(command_str); 945 } 946 954 command_element = parseIndexOptionDefault(command_str, StaticStrings.LEVEL_DEFAULT_STR, false); 955 } 956 if (command_element == null && command_type.equals(StaticStrings.STEMOPTIONS_STR)) { 957 command_element = parseIndexOptions(command_str, StaticStrings.STEMOPTIONS_STR, true); 958 } 959 if (command_element == null && command_type.equals(StaticStrings.COMMENTED_STEMOPTIONS_STR)) { 960 command_element = parseIndexOptions(command_str, StaticStrings.STEMOPTIONS_STR, false); 961 } 947 962 if(command_element == null && command_type.equals(StaticStrings.COLLECTIONMETADATA_STR)) { 948 963 command_element = parseMetadata(tokenizer); // Revised to handle multiple lines … … 1282 1297 } 1283 1298 1284 private Element parse Levels(String command_str) {1299 private Element parseIndexOptions(String command_str, String type, boolean assigned) { 1285 1300 Element command_element = null; 1286 1301 try { 1287 1302 StringTokenizer tokenizer = new StringTokenizer(command_str); 1288 // First token is command type (levels)1303 // First token is command type 1289 1304 String command = tokenizer.nextToken(); 1290 1305 if(tokenizer.hasMoreTokens()) { 1291 command_element = document.createElement(StaticStrings.LEVELS_ELEMENT); 1292 command_element.setAttribute(StaticStrings.ASSIGNED_ATTRIBUTE, (command.equals(StaticStrings.LEVELS_STR) ? StaticStrings.TRUE_STR : StaticStrings.FALSE_STR)); 1306 command_element = document.createElement(StaticStrings.INDEXOPTIONS_ELEMENT); 1307 command_element.setAttribute(StaticStrings.NAME_ATTRIBUTE,type); 1308 command_element.setAttribute(StaticStrings.ASSIGNED_ATTRIBUTE, (assigned ? StaticStrings.TRUE_STR : StaticStrings.FALSE_STR)); 1293 1309 while(tokenizer.hasMoreTokens()) { 1294 Element level_element = document.createElement(StaticStrings.LEVEL_ELEMENT);1295 level_element.setAttribute(StaticStrings.NAME_ATTRIBUTE, tokenizer.nextToken());1296 command_element.appendChild( level_element);1297 level_element = null;1310 Element option_element = document.createElement(StaticStrings.INDEXOPTION_ELEMENT); 1311 option_element.setAttribute(StaticStrings.NAME_ATTRIBUTE, tokenizer.nextToken()); 1312 command_element.appendChild(option_element); 1313 option_element = null; 1298 1314 } 1299 1315 } … … 1305 1321 } 1306 1322 1307 private Element parse LevelDefault(String command_str) {1323 private Element parseIndexOptionDefault(String command_str, String type, boolean assigned) { 1308 1324 Element command_element = null; 1309 1325 try { 1310 1326 StringTokenizer tokenizer = new StringTokenizer(command_str); 1311 if(tokenizer.countTokens() >= 2) { 1312 command_element = document.createElement(StaticStrings.LEVEL_DEFAULT_ELEMENT); 1313 command_element.setAttribute(StaticStrings.ASSIGNED_ATTRIBUTE, ((tokenizer.nextToken()).equals(StaticStrings.LEVEL_DEFAULT_STR) ? StaticStrings.TRUE_STR : StaticStrings.FALSE_STR)); // is it commented out or not? 1314 command_element.setAttribute(StaticStrings.NAME_ATTRIBUTE, tokenizer.nextToken()); 1327 // First token is command type 1328 String command = tokenizer.nextToken(); 1329 if(tokenizer.hasMoreTokens()) { 1330 command_element = document.createElement(StaticStrings.INDEXOPTION_DEFAULT_ELEMENT); 1331 command_element.setAttribute(StaticStrings.ASSIGNED_ATTRIBUTE, (assigned ? StaticStrings.TRUE_STR : StaticStrings.FALSE_STR)); // is it commented out or not? 1332 command_element.setAttribute(StaticStrings.NAME_ATTRIBUTE, type); 1333 command_element.setAttribute(StaticStrings.VALUE_ATTRIBUTE, tokenizer.nextToken()); 1315 1334 } 1316 1335
Note:
See TracChangeset
for help on using the changeset viewer.