You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-dev@logging.apache.org by ps...@apache.org on 2007/04/24 01:08:54 UTC

svn commit: r531643 - in /logging/log4j/branches/v1_2-branch/src/java/org/apache/log4j/jmx: AppenderDynamicMBean.java HierarchyDynamicMBean.java LoggerDynamicMBean.java

Author: psmith
Date: Mon Apr 23 16:08:53 2007
New Revision: 531643

URL: http://svn.apache.org/viewvc?view=rev&rev=531643
Log:
Bug 42017 Added if check for existence of an MBean name already.

Patch (sort of) supplied by Francesco Dalan.


Modified:
    logging/log4j/branches/v1_2-branch/src/java/org/apache/log4j/jmx/AppenderDynamicMBean.java
    logging/log4j/branches/v1_2-branch/src/java/org/apache/log4j/jmx/HierarchyDynamicMBean.java
    logging/log4j/branches/v1_2-branch/src/java/org/apache/log4j/jmx/LoggerDynamicMBean.java

Modified: logging/log4j/branches/v1_2-branch/src/java/org/apache/log4j/jmx/AppenderDynamicMBean.java
URL: http://svn.apache.org/viewvc/logging/log4j/branches/v1_2-branch/src/java/org/apache/log4j/jmx/AppenderDynamicMBean.java?view=diff&rev=531643&r1=531642&r2=531643
==============================================================================
--- logging/log4j/branches/v1_2-branch/src/java/org/apache/log4j/jmx/AppenderDynamicMBean.java (original)
+++ logging/log4j/branches/v1_2-branch/src/java/org/apache/log4j/jmx/AppenderDynamicMBean.java Mon Apr 23 16:08:53 2007
@@ -193,14 +193,11 @@
     try {
       LayoutDynamicMBean appenderMBean = new LayoutDynamicMBean(layout);
       objectName = new ObjectName("log4j:appender="+name);
-      server.registerMBean(appenderMBean, objectName);
-
-      dAttributes.add(new MBeanAttributeInfo("appender="+name,
-					     "javax.management.ObjectName",
-					     "The "+name+" layout.",
-					     true,
-					     true,
-					     false));
+      if (!server.isRegistered(objectName)) {
+        server.registerMBean(appenderMBean, objectName);
+        dAttributes.add(new MBeanAttributeInfo("appender=" + name, "javax.management.ObjectName",
+                "The " + name + " layout.", true, true, false));
+      }
 
     } catch(Exception e) {
       cat.error("Could not add DynamicLayoutMBean for ["+name+"].", e);

Modified: logging/log4j/branches/v1_2-branch/src/java/org/apache/log4j/jmx/HierarchyDynamicMBean.java
URL: http://svn.apache.org/viewvc/logging/log4j/branches/v1_2-branch/src/java/org/apache/log4j/jmx/HierarchyDynamicMBean.java?view=diff&rev=531643&r1=531642&r2=531643
==============================================================================
--- logging/log4j/branches/v1_2-branch/src/java/org/apache/log4j/jmx/HierarchyDynamicMBean.java (original)
+++ logging/log4j/branches/v1_2-branch/src/java/org/apache/log4j/jmx/HierarchyDynamicMBean.java Mon Apr 23 16:08:53 2007
@@ -118,23 +118,19 @@
     try {
       LoggerDynamicMBean loggerMBean = new LoggerDynamicMBean(logger);
       objectName = new ObjectName("log4j", "logger", name);
-      server.registerMBean(loggerMBean, objectName);
-
-      NotificationFilterSupport nfs = new NotificationFilterSupport();
-      nfs.enableType(ADD_APPENDER+logger.getName());
-
-      log.debug("---Adding logger ["+name+"] as listener.");
-
-      nbs.addNotificationListener(loggerMBean, nfs, null);
-
-
-      vAttributes.add(new MBeanAttributeInfo("logger="+name,
-					     "javax.management.ObjectName",
-					     "The "+name+" logger.",
-					     true,
-					     true, // this makes the object
-					     // clickable
-					     false));
+      
+      if (!server.isRegistered(objectName)) {
+        server.registerMBean(loggerMBean, objectName);
+        NotificationFilterSupport nfs = new NotificationFilterSupport();
+        nfs.enableType(ADD_APPENDER + logger.getName());
+        log.debug("---Adding logger [" + name + "] as listener.");
+        nbs.addNotificationListener(loggerMBean, nfs, null);
+        vAttributes.add(new MBeanAttributeInfo("logger=" + name, "javax.management.ObjectName",
+                "The " + name + " logger.", true, true, // this makes the object
+                // clickable
+                false));
+        
+      }
 
     } catch(Exception e) {
       log.error("Could not add loggerMBean for ["+name+"].", e);

Modified: logging/log4j/branches/v1_2-branch/src/java/org/apache/log4j/jmx/LoggerDynamicMBean.java
URL: http://svn.apache.org/viewvc/logging/log4j/branches/v1_2-branch/src/java/org/apache/log4j/jmx/LoggerDynamicMBean.java?view=diff&rev=531643&r1=531642&r2=531643
==============================================================================
--- logging/log4j/branches/v1_2-branch/src/java/org/apache/log4j/jmx/LoggerDynamicMBean.java (original)
+++ logging/log4j/branches/v1_2-branch/src/java/org/apache/log4j/jmx/LoggerDynamicMBean.java Mon Apr 23 16:08:53 2007
@@ -258,14 +258,11 @@
     try {
       AppenderDynamicMBean appenderMBean = new AppenderDynamicMBean(appender);
       objectName = new ObjectName("log4j", "appender", name);
-      server.registerMBean(appenderMBean, objectName);
-
-      dAttributes.add(new MBeanAttributeInfo("appender="+name,
-					     "javax.management.ObjectName",
-					     "The "+name+" appender.",
-					     true,
-					     true,
-					     false));
+      if (!server.isRegistered(objectName)) {
+        server.registerMBean(appenderMBean, objectName);
+        dAttributes.add(new MBeanAttributeInfo("appender=" + name, "javax.management.ObjectName",
+                "The " + name + " appender.", true, true, false));
+      }
 
     } catch(Exception e) {
       cat.error("Could not add appenderMBean for ["+name+"].", e);



---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-dev-help@logging.apache.org