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 2010/06/02 18:40:58 UTC

svn commit: r950635 - in /qpid/trunk/qpid/java/broker: ./ src/main/java/org/apache/qpid/server/ src/main/java/org/apache/qpid/server/logging/messages/ src/main/java/org/apache/qpid/server/protocol/ src/main/java/org/apache/qpid/server/queue/ src/main/j...

Author: ritchiem
Date: Wed Jun  2 16:40:57 2010
New Revision: 950635

URL: http://svn.apache.org/viewvc?rev=950635&view=rev
Log:
QPID-2625 : Update GenerateLogMessages to probe the property file for 3-Digit LoggingClasses and use that as the basis for generation. Expose LogSubjects from Queue and Session.

Modified:
    qpid/trunk/qpid/java/broker/build.xml
    qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/AMQChannel.java
    qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/messages/LogMessages.properties
    qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/AMQSessionModel.java
    qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/AMQQueue.java
    qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/SimpleAMQQueue.java
    qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/transport/ServerSession.java
    qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/MockAMQQueue.java
    qpid/trunk/qpid/java/broker/src/velocity/java/org/apache/qpid/server/logging/GenerateLogMessages.java
    qpid/trunk/qpid/java/broker/src/velocity/templates/org/apache/qpid/server/logging/messages/LogMessages.vm

Modified: qpid/trunk/qpid/java/broker/build.xml
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/build.xml?rev=950635&r1=950634&r2=950635&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker/build.xml (original)
+++ qpid/trunk/qpid/java/broker/build.xml Wed Jun  2 16:40:57 2010
@@ -79,6 +79,8 @@
       <arg value="${generated.dir}"/>
       <arg value="-t"/>
       <arg value="${project.root}/broker/src/velocity/templates/org/apache/qpid/server/logging/messages"/>
+      <arg value="-r"/>
+      <arg value="org.apache.qpid.server.logging.messages.LogMessages"/>
       <classpath>
         <pathelement path="${project.root}/broker/src/main/java"/>
         <pathelement path="${velocity.compile.dir}" />

Modified: qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/AMQChannel.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/AMQChannel.java?rev=950635&r1=950634&r2=950635&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/AMQChannel.java (original)
+++ qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/AMQChannel.java Wed Jun  2 16:40:57 2010
@@ -1079,6 +1079,11 @@ public class AMQChannel implements Sessi
         return String.valueOf(_session.getContextKey());
     }
 
+    public LogSubject getLogSubject()
+    {
+        return _logSubject;
+    }
+
     private class MessageDeliveryAction implements ServerTransaction.Action
     {
         private IncomingMessage _incommingMessage;

Modified: qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/messages/LogMessages.properties
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/messages/LogMessages.properties?rev=950635&r1=950634&r2=950635&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/messages/LogMessages.properties (original)
+++ qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/messages/LogMessages.properties Wed Jun  2 16:40:57 2010
@@ -207,7 +207,7 @@
 #
 #
 # Default File used for all non-defined locales.
-#Broker
+BRK=Broker
 # 0 - Version
 # 1 = Build
 BRK_STARTUP = BRK-1001 : Startup : Version: {0} Build: {1}
@@ -224,7 +224,8 @@ BRK_CONFIG = BRK-1006 : Using configurat
 # 0 - path
 BRK_LOG_CONFIG = BRK-1007 : Using logging configuration : {0}
 
-#ManagementConsole
+
+MNG=ManagementConsole
 MNG_STARTUP = MNG-1001 : Startup
 # 0 - Service
 # 1 - Port
@@ -240,12 +241,13 @@ MNG_OPEN = MNG-1007 : Open : User {0}
 MNG_CLOSE = MNG-1008 : Close
 
 
-#VirtualHost
+VHT=VirtualHost
+
 # 0 - name
 VHT_CREATED = VHT-1001 : Created : {0}
 VHT_CLOSED = VHT-1002 : Closed
 
-#MessageStore
+MST=MessageStore
 # 0 - name
 MST_CREATED = MST-1001 : Created : {0}
 # 0 - path
@@ -255,36 +257,36 @@ MST_RECOVERY_START = MST-1004 : Recovery
 MST_RECOVERED = MST-1005 : Recovered {0,number} messages
 MST_RECOVERY_COMPLETE = MST-1006 : Recovery Complete
 
-#ConfigStore
+CFG=ConfigStore
 # 0 - name
-CFG-1001 = CFG-1001 : Created : {0}
+CFG_1001 = CFG-1001 : Created : {0}
 # 0 - path
-CFG-1002 = CFG-1002 : Store location : {0}
-CFG-1003 = CFG-1003 : Closed
-CFG-1004 = CFG-1004 : Recovery Start
-CFG-1005 = CFG-1005 : Recovery Complete
+CFG_1002 = CFG-1002 : Store location : {0}
+CFG_1003 = CFG-1003 : Closed
+CFG_1004 = CFG-1004 : Recovery Start
+CFG_1005 = CFG-1005 : Recovery Complete
 
-#TransactionLog
+TXN=TransactionLog
 # 0 - name
-TXN-1001 = TXN-1001 : Created : {0}
+TXN_1001 = TXN-1001 : Created : {0}
 # 0 - path
-TXN-1002 = TXN-1002 : Store location : {0}
-TXN-1003 = TXN-1003 : Closed
+TXN_1002 = TXN-1002 : Store location : {0}
+TXN_1003 = TXN-1003 : Closed
 # 0 - queue name
-TXN-1004 = TXN-1004 : Recovery Start[ : {0}]
+TXN_1004 = TXN-1004 : Recovery Start[ : {0}]
 # 0 - count
 # 1 - queue count
-TXN-1005 = TXN-1005 : Recovered {0,number} messages for queue {1}
+TXN_1005 = TXN-1005 : Recovered {0,number} messages for queue {1}
 # 0 - queue name
-TXN-1006 = TXN-1006 : Recovery Complete[ : {0}]
+TXN_1006 = TXN-1006 : Recovery Complete[ : {0}]
 
-#Connection
+CON=Connection
 # 0 - Client id
 # 1 - Protocol Version
 CON_OPEN = CON-1001 : Open[ : Client ID : {0}][ : Protocol Version : {1}]
 CON_CLOSE = CON-1002 : Close
 
-#Channel
+CHN=Channel
 CHN_CREATE = CHN-1001 : Create
 # 0 - flow
 CHN_FLOW = CHN-1002 : Flow {0}
@@ -296,7 +298,7 @@ CHN_PREFETCH_SIZE = CHN-1004 : Prefetch 
 CHN_FLOW_ENFORCED = CHN-1005 : Flow Control Enforced (Queue {0})
 CHN_FLOW_REMOVED = CHN-1006 : Flow Control Removed
 
-#Queue
+QUE=Queue
 # 0 - owner
 # 1 - priority
 QUE_CREATED = QUE-1001 : Create :[ Owner: {0}][ AutoDelete][ Durable][ Transient][ Priority: {1,number,#}]
@@ -305,17 +307,17 @@ QUE_OVERFULL = QUE-1003 : Overfull : Siz
 QUE_UNDERFULL = QUE-1004 : Underfull : Size : {0,number} bytes, Resume Capacity : {1,number}
 
 
-#Exchange
+EXH=Exchange
 # 0 - type
 # 1 - name
 EXH_CREATED = EXH-1001 : Create :[ Durable] Type: {0} Name: {1}
 EXH_DELETED = EXH-1002 : Deleted
 
-#Binding
+BND=Binding
 BND_CREATED = BND-1001 : Create[ : Arguments : {0}]
 BND_DELETED = BND-1002 : Deleted
 
-#Subscription
+SUB=Subscription
 SUB_CREATE = SUB-1001 : Create[ : Durable][ : Arguments : {0}]
 SUB_CLOSE = SUB-1002 : Close
 # 0 - The current subscription state

Modified: qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/AMQSessionModel.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/AMQSessionModel.java?rev=950635&r1=950634&r2=950635&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/AMQSessionModel.java (original)
+++ qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/AMQSessionModel.java Wed Jun  2 16:40:57 2010
@@ -20,6 +20,8 @@
  */
 package org.apache.qpid.server.protocol;
 
+import org.apache.qpid.server.logging.LogSubject;
+
 public interface AMQSessionModel
 {
     Object getID();
@@ -27,4 +29,6 @@ public interface AMQSessionModel
     AMQConnectionModel getConnectionModel();
 
     String getClientID();
+
+    LogSubject getLogSubject();
 }

Modified: qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/AMQQueue.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/AMQQueue.java?rev=950635&r1=950634&r2=950635&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/AMQQueue.java (original)
+++ qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/AMQQueue.java Wed Jun  2 16:40:57 2010
@@ -24,6 +24,7 @@ import org.apache.qpid.AMQException;
 import org.apache.qpid.AMQSecurityException;
 import org.apache.qpid.framing.AMQShortString;
 import org.apache.qpid.server.AMQChannel;
+import org.apache.qpid.server.logging.LogSubject;
 import org.apache.qpid.server.protocol.AMQConnectionModel;
 import org.apache.qpid.server.protocol.AMQSessionModel;
 import org.apache.qpid.server.binding.Binding;
@@ -58,6 +59,8 @@ public interface AMQQueue extends Managa
 
     int getBindingCount();
 
+    LogSubject getLogSubject();
+
     public interface Context
     {
         QueueEntry getLastSeenEntry();

Modified: qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/SimpleAMQQueue.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/SimpleAMQQueue.java?rev=950635&r1=950634&r2=950635&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/SimpleAMQQueue.java (original)
+++ qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/SimpleAMQQueue.java Wed Jun  2 16:40:57 2010
@@ -526,6 +526,11 @@ public class SimpleAMQQueue implements A
         return getBindings().size();
     }
 
+    public LogSubject getLogSubject()
+    {
+        return _logSubject;
+    }
+
     // ------ Enqueue / Dequeue
     public void enqueue(ServerMessage message) throws AMQException
     {

Modified: qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/transport/ServerSession.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/transport/ServerSession.java?rev=950635&r1=950634&r2=950635&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/transport/ServerSession.java (original)
+++ qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/transport/ServerSession.java Wed Jun  2 16:40:57 2010
@@ -28,6 +28,8 @@ import org.apache.qpid.server.configurat
 import org.apache.qpid.server.configuration.ConnectionConfig;
 import org.apache.qpid.server.configuration.SessionConfig;
 import org.apache.qpid.server.configuration.SessionConfigType;
+import org.apache.qpid.server.logging.LogSubject;
+import org.apache.qpid.server.logging.subjects.ConnectionLogSubject;
 import org.apache.qpid.server.message.ServerMessage;
 import org.apache.qpid.server.queue.AMQQueue;
 import org.apache.qpid.server.queue.BaseQueue;
@@ -571,4 +573,9 @@ public class ServerSession extends Sessi
         return getPrincipal().getName();
     }
 
+    public LogSubject getLogSubject()
+    {
+        return null;
+    }
+
 }

Modified: qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/MockAMQQueue.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/MockAMQQueue.java?rev=950635&r1=950634&r2=950635&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/MockAMQQueue.java (original)
+++ qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/MockAMQQueue.java Wed Jun  2 16:40:57 2010
@@ -24,6 +24,7 @@ import org.apache.qpid.framing.AMQShortS
 import org.apache.qpid.framing.FieldTable;
 import org.apache.qpid.server.configuration.*;
 import org.apache.qpid.server.exchange.Exchange;
+import org.apache.qpid.server.logging.LogSubject;
 import org.apache.qpid.server.subscription.Subscription;
 import org.apache.qpid.server.virtualhost.VirtualHost;
 import org.apache.qpid.server.management.ManagedObject;
@@ -89,6 +90,11 @@ public class MockAMQQueue implements AMQ
         return 0;
     }
 
+    public LogSubject getLogSubject()
+    {
+        return null; 
+    }
+
     public ConfigStore getConfigStore()
     {
         return getVirtualHost().getConfigStore();

Modified: qpid/trunk/qpid/java/broker/src/velocity/java/org/apache/qpid/server/logging/GenerateLogMessages.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/velocity/java/org/apache/qpid/server/logging/GenerateLogMessages.java?rev=950635&r1=950634&r2=950635&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker/src/velocity/java/org/apache/qpid/server/logging/GenerateLogMessages.java (original)
+++ qpid/trunk/qpid/java/broker/src/velocity/java/org/apache/qpid/server/logging/GenerateLogMessages.java Wed Jun  2 16:40:57 2010
@@ -31,6 +31,7 @@ import java.util.HashMap;
 import java.util.LinkedList;
 import java.util.List;
 import java.util.Locale;
+import java.util.Map;
 import java.util.Properties;
 import java.util.ResourceBundle;
 
@@ -38,6 +39,7 @@ public class GenerateLogMessages
 {
     private static String _tmplDir;
     private String _outputDir;
+    private String _resource;
 
     public static void main(String[] args)
     {
@@ -99,23 +101,41 @@ public class GenerateLogMessages
         System.out.println("Usage: GenerateLogMessages: -t tmplDir");
         System.out.println("       where -t tmplDir: Find templates in tmplDir.");
         System.out.println("             -o outDir:  Use outDir as the output dir.");
+        System.out.println("             -r resource:  The resource to build.");
     }
 
     public void run() throws InvalidTypeException, Exception
     {
-        /* lets make a Context and put data into it */
-        createMessageClass("Broker", "BRK");
-        createMessageClass("ManagementConsole", "MNG");
-        createMessageClass("VirtualHost", "VHT");
-        createMessageClass("MessageStore", "MST");
-        createMessageClass("ConfigStore", "CFG");
-        createMessageClass("TransactionLog", "TXN");
-        createMessageClass("Connection", "CON");
-        createMessageClass("Channel", "CHN");
-        createMessageClass("Queue", "QUE");
-        createMessageClass("Exchange", "EXH");
-        createMessageClass("Binding", "BND");
-        createMessageClass("Subscription", "SUB");
+
+        Map<String,String> messageClasses = extractMessageClasses();
+
+        for (String key : messageClasses.keySet())
+        {
+            createMessageClass(messageClasses.get(key),key);
+        }
+    }
+
+    private Map<String, String> extractMessageClasses()
+    {
+
+        ResourceBundle _messages = ResourceBundle.getBundle(_resource, Locale.US);
+
+        Enumeration<String> messageKeys = _messages.getKeys();
+
+        Map<String,String> types = new HashMap<String, String>();
+
+        //Identify 3-Digit keys
+        while(messageKeys.hasMoreElements())
+        {
+            String key = messageKeys.nextElement();
+
+            if (key.length() == 3)
+            {
+                types.put(key,_messages.getString(key));
+            }
+        }
+
+        return types;
     }
 
     /**
@@ -149,6 +169,12 @@ public class GenerateLogMessages
                             _tmplDir = args[i];
                         }
                         break;
+                    case 'r':
+                    case 'R':
+                        if (++i < args.length)
+                        {
+                            _resource = args[i];
+                        }
                 }
             }
         }
@@ -175,6 +201,11 @@ public class GenerateLogMessages
         // Get the Data for this class and typeIdentifier
         HashMap<String, Object> typeData = prepareType(className, typeIdentifier);
 
+
+        context.put("package", _resource.substring(0, _resource.lastIndexOf(".")));
+        //Store the resource Bundle name for the macro
+        context.put("resource",_resource);
+
         // Store this data in the context for the macro to access
         context.put("type", typeData);
 
@@ -236,7 +267,7 @@ public class GenerateLogMessages
     private HashMap<String, Object> prepareType(String messsageName, String messageKey) throws InvalidTypeException
     {
         // Load the LogMessages Resource Bundle
-        ResourceBundle _messages = ResourceBundle.getBundle("org.apache.qpid.server.logging.messages.LogMessages", Locale.US);
+        ResourceBundle _messages = ResourceBundle.getBundle(_resource, Locale.US);
 
         Enumeration<String> messageKeys = _messages.getKeys();
 
@@ -257,8 +288,8 @@ public class GenerateLogMessages
             //Add MessageName to amp
             String message = messageKeys.nextElement();
 
-            // Process the log message if it matches the specified key e.g.'BRK'
-            if (message.startsWith(messageKey))
+            // Process the log message if it matches the specified key e.g.'BRK_'
+            if (message.startsWith(messageKey+"_"))
             {
                 // Method names can't have a '-' in them so lets make it '_'
                 // e.g. BRK-STARTUP -> BRK_STARTUP

Modified: qpid/trunk/qpid/java/broker/src/velocity/templates/org/apache/qpid/server/logging/messages/LogMessages.vm
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/velocity/templates/org/apache/qpid/server/logging/messages/LogMessages.vm?rev=950635&r1=950634&r2=950635&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker/src/velocity/templates/org/apache/qpid/server/logging/messages/LogMessages.vm (original)
+++ qpid/trunk/qpid/java/broker/src/velocity/templates/org/apache/qpid/server/logging/messages/LogMessages.vm Wed Jun  2 16:40:57 2010
@@ -18,7 +18,7 @@
  *
  *
  */
-package org.apache.qpid.server.logging.messages;
+package ${package};
 
 import org.apache.qpid.server.logging.LogMessage;
 import org.apache.qpid.server.registry.ApplicationRegistry;
@@ -59,7 +59,7 @@ public class ${type.name}Messages
             _currentLocale = Locale.getDefault();
         }
 
-        _messages = ResourceBundle.getBundle("org.apache.qpid.server.logging.messages.LogMessages", _currentLocale);
+        _messages = ResourceBundle.getBundle("${resource}", _currentLocale);
     }
 
 



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:commits-subscribe@qpid.apache.org