Changeset 23394 for main/trunk/gli
- Timestamp:
- 2010-12-07T14:27:04+13:00 (13 years ago)
- Location:
- main/trunk/gli/src/org/greenstone/gatherer/metadata
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
main/trunk/gli/src/org/greenstone/gatherer/metadata/MetadataElement.java
r12672 r23394 46 46 /* This restricts the user to only the predefined values */ 47 47 private boolean restricted_values = false; 48 48 /* can we have more than one value for this metadata element per document? */ 49 /* default, true = yes */ 50 private boolean accumulating = true; 49 51 public MetadataElement(String metadata_element_name_full, Element metadata_element_element) 50 52 { … … 61 63 } 62 64 } 65 if (metadata_element_element.getAttribute("accumulating").equals("false")) { 66 accumulating = false; 67 } 63 68 } 64 69 } … … 204 209 } 205 210 211 public boolean isAccumulating() { 212 return accumulating; 213 } 206 214 public boolean isSubelement() 207 215 { -
main/trunk/gli/src/org/greenstone/gatherer/metadata/MetadataValue.java
r11301 r23394 39 39 private MetadataElement metadata_element = null; 40 40 private MetadataValueTreeNode metadata_value_tree_node = null; 41 // this will be set to true if the metadata element definition says accumulating = false. 42 private boolean must_not_accumulate = false; 41 43 private boolean is_accumulating_metadata = false; 42 44 /** Whether this metadata applies to only one file (ie. there are no wildcards in the FileSet value) */ … … 48 50 this.metadata_element = metadata_element; 49 51 this.metadata_value_tree_node = metadata_value_tree_node; 52 if (metadata_element != null) { 53 if (!metadata_element.isAccumulating()) { 54 must_not_accumulate = true; 55 } 56 } 50 57 } 51 58 … … 122 129 public void setIsAccumulatingMetadata(boolean is_accumulating_metadata) 123 130 { 131 if (!must_not_accumulate) { 124 132 this.is_accumulating_metadata = is_accumulating_metadata; 133 } 125 134 } 126 135 -
main/trunk/gli/src/org/greenstone/gatherer/metadata/MetadataXMLFile.java
r13817 r23394 127 127 appropriate_fileset_element.appendChild(new_description_element); 128 128 129 loaded_file_document.getDocumentElement().appendChild(appropriate_fileset_element); 129 if(file_path_regexp.equals(DIRECTORY_FILENAME)) { 130 loaded_file_document.getDocumentElement().insertBefore(appropriate_fileset_element, loaded_file_document.getDocumentElement().getFirstChild()); 131 } else { 132 loaded_file_document.getDocumentElement().appendChild(appropriate_fileset_element); 133 } 130 134 } 131 135 … … 152 156 String current_metadata_element_name_full = current_metadata_element.getAttribute("name"); 153 157 if (current_metadata_element_name_full.equals(metadata_element_name_full)) { 158 // if the metadata must not accumulate, then edit teh current value 159 if (!metadata_value.isAccumulatingMetadata()) { 160 XMLTools.setNodeText(current_metadata_element, metadata_value_string); 161 metadata_already_assigned = true; 162 break; 163 } 154 164 // Check if the metadata element value matches 155 165 String current_metadata_value_string = XMLTools.getElementTextValue(current_metadata_element);
Note:
See TracChangeset
for help on using the changeset viewer.