Changeset 7171
- Timestamp:
- 2004-03-31T14:40:22+12:00 (20 years ago)
- Location:
- trunk/gli/src/org/greenstone/gatherer/msm
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/gli/src/org/greenstone/gatherer/msm/LegacyCollectionImporter.java
r7168 r7171 115 115 116 116 117 private void copyMetadataXMLFiles(File source_dir, File target_dir)118 { 119 // Find the metadata .xmlfile in this dir120 File meta data_file = new File(source_dir, StaticStrings.METADATA_XML);121 if (meta data_file.exists()) {122 File backup_metadata_file = new File(target_dir, StaticStrings.METADATA_XML);117 private void copyMetadataXMLFiles(File source_dir, File dest_dir) 118 { 119 // Find the metadata file in this dir 120 File meta_file = new File(source_dir, "metadata.xml"); 121 if (meta_file.exists()) { 122 File new_meta_file = new File(dest_dir, "metadata.xml"); 123 123 try { 124 target_dir.mkdirs();125 Gatherer.f_man.getQueue().copyFile(meta data_file, backup_metadata_file, null);126 if (! backup_metadata_file.exists()) {124 dest_dir.mkdirs(); 125 Gatherer.f_man.getQueue().copyFile(meta_file, new_meta_file, null); 126 if (!new_meta_file.exists()) { 127 127 throw new Exception(""); 128 128 } 129 129 } 130 130 catch (Exception e) { 131 Gatherer.println("Exception: couldn't copy file " + metadata_file.getPath() + e.getMessage());131 Gatherer.println("Exception: couldn't move the file " + meta_file.getPath() + e.getMessage()); 132 132 } 133 133 } … … 138 138 File child = children[i]; 139 139 if (child.isDirectory()) { 140 copyMetadataXMLFiles(child, new File( target_dir, child.getName()));140 copyMetadataXMLFiles(child, new File(dest_dir, child.getName())); 141 141 } 142 142 } … … 176 176 } 177 177 178 // // First, copy the original file to make a backup179 // File backup_file = new File(file.getParentFile(), StaticStrings.METADATA_BAK);180 // try {181 // Gatherer.f_man.getQueue().copyFile(file, backup_file, null);182 // if (!backup_file.exists()) {183 // throw new Error();184 // }185 // }186 // catch (Exception ex) {187 // System.err.println("Exception occurred while importing legacy collection.");188 // System.err.println("Error: Could not backup metadata.xml file to " + backup_file);189 // ex.printStackTrace();190 // System.err.println("Aborting legacy collection import.");191 // cancelled = true;192 // return;193 // }194 195 178 // Parse the metadata.xml file 196 179 // System.err.println("Importing metadata from " + file); … … 202 185 for (int i = 0; i < metadata_elements_list.getLength(); i++) { 203 186 metadata_elements[i] = metadata_elements_list.item(i); 187 // System.err.println("Metadata element: " + MSMUtils.getValue(metadata_elements[i])); 188 // System.err.println("Metadata element parent: " + metadata_elements[i].getParentNode().getNodeName()); 204 189 } 205 190 … … 261 246 } 262 247 } 248 249 // ---------------------------------------------------------------------------------- 250 // HACK CODE ADDED IN AT VERY LAST MINUTE FOR REWRITING METADATA.XML FILES 251 252 // Get a list of all the <FileSet> elements in the file, and put them in an array 253 NodeList fileset_elements_list = document.getDocumentElement().getElementsByTagName(MetadataXMLFile.FILESET_ELEMENT); 254 Node[] fileset_elements = new Node[fileset_elements_list.getLength()]; 255 for (int i = 0; i < fileset_elements_list.getLength(); i++) { 256 fileset_elements[i] = fileset_elements_list.item(i); 257 } 258 259 // For each fileset element... 260 for (int i = 0; i < fileset_elements.length; i++) { 261 Node fileset_node = fileset_elements[i]; 262 NodeList fileset_children = fileset_node.getChildNodes(); 263 for (int j = 0; j < fileset_children.getLength(); j++) { 264 Node fileset_child = fileset_children.item(j); 265 if (fileset_child.getNodeName().equals(MetadataXMLFile.FILENAME_ELEMENT)) { 266 String child_filename = MSMUtils.getValue(fileset_child); 267 File child_file = new File(file.getParentFile(), child_filename); 268 if (child_file.isDirectory()) { 269 MetadataXMLFile child_metadata_xml_file = new MetadataXMLFile(); 270 Document child_metadata_xml_file_document = child_metadata_xml_file.getDocument(); 271 272 fileset_node = fileset_node.getParentNode().removeChild(fileset_node); 273 274 // Change the filename value to .* 275 MSMUtils.setValue((Element) fileset_child, ".*"); 276 277 Node child_fileset_node = child_metadata_xml_file_document.importNode(fileset_node, true); 278 child_metadata_xml_file_document.getDocumentElement().appendChild(child_fileset_node); 279 Utility.export(child_metadata_xml_file_document, new File(child_file, StaticStrings.METADATA_XML)); 280 } 281 break; 282 } 283 } 284 } 285 286 // END HACK CODE 287 // ---------------------------------------------------------------------------------- 263 288 264 289 // Write the modified metadata.xml file back out -
trunk/gli/src/org/greenstone/gatherer/msm/MetadataXMLFile.java
r6889 r7171 53 53 static final private String DIRECTORY_FILENAME = ".*"; 54 54 static final private String DESCRIPTION_ELEMENT = "Description"; 55 static final p rivateString FILENAME_ELEMENT = "FileName";56 static final p rivateString FILESET_ELEMENT = "FileSet";55 static final public String FILENAME_ELEMENT = "FileName"; 56 static final public String FILESET_ELEMENT = "FileSet"; 57 57 static final private String HVALUE_ATTRIBUTE = "hvalue"; 58 58 static final private String MODE_ATTRIBUTE = "mode";
Note:
See TracChangeset
for help on using the changeset viewer.