Changeset 17844


Ignore:
Timestamp:
2008-11-13T09:51:28+13:00 (15 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

File:
1 edited

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   
Note: See TracChangeset for help on using the changeset viewer.