You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2009/09/29 16:23:56 UTC

svn commit: r819963 - in /camel/trunk/camel-core/src/main/java/org/apache/camel/management: ./ mbean/

Author: davsclaus
Date: Tue Sep 29 14:23:55 2009
New Revision: 819963

URL: http://svn.apache.org/viewvc?rev=819963&view=rev
Log:
Init management mbeans reworked.

Modified:
    camel/trunk/camel-core/src/main/java/org/apache/camel/management/DefaultManagementLifecycleStrategy.java
    camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCamelContext.java
    camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedComponent.java
    camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCounter.java
    camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedEndpoint.java
    camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedErrorHandler.java
    camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedPerformanceCounter.java
    camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedProcessor.java
    camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedRoute.java
    camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedService.java
    camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedTracer.java

Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/management/DefaultManagementLifecycleStrategy.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/management/DefaultManagementLifecycleStrategy.java?rev=819963&r1=819962&r2=819963&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/management/DefaultManagementLifecycleStrategy.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/management/DefaultManagementLifecycleStrategy.java Tue Sep 29 14:23:55 2009
@@ -96,6 +96,7 @@
             initialized = true;
 
             ManagedCamelContext mc = new ManagedCamelContext(context);
+            mc.init(context.getManagementStrategy());
             getManagementStrategy().manageObject(mc);
 
         } catch (Exception e) {
@@ -112,6 +113,7 @@
         }
         try {
             ManagedCamelContext mc = new ManagedCamelContext(context);
+            mc.init(context.getManagementStrategy());
             // the context could have been removed already
             if (getManagementStrategy().isManaged(null, mc)) {
                 getManagementStrategy().unmanageObject(mc);
@@ -152,7 +154,9 @@
         if (component instanceof ManagementAware) {
             return ((ManagementAware) component).getManagedObject(component);
         } else {
-            return new ManagedComponent(name, component);
+            ManagedComponent mc = new ManagedComponent(name, component);
+            mc.init(getManagementStrategy());
+            return mc;
         }
     }
 
@@ -206,9 +210,13 @@
         if (endpoint instanceof ManagementAware) {
             return ((ManagementAware) endpoint).getManagedObject(endpoint);
         } else if (endpoint instanceof BrowsableEndpoint) {
-            return new ManagedBrowsableEndpoint((BrowsableEndpoint) endpoint);
+            ManagedBrowsableEndpoint me = new ManagedBrowsableEndpoint((BrowsableEndpoint) endpoint);
+            me.init(getManagementStrategy());
+            return me;
         } else {
-            return new ManagedEndpoint(endpoint);
+            ManagedEndpoint me = new ManagedEndpoint(endpoint);
+            me.init(getManagementStrategy());
+            return me;
         }
     }
 
@@ -266,7 +274,9 @@
             return ((ManagementAware) service).getManagedObject(service);
         } else if (service instanceof Tracer) {
             // special for tracer
-            return new ManagedTracer(context, (Tracer) service);
+            ManagedTracer mt = new ManagedTracer(context, (Tracer) service);
+            mt.init(getManagementStrategy());
+            return mt;
         } else if (service instanceof Producer) {
             answer = new ManagedProducer(context, (Producer) service);
         } else if (service instanceof ScheduledPollConsumer) {
@@ -280,6 +290,7 @@
 
         if (answer != null) {
             answer.setRoute(route);
+            answer.init(getManagementStrategy());
             return answer;
         } else {
             // not supported
@@ -336,6 +347,7 @@
         }
 
         answer.setRoute(route);
+        answer.init(getManagementStrategy());
         return answer;
     }
 
@@ -346,7 +358,8 @@
         }
 
         for (Route route : routes) {
-            ManagedRoute mr = new ManagedRoute(getManagementStrategy(), context, route);
+            ManagedRoute mr = new ManagedRoute(context, route);
+            mr.init(getManagementStrategy());
 
             // skip already managed routes, for example if the route has been restarted
             if (getManagementStrategy().isManaged(mr, null)) {
@@ -388,10 +401,11 @@
             return;
         }
 
-        Object managedObject = new ManagedErrorHandler(routeContext, errorHandler, errorHandlerBuilder);
+        ManagedErrorHandler me = new ManagedErrorHandler(routeContext, errorHandler, errorHandlerBuilder);
+        me.init(getManagementStrategy());
 
         // skip already managed services, for example if a route has been restarted
-        if (getManagementStrategy().isManaged(managedObject, null)) {
+        if (getManagementStrategy().isManaged(me, null)) {
             if (LOG.isTraceEnabled()) {
                 LOG.trace("The error handler builder is already managed: " + errorHandlerBuilder);
             }
@@ -399,7 +413,7 @@
         }
 
         try {
-            getManagementStrategy().manageObject(managedObject);
+            getManagementStrategy().manageObject(me);
         } catch (Exception e) {
             LOG.warn("Could not register error handler builder: " + errorHandlerBuilder + " as ErrorHandlerMBean.", e);
         }
@@ -450,7 +464,8 @@
 
         // okay this is a processor we would like to manage so create the
         // performance counter that is the base for processors
-        ManagedPerformanceCounter pc = new ManagedPerformanceCounter(getManagementStrategy());
+        ManagedPerformanceCounter pc = new ManagedPerformanceCounter();
+        pc.init(getManagementStrategy());
         // set statistics enabled depending on the option
         boolean enabled = context.getManagementStrategy().getStatisticsLevel() == ManagementStatisticsLevel.All;
         pc.setStatisticsEnabled(enabled);

Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCamelContext.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCamelContext.java?rev=819963&r1=819962&r2=819963&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCamelContext.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCamelContext.java Tue Sep 29 14:23:55 2009
@@ -22,6 +22,7 @@
 import org.apache.camel.ProducerTemplate;
 import org.apache.camel.ServiceStatus;
 import org.apache.camel.impl.ServiceSupport;
+import org.apache.camel.spi.ManagementStrategy;
 import org.springframework.jmx.export.annotation.ManagedAttribute;
 import org.springframework.jmx.export.annotation.ManagedOperation;
 import org.springframework.jmx.export.annotation.ManagedResource;
@@ -38,6 +39,10 @@
         this.context = context;
     }
 
+    public void init(ManagementStrategy strategy) {
+        // do nothing
+    }
+
     public CamelContext getContext() {
         return context;
     }

Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedComponent.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedComponent.java?rev=819963&r1=819962&r2=819963&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedComponent.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedComponent.java Tue Sep 29 14:23:55 2009
@@ -19,6 +19,7 @@
 import org.apache.camel.Component;
 import org.apache.camel.ServiceStatus;
 import org.apache.camel.impl.ServiceSupport;
+import org.apache.camel.spi.ManagementStrategy;
 import org.springframework.jmx.export.annotation.ManagedAttribute;
 import org.springframework.jmx.export.annotation.ManagedResource;
 
@@ -36,6 +37,10 @@
         this.component = component;
     }
 
+    public void init(ManagementStrategy strategy) {
+        // do nothing
+    }
+
     public Component getComponent() {
         return component;
     }

Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCounter.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCounter.java?rev=819963&r1=819962&r2=819963&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCounter.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCounter.java Tue Sep 29 14:23:55 2009
@@ -27,7 +27,7 @@
 
     protected Statistic exchangesTotal;
 
-    public ManagedCounter(ManagementStrategy strategy) {
+    public void init(ManagementStrategy strategy) {
         this.exchangesTotal = strategy.createStatistic("org.apache.camel.exchangesTotal", this, Statistic.UpdateMode.COUNTER);
     }
 

Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedEndpoint.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedEndpoint.java?rev=819963&r1=819962&r2=819963&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedEndpoint.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedEndpoint.java Tue Sep 29 14:23:55 2009
@@ -17,6 +17,7 @@
 package org.apache.camel.management.mbean;
 
 import org.apache.camel.Endpoint;
+import org.apache.camel.spi.ManagementStrategy;
 import org.springframework.jmx.export.annotation.ManagedAttribute;
 import org.springframework.jmx.export.annotation.ManagedResource;
 
@@ -29,6 +30,10 @@
         this.endpoint = endpoint;
     }
 
+    public void init(ManagementStrategy strategy) {
+        // do nothing
+    }
+
     public Endpoint getEndpoint() {
         return endpoint;
     }

Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedErrorHandler.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedErrorHandler.java?rev=819963&r1=819962&r2=819963&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedErrorHandler.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedErrorHandler.java Tue Sep 29 14:23:55 2009
@@ -21,6 +21,7 @@
 import org.apache.camel.builder.ErrorHandlerBuilder;
 import org.apache.camel.processor.ErrorHandlerSupport;
 import org.apache.camel.processor.RedeliveryErrorHandler;
+import org.apache.camel.spi.ManagementStrategy;
 import org.apache.camel.spi.RouteContext;
 import org.springframework.jmx.export.annotation.ManagedAttribute;
 import org.springframework.jmx.export.annotation.ManagedResource;
@@ -41,6 +42,10 @@
         this.errorHandlerBuilder = builder;
     }
 
+    public void init(ManagementStrategy strategy) {
+        // do nothing
+    }
+
     public RouteContext getRouteContext() {
         return routeContext;
     }

Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedPerformanceCounter.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedPerformanceCounter.java?rev=819963&r1=819962&r2=819963&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedPerformanceCounter.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedPerformanceCounter.java Tue Sep 29 14:23:55 2009
@@ -40,8 +40,8 @@
     private Statistic lastExchangeFailureTimestamp;
     private boolean statisticsEnabled = true;
 
-    public ManagedPerformanceCounter(ManagementStrategy strategy) {
-        super(strategy);
+    public void init(ManagementStrategy strategy) {
+        super.init(strategy);
         this.exchangesCompleted = strategy.createStatistic("org.apache.camel.exchangesCompleted", this, Statistic.UpdateMode.COUNTER);
         this.exchangesFailed = strategy.createStatistic("org.apache.camel.exchangesFailed", this, Statistic.UpdateMode.COUNTER);
         this.minProcessingTime = strategy.createStatistic("org.apache.camel.minimumProcessingTime", this, Statistic.UpdateMode.MINIMUM);

Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedProcessor.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedProcessor.java?rev=819963&r1=819962&r2=819963&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedProcessor.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedProcessor.java Tue Sep 29 14:23:55 2009
@@ -39,7 +39,6 @@
     private Route route;
 
     public ManagedProcessor(CamelContext context, Processor processor, ProcessorDefinition definition) {
-        super(context.getManagementStrategy());
         this.context = context;
         this.processor = processor;
         this.definition = definition;

Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedRoute.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedRoute.java?rev=819963&r1=819962&r2=819963&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedRoute.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedRoute.java Tue Sep 29 14:23:55 2009
@@ -34,8 +34,7 @@
     private String description;
     private CamelContext context;
 
-    public ManagedRoute(ManagementStrategy strategy, CamelContext context, Route route) {
-        super(strategy);
+    public ManagedRoute(CamelContext context, Route route) {
         this.route = route;
         this.context = context;
         this.description = route.toString();

Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedService.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedService.java?rev=819963&r1=819962&r2=819963&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedService.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedService.java Tue Sep 29 14:23:55 2009
@@ -20,6 +20,7 @@
 import org.apache.camel.Route;
 import org.apache.camel.Service;
 import org.apache.camel.ServiceStatus;
+import org.apache.camel.spi.ManagementStrategy;
 import org.apache.camel.impl.ServiceSupport;
 import org.springframework.jmx.export.annotation.ManagedAttribute;
 import org.springframework.jmx.export.annotation.ManagedOperation;
@@ -37,6 +38,10 @@
         this.service = service;
     }
 
+    public void init(ManagementStrategy strategy) {
+        // do nothing
+    }
+
     public Service getService() {
         return service;
     }

Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedTracer.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedTracer.java?rev=819963&r1=819962&r2=819963&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedTracer.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedTracer.java Tue Sep 29 14:23:55 2009
@@ -18,6 +18,7 @@
 
 import org.apache.camel.CamelContext;
 import org.apache.camel.LoggingLevel;
+import org.apache.camel.spi.ManagementStrategy;
 import org.apache.camel.processor.interceptor.Tracer;
 import org.apache.camel.util.ObjectHelper;
 import org.springframework.jmx.export.annotation.ManagedAttribute;
@@ -37,6 +38,10 @@
         this.tracer = tracer;
     }
 
+    public void init(ManagementStrategy strategy) {
+        // do nothing
+    }
+
     public CamelContext getCamelContext() {
         return camelContext;
     }