Changeset 8124


Ignore:
Timestamp:
2004-09-16T14:45:12+12:00 (20 years ago)
Author:
mdewsnip
Message:

Added special code for escaping square bracket characters in metadata.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/gli/src/org/greenstone/gatherer/metadata/MetadataXMLFile.java

    r7978 r8124  
    7070    }
    7171
     72    // Square brackets need to be escaped because they are a special character in Greenstone
     73    String metadata_value_string = metadata_value.getFullValue();
     74    metadata_value_string = metadata_value_string.replaceAll("\\[", "[");
     75    metadata_value_string = metadata_value_string.replaceAll("\\]", "]");
     76
    7277    // Create a new Metadata element to record this metadata
    7378    Element new_metadata_value_element = document.createElement(METADATA_ELEMENT);
    7479    new_metadata_value_element.setAttribute("name", metadata_value.getMetadataElement().getFullName());
    7580    new_metadata_value_element.setAttribute("mode", (metadata_value.isAccumulatingMetadata() ? "accumulate" : "override"));
    76     new_metadata_value_element.appendChild(document.createTextNode(metadata_value.getFullValue()));
     81    new_metadata_value_element.appendChild(document.createTextNode(metadata_value_string));
    7782    boolean have_added_metadata = false;
    7883
     
    197202        }
    198203
     204        // Square brackets need to be escaped because they are a special character in Greenstone
    199205        String current_metadata_element_value = XMLTools.getElementTextValue(current_metadata_element);
     206        current_metadata_element_value = current_metadata_element_value.replaceAll("[", "[");
     207        current_metadata_element_value = current_metadata_element_value.replaceAll("]", "]");
     208
    200209        MetadataValueTreeNode metadata_value_tree_node = metadata_element.getMetadataValueTreeNode(current_metadata_element_value);
    201210
Note: See TracChangeset for help on using the changeset viewer.