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 2015/07/26 13:36:16 UTC

[3/8] camel git commit: CAMEL-9015: JMX Agent should always let JVM system properties take precedence. Also aling that all the options is configured on the agent and not a mix of strategty/agent.

CAMEL-9015: JMX Agent should always let JVM system properties take precedence. Also aling that all the options is configured on the agent and not a mix of strategty/agent.


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/9b047c8c
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/9b047c8c
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/9b047c8c

Branch: refs/heads/master
Commit: 9b047c8c0da2a2ec903a584949be387efd1b534f
Parents: 488f391
Author: Claus Ibsen <da...@apache.org>
Authored: Sun Jul 26 09:52:18 2015 +0200
Committer: Claus Ibsen <da...@apache.org>
Committed: Sun Jul 26 13:34:12 2015 +0200

----------------------------------------------------------------------
 .../org/apache/camel/impl/ProducerCache.java    |  8 ++++++-
 .../management/DefaultManagementStrategy.java   | 25 ++++++++++++++++----
 .../management/mbean/ManagedCamelContext.java   |  2 +-
 .../camel/management/mbean/ManagedRoute.java    |  2 +-
 .../ManagedRedeliverRouteOnlyTest.java          |  2 +-
 .../ManagedStatisticsLevelOffTest.java          |  4 ++--
 .../ManagedStatisticsLevelRoutesOnlyTest.java   |  2 +-
 7 files changed, 34 insertions(+), 11 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/9b047c8c/camel-core/src/main/java/org/apache/camel/impl/ProducerCache.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/impl/ProducerCache.java b/camel-core/src/main/java/org/apache/camel/impl/ProducerCache.java
index a78f4dd..7b2cd37 100644
--- a/camel-core/src/main/java/org/apache/camel/impl/ProducerCache.java
+++ b/camel-core/src/main/java/org/apache/camel/impl/ProducerCache.java
@@ -81,7 +81,13 @@ public class ProducerCache extends ServiceSupport {
         this.camelContext = camelContext;
         this.pool = producerServicePool;
         this.producers = cache;
-        this.extendedStatistics = camelContext.getManagementStrategy().getManagementAgent().getStatisticsLevel().isExtended();
+
+        // only if JMX is enabled
+        if (camelContext.getManagementStrategy().getManagementAgent() != null) {
+            this.extendedStatistics = camelContext.getManagementStrategy().getManagementAgent().getStatisticsLevel().isExtended();
+        } else {
+            this.extendedStatistics = false;
+        }
     }
 
     public boolean isEventNotifierEnabled() {

http://git-wip-us.apache.org/repos/asf/camel/blob/9b047c8c/camel-core/src/main/java/org/apache/camel/management/DefaultManagementStrategy.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/management/DefaultManagementStrategy.java b/camel-core/src/main/java/org/apache/camel/management/DefaultManagementStrategy.java
index b918186..7a20ea2 100644
--- a/camel-core/src/main/java/org/apache/camel/management/DefaultManagementStrategy.java
+++ b/camel-core/src/main/java/org/apache/camel/management/DefaultManagementStrategy.java
@@ -187,19 +187,36 @@ public class DefaultManagementStrategy extends ServiceSupport implements Managem
     }
 
     public void setStatisticsLevel(ManagementStatisticsLevel level) {
-        this.statisticsLevel = level;
+        if (managementAgent != null) {
+            getManagementAgent().setStatisticsLevel(level);
+        } else {
+            throw new IllegalStateException("Not started");
+        }
     }
 
     public ManagementStatisticsLevel getStatisticsLevel() {
-        return statisticsLevel;
+        if (managementAgent != null) {
+            return getManagementAgent().getStatisticsLevel();
+        } else {
+            throw new IllegalStateException("Not started");
+        }
     }
 
     public boolean isLoadStatisticsEnabled() {
-        return loadStatisticsEnabled;
+        if (managementAgent != null) {
+            boolean load = getManagementAgent().getLoadStatisticsEnabled() != null && getManagementAgent().getLoadStatisticsEnabled();
+            return load;
+        } else {
+            throw new IllegalStateException("Not started");
+        }
     }
 
     public void setLoadStatisticsEnabled(boolean loadStatisticsEnabled) {
-        this.loadStatisticsEnabled = loadStatisticsEnabled;
+        if (managementAgent != null) {
+            getManagementAgent().setLoadStatisticsEnabled(loadStatisticsEnabled);
+        } else {
+            throw new IllegalStateException("Not started");
+        }
     }
 
     protected void doStart() throws Exception {

http://git-wip-us.apache.org/repos/asf/camel/blob/9b047c8c/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCamelContext.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCamelContext.java b/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCamelContext.java
index 8d49fd8..7584cbb 100644
--- a/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCamelContext.java
+++ b/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedCamelContext.java
@@ -73,7 +73,7 @@ public class ManagedCamelContext extends ManagedPerformanceCounter implements Ti
 
     public ManagedCamelContext(ModelCamelContext context) {
         this.context = context;
-        boolean enabled = context.getManagementStrategy().getStatisticsLevel() != ManagementStatisticsLevel.Off;
+        boolean enabled = context.getManagementStrategy().getManagementAgent().getStatisticsLevel() != ManagementStatisticsLevel.Off;
         setStatisticsEnabled(enabled);
     }
 

http://git-wip-us.apache.org/repos/asf/camel/blob/9b047c8c/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedRoute.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedRoute.java b/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedRoute.java
index cd979ce..43ad47e 100644
--- a/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedRoute.java
+++ b/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedRoute.java
@@ -64,7 +64,7 @@ public class ManagedRoute extends ManagedPerformanceCounter implements TimerList
         this.route = route;
         this.context = context;
         this.description = route.getDescription();
-        boolean enabled = context.getManagementStrategy().getStatisticsLevel() != ManagementStatisticsLevel.Off;
+        boolean enabled = context.getManagementStrategy().getManagementAgent().getStatisticsLevel() != ManagementStatisticsLevel.Off;
         setStatisticsEnabled(enabled);
     }
 

http://git-wip-us.apache.org/repos/asf/camel/blob/9b047c8c/camel-core/src/test/java/org/apache/camel/management/ManagedRedeliverRouteOnlyTest.java
----------------------------------------------------------------------
diff --git a/camel-core/src/test/java/org/apache/camel/management/ManagedRedeliverRouteOnlyTest.java b/camel-core/src/test/java/org/apache/camel/management/ManagedRedeliverRouteOnlyTest.java
index 054681a..1a63926 100644
--- a/camel-core/src/test/java/org/apache/camel/management/ManagedRedeliverRouteOnlyTest.java
+++ b/camel-core/src/test/java/org/apache/camel/management/ManagedRedeliverRouteOnlyTest.java
@@ -61,7 +61,7 @@ public class ManagedRedeliverRouteOnlyTest extends ManagementTestSupport {
         return new RouteBuilder() {
             @Override
             public void configure() throws Exception {
-                context.getManagementStrategy().setStatisticsLevel(ManagementStatisticsLevel.RoutesOnly);
+                context.getManagementStrategy().getManagementAgent().setStatisticsLevel(ManagementStatisticsLevel.RoutesOnly);
 
                 onException(Exception.class).handled(true)
                     .maximumRedeliveries(4).logStackTrace(false)

http://git-wip-us.apache.org/repos/asf/camel/blob/9b047c8c/camel-core/src/test/java/org/apache/camel/management/ManagedStatisticsLevelOffTest.java
----------------------------------------------------------------------
diff --git a/camel-core/src/test/java/org/apache/camel/management/ManagedStatisticsLevelOffTest.java b/camel-core/src/test/java/org/apache/camel/management/ManagedStatisticsLevelOffTest.java
index 365eed3..630b044 100644
--- a/camel-core/src/test/java/org/apache/camel/management/ManagedStatisticsLevelOffTest.java
+++ b/camel-core/src/test/java/org/apache/camel/management/ManagedStatisticsLevelOffTest.java
@@ -34,7 +34,7 @@ public class ManagedStatisticsLevelOffTest extends ManagementTestSupport {
     protected CamelContext createCamelContext() throws Exception {
         CamelContext context = super.createCamelContext();
         // disable it by default
-        context.getManagementStrategy().setStatisticsLevel(ManagementStatisticsLevel.Off);
+        context.getManagementStrategy().getManagementAgent().setStatisticsLevel(ManagementStatisticsLevel.Off);
         return context;
     }
 
@@ -59,7 +59,7 @@ public class ManagedStatisticsLevelOffTest extends ManagementTestSupport {
         Long completed = (Long) mbeanServer.getAttribute(on, "ExchangesCompleted");
         assertEquals(0, completed.longValue());
 
-        // disable statistics
+        // enable statistics
         mbeanServer.setAttribute(on, new Attribute("StatisticsEnabled", true));
 
         // send in another message

http://git-wip-us.apache.org/repos/asf/camel/blob/9b047c8c/camel-core/src/test/java/org/apache/camel/management/ManagedStatisticsLevelRoutesOnlyTest.java
----------------------------------------------------------------------
diff --git a/camel-core/src/test/java/org/apache/camel/management/ManagedStatisticsLevelRoutesOnlyTest.java b/camel-core/src/test/java/org/apache/camel/management/ManagedStatisticsLevelRoutesOnlyTest.java
index f2bb52f..a97a754 100644
--- a/camel-core/src/test/java/org/apache/camel/management/ManagedStatisticsLevelRoutesOnlyTest.java
+++ b/camel-core/src/test/java/org/apache/camel/management/ManagedStatisticsLevelRoutesOnlyTest.java
@@ -34,7 +34,7 @@ public class ManagedStatisticsLevelRoutesOnlyTest extends ManagementTestSupport
         CamelContext context = super.createCamelContext();
 
         // only routes
-        context.getManagementStrategy().setStatisticsLevel(ManagementStatisticsLevel.RoutesOnly);
+        context.getManagementStrategy().getManagementAgent().setStatisticsLevel(ManagementStatisticsLevel.RoutesOnly);
         return context;
     }