Changeset 17844

Show
Ignore:
Timestamp:
13.11.2008 09:51:28 (11 years ago)
Author:
kjdon
Message:

modified pluginToString to be like classifyToString where we look for potential metadata names and write them out as the canonical name not the language specific display name

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • gli/trunk/src/org/greenstone/gatherer/cdm/CollectionConfiguration.java

    r17752 r17844  
    440440        int option_elements_length = option_elements.getLength (); 
    441441        for(int j = 0; j < option_elements_length; j++) { 
    442             Element option_element = (Element) option_elements.item (j); 
     442      Element option_element = (Element) option_elements.item (j); 
    443443            if(option_element.getAttribute (StaticStrings.ASSIGNED_ATTRIBUTE).equals (StaticStrings.TRUE_STR)) { 
    444                 text.append (StaticStrings.SPACE_CHARACTER); 
    445                 text.append (StaticStrings.MINUS_CHARACTER); 
    446                 text.append (option_element.getAttribute (StaticStrings.NAME_ATTRIBUTE)); 
    447                 String value_str = XMLTools.getValue (option_element); 
    448                  
     444          text.append (StaticStrings.SPACE_CHARACTER); 
     445          text.append (StaticStrings.MINUS_CHARACTER); 
     446          text.append (option_element.getAttribute (StaticStrings.NAME_ATTRIBUTE)); 
     447          String value_str = XMLTools.getValue (option_element); 
     448               
    449449                // Convert metadata element names to internal names, and remove extracted metadata namespaces 
    450450                if (value_str.length () > 0) { 
     
    15311531     
    15321532    static private String pluginToString (Element command_element, boolean show_extracted_namespace) { 
    1533         StringBuffer text = new StringBuffer (); 
    1534         if(!command_element.getAttribute (StaticStrings.SEPARATOR_ATTRIBUTE).equals (StaticStrings.TRUE_STR)) { 
    1535             text.append (StaticStrings.PLUGIN_STR); 
    1536             text.append (StaticStrings.TAB_CHARACTER); 
    1537             text.append (StaticStrings.TAB_CHARACTER); 
    1538             text.append (command_element.getAttribute (StaticStrings.TYPE_ATTRIBUTE)); 
    1539             // Retrieve, and output, the arguments 
    1540             NodeList option_elements = command_element.getElementsByTagName (StaticStrings.OPTION_ELEMENT); 
    1541             int option_elements_length = option_elements.getLength (); 
    1542             if(option_elements_length > 0) { 
    1543                 for(int j = 0; j < option_elements_length; j++) { 
    1544                     Element option_element = (Element) option_elements.item (j); 
    1545                     if(option_element.getAttribute (StaticStrings.ASSIGNED_ATTRIBUTE).equals (StaticStrings.TRUE_STR)) { 
    1546                         text.append (StaticStrings.SPACE_CHARACTER); 
    1547                         text.append (StaticStrings.MINUS_CHARACTER); 
    1548                         text.append (option_element.getAttribute (StaticStrings.NAME_ATTRIBUTE)); 
    1549                         String value_str = XMLTools.getValue (option_element); 
    1550                         if(!show_extracted_namespace && value_str.startsWith (StaticStrings.EXTRACTED_NAMESPACE)) { 
    1551                             value_str = value_str.substring (StaticStrings.EXTRACTED_NAMESPACE.length ()); 
    1552                         } 
    1553                         if(value_str.length () > 0) { 
    1554                             text.append (StaticStrings.SPACE_CHARACTER); 
    1555                             if(value_str.indexOf (StaticStrings.SPACE_CHARACTER) == -1) { 
    1556                                 text.append (value_str); 
    1557                             } 
    1558                             else { 
    1559                                 text.append (StaticStrings.SPEECH_CHARACTER); 
    1560                                 text.append (value_str); 
    1561                                 text.append (StaticStrings.SPEECH_CHARACTER); 
    1562                             } 
    1563                         } 
    1564                         value_str = null; 
    1565                     } 
    1566                     option_element = null; 
    1567                 } 
    1568             } 
    1569             option_elements = null; 
    1570         } 
    1571         return text.toString (); 
     1533        if(command_element.getAttribute (StaticStrings.SEPARATOR_ATTRIBUTE).equals (StaticStrings.TRUE_STR)) {  
     1534      return ""; 
     1535    } 
     1536        StringBuffer text = new StringBuffer (StaticStrings.PLUGIN_STR); 
     1537    text.append (StaticStrings.TAB_CHARACTER); 
     1538    text.append (command_element.getAttribute (StaticStrings.TYPE_ATTRIBUTE)); 
     1539    // Retrieve, and output, the arguments 
     1540    NodeList option_elements = command_element.getElementsByTagName (StaticStrings.OPTION_ELEMENT); 
     1541    int option_elements_length = option_elements.getLength (); 
     1542    if(option_elements_length > 0) { 
     1543      for(int j = 0; j < option_elements_length; j++) { 
     1544        Element option_element = (Element) option_elements.item (j); 
     1545        if(option_element.getAttribute (StaticStrings.ASSIGNED_ATTRIBUTE).equals (StaticStrings.TRUE_STR)) { 
     1546          text.append (StaticStrings.SPACE_CHARACTER); 
     1547          text.append (StaticStrings.MINUS_CHARACTER); 
     1548          text.append (option_element.getAttribute (StaticStrings.NAME_ATTRIBUTE)); 
     1549          String value_str = XMLTools.getValue (option_element); 
     1550 
     1551           
     1552          // Convert metadata element names to internal names, and remove extracted metadata namespaces 
     1553          if (value_str.length () > 0) { 
     1554        StringTokenizer string_tokenizer = new StringTokenizer (value_str, ","); 
     1555        StringBuffer value_buffer = new StringBuffer (); 
     1556        while (string_tokenizer.hasMoreElements ()) { 
     1557          String raw_token = (String) string_tokenizer.nextElement (); 
     1558          String token = raw_token.trim (); 
     1559          MetadataElement metadata_element = MetadataTools.getMetadataElementWithDisplayName (token); 
     1560          if (metadata_element != null) { 
     1561            token = metadata_element.getFullName (); 
     1562          } 
     1563                         
     1564          if (token.startsWith (StaticStrings.EXTRACTED_NAMESPACE)) { 
     1565            token = token.substring (StaticStrings.EXTRACTED_NAMESPACE.length ()); 
     1566          } 
     1567          value_buffer.append (token); 
     1568          if (string_tokenizer.hasMoreElements ()) { 
     1569            value_buffer.append (","); 
     1570          } 
     1571        } 
     1572        value_str = value_buffer.toString (); 
     1573          } 
     1574 
     1575          // if(!show_extracted_namespace && value_str.startsWith (StaticStrings.EXTRACTED_NAMESPACE)) { 
     1576          //            value_str = value_str.substring (StaticStrings.EXTRACTED_NAMESPACE.length ()); 
     1577          //        } 
     1578          if(value_str.length () > 0) { 
     1579        text.append (StaticStrings.SPACE_CHARACTER); 
     1580        if(value_str.indexOf (StaticStrings.SPACE_CHARACTER) == -1) { 
     1581          text.append (value_str); 
     1582        } 
     1583        else { 
     1584          text.append (StaticStrings.SPEECH_CHARACTER); 
     1585          text.append (value_str); 
     1586          text.append (StaticStrings.SPEECH_CHARACTER); 
     1587        } 
     1588          } 
     1589          value_str = null; 
     1590        } 
     1591        option_element = null; 
     1592      } 
     1593    } 
     1594    option_elements = null; 
     1595     
     1596    return text.toString (); 
    15721597    } 
    15731598