Author: kwall
Date: Tue May 10 22:03:37 2016
New Revision: 1743266

URL: http://svn.apache.org/viewvc?rev=1743266&view=rev
Log:
QPID-7196: [Java Broker] Derby - ensure system propery controlling the 
redirection of derby logging is set early as possible by classloader

* system property now set as model is discovered rather than as Derby VHN or VH 
is activated

Modified:
    
qpid/java/trunk/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/store/derby/DerbyUtils.java
    
qpid/java/trunk/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/virtualhost/derby/DerbyVirtualHostImpl.java
    
qpid/java/trunk/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/virtualhostnode/derby/DerbyVirtualHostNodeImpl.java

Modified: 
qpid/java/trunk/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/store/derby/DerbyUtils.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/store/derby/DerbyUtils.java?rev=1743266&r1=1743265&r2=1743266&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/store/derby/DerbyUtils.java
 (original)
+++ 
qpid/java/trunk/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/store/derby/DerbyUtils.java
 Tue May 10 22:03:37 2016
@@ -50,14 +50,19 @@ public class DerbyUtils
     public static final DerbyLogWriter DERBY_LOG_WRITER = new DerbyLogWriter();
     public static final String DERBY_STREAM_ERROR_METHOD = 
"derby.stream.error.method";
 
+    public static void configureDerbyLogging()
+    {
+        if (!System.getProperties().containsKey(DERBY_STREAM_ERROR_METHOD))
+        {
+            // direct derby logging to a Qpid specific handler
+            System.setProperty(DERBY_STREAM_ERROR_METHOD, 
"org.apache.qpid.server.store.derby.DerbyUtils.getDerbyLogWriter");
+        }
+    }
+
     public static void loadDerbyDriver()
     {
         try
         {
-            // set the error log output
-            System.setProperty(DERBY_STREAM_ERROR_METHOD,
-                               
"org.apache.qpid.server.store.derby.DerbyUtils.getDerbyLogWriter");
-
             Class<Driver> driverClass = (Class<Driver>) 
Class.forName(SQL_DRIVER_NAME);
         }
         catch (ClassNotFoundException e)
@@ -66,6 +71,7 @@ public class DerbyUtils
         }
     }
 
+    @SuppressWarnings("unused")
     public static Writer getDerbyLogWriter()
     {
         return DERBY_LOG_WRITER;

Modified: 
qpid/java/trunk/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/virtualhost/derby/DerbyVirtualHostImpl.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/virtualhost/derby/DerbyVirtualHostImpl.java?rev=1743266&r1=1743265&r2=1743266&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/virtualhost/derby/DerbyVirtualHostImpl.java
 (original)
+++ 
qpid/java/trunk/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/virtualhost/derby/DerbyVirtualHostImpl.java
 Tue May 10 22:03:37 2016
@@ -27,6 +27,7 @@ import org.apache.qpid.server.model.Mana
 import org.apache.qpid.server.model.VirtualHostNode;
 import org.apache.qpid.server.store.MessageStore;
 import org.apache.qpid.server.store.derby.DerbyMessageStore;
+import org.apache.qpid.server.store.derby.DerbyUtils;
 import org.apache.qpid.server.util.FileHelper;
 import org.apache.qpid.server.virtualhost.AbstractVirtualHost;
 
@@ -37,6 +38,11 @@ public class DerbyVirtualHostImpl extend
 {
     public static final String VIRTUAL_HOST_TYPE = "DERBY";
 
+    static
+    {
+        DerbyUtils.configureDerbyLogging();
+    }
+
     @ManagedAttributeField
     private String _storePath;
 

Modified: 
qpid/java/trunk/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/virtualhostnode/derby/DerbyVirtualHostNodeImpl.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/virtualhostnode/derby/DerbyVirtualHostNodeImpl.java?rev=1743266&r1=1743265&r2=1743266&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/virtualhostnode/derby/DerbyVirtualHostNodeImpl.java
 (original)
+++ 
qpid/java/trunk/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/virtualhostnode/derby/DerbyVirtualHostNodeImpl.java
 Tue May 10 22:03:37 2016
@@ -34,6 +34,7 @@ import org.apache.qpid.server.model.Mana
 import org.apache.qpid.server.model.VirtualHost;
 import org.apache.qpid.server.store.DurableConfigurationStore;
 import org.apache.qpid.server.store.derby.DerbyConfigurationStore;
+import org.apache.qpid.server.store.derby.DerbyUtils;
 import org.apache.qpid.server.util.FileHelper;
 import org.apache.qpid.server.virtualhostnode.AbstractStandardVirtualHostNode;
 
@@ -44,6 +45,11 @@ public class DerbyVirtualHostNodeImpl ex
 {
     public static final String VIRTUAL_HOST_NODE_TYPE = "DERBY";
 
+    static
+    {
+        DerbyUtils.configureDerbyLogging();
+    }
+
     @ManagedAttributeField
     private String _storePath;
 



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to