diff options
Diffstat (limited to 'java/common/src')
-rw-r--r-- | java/common/src/main/java/org/apache/qpid/common/QpidProperties.java | 46 |
1 files changed, 40 insertions, 6 deletions
diff --git a/java/common/src/main/java/org/apache/qpid/common/QpidProperties.java b/java/common/src/main/java/org/apache/qpid/common/QpidProperties.java index 4b281e9f8d..f4f764db1b 100644 --- a/java/common/src/main/java/org/apache/qpid/common/QpidProperties.java +++ b/java/common/src/main/java/org/apache/qpid/common/QpidProperties.java @@ -20,12 +20,18 @@ */ package org.apache.qpid.common; +import org.apache.log4j.Logger; + import java.util.Properties; +import java.util.Map; import java.io.IOException; +import java.io.InputStream; public class QpidProperties { - public static final String VERSION_RESOURCE = "version.properties"; + private static final Logger _logger = Logger.getLogger(QpidProperties.class); + + public static final String VERSION_RESOURCE = "qpidversion.properties"; public static final String PRODUCT_NAME_PROPERTY = "qpid.name"; public static final String RELEASE_VERSION_PROPERTY = "qpid.version"; @@ -44,16 +50,34 @@ public class QpidProperties try { - props.load(QpidProperties.class.getClassLoader().getResourceAsStream(VERSION_RESOURCE)); + InputStream propertyStream = QpidProperties.class.getClassLoader().getResourceAsStream(VERSION_RESOURCE); + if (propertyStream == null) + { + _logger.warn("Unable to find resource " + VERSION_RESOURCE + " from classloader"); + } + else + { + props.load(propertyStream); + + if (_logger.isDebugEnabled()) + { + _logger.debug("Dumping QpidProperties"); + for (Map.Entry<Object,Object> entry : props.entrySet()) + { + _logger.debug("Property: " + entry.getKey() + " Value: "+ entry.getValue()); + } + _logger.debug("End of property dump"); + } - productName = props.getProperty(PRODUCT_NAME_PROPERTY); - releaseVersion = props.getProperty(RELEASE_VERSION_PROPERTY); - buildVersion = props.getProperty(BUILD_VERSION_PROPERTY); + productName = readPropertyValue(props, PRODUCT_NAME_PROPERTY); + releaseVersion = readPropertyValue(props, RELEASE_VERSION_PROPERTY); + buildVersion = readPropertyValue(props, BUILD_VERSION_PROPERTY); + } } catch (IOException e) { // Log a warning about this and leave the values initialized to unknown. - System.err.println("Could not load version.properties resource."); + _logger.error("Could not load version.properties resource: " + e, e); } } @@ -77,6 +101,16 @@ public class QpidProperties return getProductName() + " - " + getReleaseVersion() + " build: " + getBuildVersion(); } + private static String readPropertyValue(Properties props, String propertyName) + { + String retVal = (String) props.get(propertyName); + if (retVal == null) + { + retVal = DEFAULT; + } + return retVal; + } + public static void main(String[] args) { System.out.println(getVersionString()); |