r4632 - in trunk/src/edu/ucsb/nceas/metacat: admin service

daigle at ecoinformatics.org daigle at ecoinformatics.org
Tue Nov 25 12:40:45 PST 2008


Author: daigle
Date: 2008-11-25 12:40:45 -0800 (Tue, 25 Nov 2008)
New Revision: 4632

Modified:
   trunk/src/edu/ucsb/nceas/metacat/admin/SkinsAdmin.java
   trunk/src/edu/ucsb/nceas/metacat/service/SkinPropertyService.java
Log:
catch and report missing skins configuration files.

Modified: trunk/src/edu/ucsb/nceas/metacat/admin/SkinsAdmin.java
===================================================================
--- trunk/src/edu/ucsb/nceas/metacat/admin/SkinsAdmin.java	2008-11-25 20:40:00 UTC (rev 4631)
+++ trunk/src/edu/ucsb/nceas/metacat/admin/SkinsAdmin.java	2008-11-25 20:40:45 UTC (rev 4632)
@@ -136,10 +136,14 @@
 					// properties with backup properties.  This allows previously 
 					// set properties to be preserved in an application upgrade.
 					SortedProperties backupProperties = backupPropertiesMap.get(skinName);
-					for (String propertyName : backupProperties.getPropertyNames())
-					{
-						localSkinProperties.put(propertyName, 
-							backupProperties.getProperty(propertyName));
+					if (backupProperties == null) {
+						logMetacat.warn("Could not find backup properties for skin: "
+								+ skinName);
+					} else {
+						for (String propertyName : backupProperties.getPropertyNames()) {
+							localSkinProperties.put(propertyName, 
+									backupProperties.getProperty(propertyName));
+						}
 					}
 								
 					localPropertyMap.put(skinName, localSkinProperties);					

Modified: trunk/src/edu/ucsb/nceas/metacat/service/SkinPropertyService.java
===================================================================
--- trunk/src/edu/ucsb/nceas/metacat/service/SkinPropertyService.java	2008-11-25 20:40:00 UTC (rev 4631)
+++ trunk/src/edu/ucsb/nceas/metacat/service/SkinPropertyService.java	2008-11-25 20:40:45 UTC (rev 4632)
@@ -137,15 +137,25 @@
 				String metaDataFilePath = servletContext.getRealPath(SKIN_DIR)
 						+ FileUtil.getFS() + skinName + FileUtil.getFS() + skinName
 						+ ".properties.metadata.xml";
-				PropertiesMetaData skinMetaData = new PropertiesMetaData(metaDataFilePath);
-				skinMetaDataMap.put(skinName, skinMetaData);
+				if (FileUtil.getFileStatus(metaDataFilePath) == FileUtil.DOES_NOT_EXIST) {
+					throw new GeneralPropertyException("Could not find skin property metadata file: " + metaDataFilePath);
+				} else {
+					PropertiesMetaData skinMetaData = 
+						new PropertiesMetaData(metaDataFilePath);
+					skinMetaDataMap.put(skinName, skinMetaData);
+				} 
 
 				String backupPropertyFilePath = 
 					BACKUP_DIR + FileUtil.getFS() + skinName + ".properties.backup";
-				SortedProperties skinBackupProperties = 
-					new SortedProperties(backupPropertyFilePath);
-				skinBackupProperties.load();
-				skinBackupPropertiesMap.put(skinName, skinBackupProperties);
+				if (FileUtil.getFileStatus(backupPropertyFilePath) > FileUtil.DOES_NOT_EXIST) {
+					SortedProperties skinBackupProperties = 
+						new SortedProperties(backupPropertyFilePath);
+					skinBackupProperties.load();
+					skinBackupPropertiesMap.put(skinName, skinBackupProperties);
+				} else {
+					logMetacat.info("Could not find backup properties for skin: " + skinName
+							+ ". Backup file does not exist: " + backupPropertyFilePath);
+				}
 			}
 		} catch (TransformerException te) {
 			throw new GeneralPropertyException(te.getMessage());



More information about the Metacat-cvs mailing list