You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ri...@apache.org on 2007/01/09 11:36:54 UTC

svn commit: r494363 - /incubator/qpid/branches/perftesting/qpid/java/client/src/main/java/org/apache/qpid/jndi/PropertiesFileInitialContextFactory.java

Author: ritchiem
Date: Tue Jan  9 02:36:53 2007
New Revision: 494363

URL: http://svn.apache.org/viewvc?view=rev&rev=494363
Log:
Merged Changes
Merged ability to use Provider_URL to load properties file. As committed in r488624
QPID-266
changed contains to containsKey


Modified:
    incubator/qpid/branches/perftesting/qpid/java/client/src/main/java/org/apache/qpid/jndi/PropertiesFileInitialContextFactory.java

Modified: incubator/qpid/branches/perftesting/qpid/java/client/src/main/java/org/apache/qpid/jndi/PropertiesFileInitialContextFactory.java
URL: http://svn.apache.org/viewvc/incubator/qpid/branches/perftesting/qpid/java/client/src/main/java/org/apache/qpid/jndi/PropertiesFileInitialContextFactory.java?view=diff&rev=494363&r1=494362&r2=494363
==============================================================================
--- incubator/qpid/branches/perftesting/qpid/java/client/src/main/java/org/apache/qpid/jndi/PropertiesFileInitialContextFactory.java (original)
+++ incubator/qpid/branches/perftesting/qpid/java/client/src/main/java/org/apache/qpid/jndi/PropertiesFileInitialContextFactory.java Tue Jan  9 02:36:53 2007
@@ -40,11 +40,15 @@
 import java.util.Hashtable;
 import java.util.Iterator;
 import java.util.Map;
+import java.util.Properties;
 import java.util.concurrent.ConcurrentHashMap;
+import java.io.BufferedInputStream;
+import java.io.FileInputStream;
+import java.io.IOException;
 
 public class PropertiesFileInitialContextFactory implements InitialContextFactory
 {
-    protected final Logger _logger = Logger.getLogger(getClass());
+    protected final Logger _logger = Logger.getLogger(PropertiesFileInitialContextFactory.class);
 
     private String CONNECTION_FACTORY_PREFIX = "connectionfactory.";
     private String DESTINATION_PREFIX = "destination.";
@@ -54,6 +58,41 @@
     public Context getInitialContext(Hashtable environment) throws NamingException
     {
         Map data = new ConcurrentHashMap();
+
+        try
+        {
+
+            String file = null;
+            if (environment.containsKey(Context.PROVIDER_URL))
+            {
+                file = (String) environment.get(Context.PROVIDER_URL);
+            }
+            else
+            {
+                file = System.getProperty(Context.PROVIDER_URL);
+            }
+
+            if (file != null)
+            {
+                _logger.info("Loading Properties from:" + file);
+                //Load the properties specified
+                Properties p = new Properties();
+
+                p.load(new BufferedInputStream(new FileInputStream(file)));
+
+                environment.putAll(p);
+                _logger.info("Loaded Context Properties:" + environment.toString());
+            }
+            else
+            {
+                _logger.warn("No Provider URL specified.");
+            }
+        }
+        catch (IOException ioe)
+        {
+            _logger.warn("Unable to load property file specified in Provider_URL:" +
+                         environment.get(Context.PROVIDER_URL));
+        }
 
         createConnectionFactories(data, environment);