You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by or...@apache.org on 2016/02/15 13:06:42 UTC

svn commit: r1730499 - in /qpid/java/trunk/broker-core/src: main/java/org/apache/qpid/server/BrokerOptions.java test/java/org/apache/qpid/server/BrokerOptionsTest.java

Author: orudyy
Date: Mon Feb 15 12:06:42 2016
New Revision: 1730499

URL: http://svn.apache.org/viewvc?rev=1730499&view=rev
Log:
QPID-7039: Throw an exception if resource overridden with JVM system property 'qpid.initialConfigurationLocation' does not exist

Modified:
    qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/BrokerOptions.java
    qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/BrokerOptionsTest.java

Modified: qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/BrokerOptions.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/BrokerOptions.java?rev=1730499&r1=1730498&r2=1730499&view=diff
==============================================================================
--- qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/BrokerOptions.java (original)
+++ qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/BrokerOptions.java Mon Feb 15 12:06:42 2016
@@ -21,6 +21,7 @@
 package org.apache.qpid.server;
 
 import java.io.File;
+import java.net.URL;
 import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
@@ -28,6 +29,7 @@ import java.util.concurrent.ConcurrentHa
 import java.util.concurrent.ConcurrentMap;
 
 import org.apache.qpid.server.configuration.BrokerProperties;
+import org.apache.qpid.server.configuration.IllegalConfigurationException;
 import org.apache.qpid.server.model.ConfiguredObject;
 import org.apache.qpid.server.model.SystemConfig;
 
@@ -217,7 +219,13 @@ public class BrokerOptions
             String overriddenDefaultConfigurationLocation = System.getProperty("qpid.initialConfigurationLocation");
             if (overriddenDefaultConfigurationLocation != null)
             {
-                return BrokerOptions.class.getClassLoader().getResource(overriddenDefaultConfigurationLocation).toExternalForm();
+                URL resource = BrokerOptions.class.getClassLoader().getResource(overriddenDefaultConfigurationLocation);
+                if (resource == null)
+                {
+                    throw new IllegalArgumentException(String.format("Initial configuration '%s' is not found",
+                                                                          overriddenDefaultConfigurationLocation));
+                }
+                return resource.toExternalForm();
             }
             return DEFAULT_INITIAL_CONFIG_LOCATION;
         }

Modified: qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/BrokerOptionsTest.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/BrokerOptionsTest.java?rev=1730499&r1=1730498&r2=1730499&view=diff
==============================================================================
--- qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/BrokerOptionsTest.java (original)
+++ qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/BrokerOptionsTest.java Mon Feb 15 12:06:42 2016
@@ -88,6 +88,20 @@ public class BrokerOptionsTest extends Q
         assertEquals(BrokerOptions.DEFAULT_INITIAL_CONFIG_LOCATION, _options.getInitialConfigurationLocation());
     }
 
+    public void testInitialConfigurationLocationOverrideWithJVMSystemPropertyToNonExistingResource()
+    {
+        setTestSystemProperty("qpid.initialConfigurationLocation", "non-existing");
+        try
+        {
+            _options.getInitialConfigurationLocation();
+            fail("IllegalArgumentException is expected");
+        }
+        catch(IllegalArgumentException e)
+        {
+            assertEquals("Initial configuration 'non-existing' is not found", e.getMessage());
+        }
+    }
+
     public void testOverriddenInitialConfigurationLocation()
     {
         final String testConfigFile = "etc/mytestconfig.json";



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org