Hi everyone,

I would like to merge this small change into 0.5 (most of it affects the 
console rather than the broker), as it would be useful to have it available on 
all released versions of the logging management MBean, rather than needing to 
determine in future whether it is there or not.

I will merge it over later in the week if there aren’t any objections.

Thanks, 
Robbie

-----Original Message-----
From: rob...@apache.org [mailto:rob...@apache.org] 
Sent: 06 April 2009 15:46
To: comm...@qpid.apache.org
Subject: svn commit: r762365 - in /qpid/trunk/qpid/java: 
broker/src/main/java/org/apache/qpid/server/logging/management/ 
management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/

Author: robbie
Date: Mon Apr  6 14:45:33 2009
New Revision: 762365

URL: http://svn.apache.org/viewvc?rev=762365&view=rev
Log:
QPID-1790: add new attribute to logging management mbean to indicate available 
output levels. Update jmx management console to understand String[] attribute 
value and display contents properly

Modified:
    
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/management/LoggingManagement.java
    
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/management/LoggingManagementMBean.java
    
qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/AttributesTabControl.java

Modified: 
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/management/LoggingManagement.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/management/LoggingManagement.java?rev=762365&r1=762364&r2=762365&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/management/LoggingManagement.java
 (original)
+++ 
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/management/LoggingManagement.java
 Mon Apr  6 14:45:33 2009
@@ -47,6 +47,13 @@
                     description = "The log4j xml configuration file LogWatch 
interval (in seconds). 0 indicates not being checked.")
     Integer getLog4jLogWatchInterval();
     
+    /**
+     * Attribute to represent the available log4j logger output levels.
+     * @return The logging level names.
+     */
+    @MBeanAttribute(name="AvailableLoggerLevels", description = "The values to 
which log output level can be set.")
+    String[] getAvailableLoggerLevels();
+    
     
     //****** log4j runtime operations ****** //
 

Modified: 
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/management/LoggingManagementMBean.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/management/LoggingManagementMBean.java?rev=762365&r1=762364&r2=762365&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/management/LoggingManagementMBean.java
 (original)
+++ 
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/management/LoggingManagementMBean.java
 Mon Apr  6 14:45:33 2009
@@ -69,7 +69,10 @@
     private static final Logger _logger = 
Logger.getLogger(LoggingManagementMBean.class);
     private String _log4jConfigFileName;
     private int _log4jLogWatchInterval;
-    
+    private static final String[] LEVELS = new String[]{Level.ALL.toString(), 
Level.TRACE.toString(), 
+                                                        
Level.DEBUG.toString(), Level.INFO.toString(), 
+                                                        Level.WARN.toString(), 
Level.ERROR.toString(), 
+                                                        
Level.FATAL.toString(),Level.OFF.toString()};   
     static TabularType _loggerLevelTabularType;
     static CompositeType _loggerLevelCompositeType;
 
@@ -108,7 +111,11 @@
     {
         return _log4jLogWatchInterval;
     }
-
+    
+    public String[] getAvailableLoggerLevels()
+    {
+        return LEVELS;
+    }
     @SuppressWarnings("unchecked")
     public synchronized boolean setRuntimeLoggerLevel(String logger, String 
level)
     {   

Modified: 
qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/AttributesTabControl.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/AttributesTabControl.java?rev=762365&r1=762364&r2=762365&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/AttributesTabControl.java
 (original)
+++ 
qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/AttributesTabControl.java
 Mon Apr  6 14:45:33 2009
@@ -509,10 +509,24 @@
         {
             if (!isSimpleType(attribute.getValue()))
             {
-                Composite composite = new Composite(parent, SWT.BORDER);
-                composite.setLayout(new GridLayout());
-                composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, 
false));
-                ViewUtility.populateCompositeWithData(_toolkit, composite, 
attribute.getValue());
+                if (attribute.getValue() instanceof String[])
+                {
+                    String result = new String("");
+                    for(String val : (String[]) attribute.getValue()){
+                        result = result.concat(val+ "; ");
+                    }
+                    value = _toolkit.createText(parent, "", textStyle);
+                    
+                    value.setText(result);
+                    value.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, 
false));
+                }
+                else
+                {
+                    Composite composite = new Composite(parent, SWT.BORDER);
+                    composite.setLayout(new GridLayout());
+                    composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, 
true, false));
+                    ViewUtility.populateCompositeWithData(_toolkit, composite, 
attribute.getValue());
+                }
             }
             else
             {
@@ -877,7 +891,16 @@
                     break;
                 case 1 : // attribute value column 
                     if (attribute.getValue() != null)
-                        result = String.valueOf(attribute.getValue());
+                        if (attribute.getValue() instanceof String[])
+                        {
+                            for(String val : (String[]) attribute.getValue()){
+                                result = result.concat(val+ "; ");
+                            }
+                        }
+                        else
+                        {
+                            result = String.valueOf(attribute.getValue());
+                        }
                     break;
                 default :
                     result = "";
@@ -933,4 +956,4 @@
             return collator.compare(attribtue1.getName(), 
attribtue2.getName());
         }
     }
-}
\ No newline at end of file
+}



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



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

Reply via email to