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 2012/01/30 15:23:51 UTC

svn commit: r1237671 - in /camel/branches/camel-2.9.x: ./ camel-core/src/main/java/org/apache/camel/component/seda/ camel-core/src/main/java/org/apache/camel/management/ camel-core/src/main/java/org/apache/camel/management/mbean/ camel-core/src/test/ja...

Author: davsclaus
Date: Mon Jan 30 14:23:50 2012
New Revision: 1237671

URL: http://svn.apache.org/viewvc?rev=1237671&view=rev
Log:
CAMEL-4938: Fixed seda endpoint with JMX not being able to invoke certain methods.

Added:
    camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedSedaEndpoint.java
      - copied unchanged from r1237666, camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedSedaEndpoint.java
    camel/branches/camel-2.9.x/components/camel-spring/src/test/java/org/apache/camel/spring/management/SpringManagedSedaEndpointTest.java
      - copied unchanged from r1237666, camel/trunk/components/camel-spring/src/test/java/org/apache/camel/spring/management/SpringManagedSedaEndpointTest.java
    camel/branches/camel-2.9.x/components/camel-spring/src/test/resources/org/apache/camel/spring/management/SpringManagedSedaEndpointTest.xml
      - copied unchanged from r1237666, camel/trunk/components/camel-spring/src/test/resources/org/apache/camel/spring/management/SpringManagedSedaEndpointTest.xml
Modified:
    camel/branches/camel-2.9.x/   (props changed)
    camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/component/seda/SedaEndpoint.java
    camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/management/DefaultManagementObjectStrategy.java
    camel/branches/camel-2.9.x/camel-core/src/test/java/org/apache/camel/management/ManagedSedaEndpointTest.java
    camel/branches/camel-2.9.x/components/camel-jaxb/   (props changed)
    camel/branches/camel-2.9.x/components/camel-jaxb/src/test/   (props changed)

Propchange: camel/branches/camel-2.9.x/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Mon Jan 30 14:23:50 2012
@@ -1 +1 @@
-/camel/trunk:1235643,1236639,1236667
+/camel/trunk:1235643,1236639,1236667,1237666

Propchange: camel/branches/camel-2.9.x/
------------------------------------------------------------------------------
Binary property 'svnmerge-integrated' - no diff available.

Modified: camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/component/seda/SedaEndpoint.java
URL: http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/component/seda/SedaEndpoint.java?rev=1237671&r1=1237670&r2=1237671&view=diff
==============================================================================
--- camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/component/seda/SedaEndpoint.java (original)
+++ camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/component/seda/SedaEndpoint.java Mon Jan 30 14:23:50 2012
@@ -32,9 +32,6 @@ import org.apache.camel.MultipleConsumer
 import org.apache.camel.Processor;
 import org.apache.camel.Producer;
 import org.apache.camel.WaitForTaskToComplete;
-import org.apache.camel.api.management.ManagedAttribute;
-import org.apache.camel.api.management.ManagedOperation;
-import org.apache.camel.api.management.ManagedResource;
 import org.apache.camel.impl.DefaultEndpoint;
 import org.apache.camel.processor.MulticastProcessor;
 import org.apache.camel.spi.BrowsableEndpoint;
@@ -45,7 +42,6 @@ import org.apache.camel.util.ServiceHelp
  * href="http://camel.apache.org/queue.html">Queue components</a> for
  * asynchronous SEDA exchanges on a {@link BlockingQueue} within a CamelContext
  */
-@ManagedResource(description = "Managed SedaEndpoint")
 public class SedaEndpoint extends DefaultEndpoint implements BrowsableEndpoint, MultipleConsumersSupport {
     private volatile BlockingQueue<Exchange> queue;
     private int size;
@@ -137,7 +133,6 @@ public class SedaEndpoint extends Defaul
         this.size = queue.remainingCapacity();
     }
 
-    @ManagedAttribute(description = "Queue max capacity")
     public int getSize() {
         return size;
     }
@@ -146,7 +141,6 @@ public class SedaEndpoint extends Defaul
         this.size = size;
     }
 
-    @ManagedAttribute(description = "Current queue size")
     public int getCurrentQueueSize() {
         return queue.size();
     }
@@ -155,7 +149,6 @@ public class SedaEndpoint extends Defaul
         this.blockWhenFull = blockWhenFull;
     }
 
-    @ManagedAttribute(description = "Whether the caller will block sending to a full queue")
     public boolean isBlockWhenFull() {
         return blockWhenFull;
     }
@@ -164,12 +157,10 @@ public class SedaEndpoint extends Defaul
         this.concurrentConsumers = concurrentConsumers;
     }
 
-    @ManagedAttribute(description = "Number of concurrent consumers")
     public int getConcurrentConsumers() {
         return concurrentConsumers;
     }
 
-    @ManagedAttribute
     public WaitForTaskToComplete getWaitForTaskToComplete() {
         return waitForTaskToComplete;
     }
@@ -178,7 +169,6 @@ public class SedaEndpoint extends Defaul
         this.waitForTaskToComplete = waitForTaskToComplete;
     }
 
-    @ManagedAttribute
     public long getTimeout() {
         return timeout;
     }
@@ -187,7 +177,6 @@ public class SedaEndpoint extends Defaul
         this.timeout = timeout;
     }
 
-    @ManagedAttribute
     public boolean isMultipleConsumers() {
         return multipleConsumers;
     }
@@ -207,7 +196,6 @@ public class SedaEndpoint extends Defaul
         return new ArrayList<Exchange>(getQueue());
     }
 
-    @ManagedAttribute
     public boolean isMultipleConsumersSupported() {
         return isMultipleConsumers();
     }
@@ -215,7 +203,6 @@ public class SedaEndpoint extends Defaul
     /**
      * Purges the queue
      */
-    @ManagedOperation(description = "Purges the seda queue")
     public void purgeQueue() {
         queue.clear();
     }

Modified: camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/management/DefaultManagementObjectStrategy.java
URL: http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/management/DefaultManagementObjectStrategy.java?rev=1237671&r1=1237670&r2=1237671&view=diff
==============================================================================
--- camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/management/DefaultManagementObjectStrategy.java (original)
+++ camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/management/DefaultManagementObjectStrategy.java Mon Jan 30 14:23:50 2012
@@ -29,6 +29,7 @@ import org.apache.camel.Producer;
 import org.apache.camel.Route;
 import org.apache.camel.Service;
 import org.apache.camel.component.bean.BeanProcessor;
+import org.apache.camel.component.seda.SedaEndpoint;
 import org.apache.camel.impl.ScheduledPollConsumer;
 import org.apache.camel.management.mbean.ManagedBeanProcessor;
 import org.apache.camel.management.mbean.ManagedBrowsableEndpoint;
@@ -43,6 +44,7 @@ import org.apache.camel.management.mbean
 import org.apache.camel.management.mbean.ManagedProducer;
 import org.apache.camel.management.mbean.ManagedRoute;
 import org.apache.camel.management.mbean.ManagedScheduledPollConsumer;
+import org.apache.camel.management.mbean.ManagedSedaEndpoint;
 import org.apache.camel.management.mbean.ManagedSendProcessor;
 import org.apache.camel.management.mbean.ManagedService;
 import org.apache.camel.management.mbean.ManagedSuspendableRoute;
@@ -90,6 +92,10 @@ public class DefaultManagementObjectStra
 
         if (endpoint instanceof org.apache.camel.spi.ManagementAware) {
             return ((org.apache.camel.spi.ManagementAware<Endpoint>) endpoint).getManagedObject(endpoint);
+        } else if (endpoint instanceof SedaEndpoint) {
+            ManagedSedaEndpoint me = new ManagedSedaEndpoint((SedaEndpoint) endpoint);
+            me.init(context.getManagementStrategy());
+            return me;
         } else if (endpoint instanceof BrowsableEndpoint) {
             ManagedBrowsableEndpoint me = new ManagedBrowsableEndpoint((BrowsableEndpoint) endpoint);
             me.init(context.getManagementStrategy());

Modified: camel/branches/camel-2.9.x/camel-core/src/test/java/org/apache/camel/management/ManagedSedaEndpointTest.java
URL: http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/camel-core/src/test/java/org/apache/camel/management/ManagedSedaEndpointTest.java?rev=1237671&r1=1237670&r2=1237671&view=diff
==============================================================================
--- camel/branches/camel-2.9.x/camel-core/src/test/java/org/apache/camel/management/ManagedSedaEndpointTest.java (original)
+++ camel/branches/camel-2.9.x/camel-core/src/test/java/org/apache/camel/management/ManagedSedaEndpointTest.java Mon Jan 30 14:23:50 2012
@@ -55,6 +55,13 @@ public class ManagedSedaEndpointTest ext
         size = (Integer) mbeanServer.getAttribute(name, "CurrentQueueSize");
         assertEquals(1, size.intValue());
 
+        Long size2 = (Long) mbeanServer.invoke(name, "queueSize", null, null);
+        assertEquals(1, size2.longValue());
+
+        String out = (String) mbeanServer.invoke(name, "browseExchange", new Object[]{0}, new String[]{"java.lang.Integer"});
+        assertNotNull(out);
+        assertTrue(out.contains("Hi World"));
+
         mbeanServer.invoke(name, "purgeQueue", null, null);
 
         size = (Integer) mbeanServer.getAttribute(name, "CurrentQueueSize");

Propchange: camel/branches/camel-2.9.x/components/camel-jaxb/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Mon Jan 30 14:23:50 2012
@@ -1 +1 @@
-/camel/trunk/components/camel-jaxb:1235643,1236403-1236663,1236667,1237148
+/camel/trunk/components/camel-jaxb:1235643,1236403-1236663,1236667,1237148,1237666

Propchange: camel/branches/camel-2.9.x/components/camel-jaxb/src/test/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Mon Jan 30 14:23:50 2012
@@ -1 +1 @@
-/camel/trunk/components/camel-jaxb/src/test:1235643,1236403-1236663,1236667,1237148,1237230
+/camel/trunk/components/camel-jaxb/src/test:1235643,1236403-1236663,1236667,1237148,1237230,1237666