You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ja...@apache.org on 2011/08/01 19:32:19 UTC
svn commit: r1152868 - in /camel/trunk/components/camel-jms/src:
main/java/org/apache/camel/component/jms/
test/java/org/apache/camel/component/jms/
Author: janstey
Date: Mon Aug 1 17:32:17 2011
New Revision: 1152868
URL: http://svn.apache.org/viewvc?rev=1152868&view=rev
Log:
CAMEL-4290 - Add idleConsumerLimit option for DMLC to camel-jms
Modified:
camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java
camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsConfiguration.java
camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsEndpoint.java
camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsComponentTest.java
camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsEndpointConfigurationTest.java
Modified: camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java?rev=1152868&r1=1152867&r2=1152868&view=diff
==============================================================================
--- camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java (original)
+++ camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java Mon Aug 1 17:32:17 2011
@@ -217,6 +217,10 @@ public class JmsComponent extends Defaul
public void setIdleTaskExecutionLimit(int idleTaskExecutionLimit) {
getConfiguration().setIdleTaskExecutionLimit(idleTaskExecutionLimit);
}
+
+ public void setIdleConsumerLimit(int idleConsumerLimit) {
+ getConfiguration().setIdleConsumerLimit(idleConsumerLimit);
+ }
public void setMaxConcurrentConsumers(int maxConcurrentConsumers) {
getConfiguration().setMaxConcurrentConsumers(maxConcurrentConsumers);
Modified: camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsConfiguration.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsConfiguration.java?rev=1152868&r1=1152867&r2=1152868&view=diff
==============================================================================
--- camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsConfiguration.java (original)
+++ camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsConfiguration.java Mon Aug 1 17:32:17 2011
@@ -80,6 +80,7 @@ public class JmsConfiguration implements
private long receiveTimeout = -1;
private long requestTimeout = 20000L;
private int idleTaskExecutionLimit = 1;
+ private int idleConsumerLimit = 1;
private int maxConcurrentConsumers;
// JmsTemplate only
private Boolean explicitQosEnabled;
@@ -585,6 +586,14 @@ public class JmsConfiguration implements
this.idleTaskExecutionLimit = idleTaskExecutionLimit;
}
+ public int getIdleConsumerLimit() {
+ return idleConsumerLimit;
+ }
+
+ public void setIdleConsumerLimit(int idleConsumerLimit) {
+ this.idleConsumerLimit = idleConsumerLimit;
+ }
+
public int getMaxConcurrentConsumers() {
return maxConcurrentConsumers;
}
@@ -862,6 +871,9 @@ public class JmsConfiguration implements
if (idleTaskExecutionLimit >= 0) {
container.setIdleTaskExecutionLimit(idleTaskExecutionLimit);
}
+ if (idleConsumerLimit >= 0) {
+ container.setIdleConsumerLimit(idleConsumerLimit);
+ }
if (maxConcurrentConsumers > 0) {
if (maxConcurrentConsumers < concurrentConsumers) {
throw new IllegalArgumentException("Property maxConcurrentConsumers: " + maxConcurrentConsumers
Modified: camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsEndpoint.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsEndpoint.java?rev=1152868&r1=1152867&r2=1152868&view=diff
==============================================================================
--- camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsEndpoint.java (original)
+++ camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsEndpoint.java Mon Aug 1 17:32:17 2011
@@ -496,6 +496,11 @@ public class JmsEndpoint extends Default
return getConfiguration().getIdleTaskExecutionLimit();
}
+ @ManagedAttribute
+ public int getIdleConsumerLimit() {
+ return getConfiguration().getIdleConsumerLimit();
+ }
+
public JmsOperations getJmsOperations() {
return getConfiguration().getJmsOperations();
}
@@ -758,6 +763,11 @@ public class JmsEndpoint extends Default
getConfiguration().setIdleTaskExecutionLimit(idleTaskExecutionLimit);
}
+ @ManagedAttribute
+ public void setIdleConsumerLimit(int idleConsumerLimit) {
+ getConfiguration().setIdleConsumerLimit(idleConsumerLimit);
+ }
+
public void setJmsOperations(JmsOperations jmsOperations) {
getConfiguration().setJmsOperations(jmsOperations);
}
Modified: camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsComponentTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsComponentTest.java?rev=1152868&r1=1152867&r2=1152868&view=diff
==============================================================================
--- camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsComponentTest.java (original)
+++ camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsComponentTest.java Mon Aug 1 17:32:17 2011
@@ -47,6 +47,7 @@ public class JmsComponentTest extends Ca
assertEquals(true, endpoint.isDeliveryPersistent());
assertEquals(true, endpoint.isExplicitQosEnabled());
assertEquals(20, endpoint.getIdleTaskExecutionLimit());
+ assertEquals(21, endpoint.getIdleConsumerLimit());
assertEquals(5, endpoint.getMaxConcurrentConsumers());
assertEquals(90, endpoint.getMaxMessagesPerTask());
assertEquals(3, endpoint.getPriority());
@@ -73,6 +74,7 @@ public class JmsComponentTest extends Ca
comp.setDeliveryPersistent(true);
comp.setExplicitQosEnabled(true);
comp.setIdleTaskExecutionLimit(20);
+ comp.setIdleConsumerLimit(21);
comp.setMaxConcurrentConsumers(5);
comp.setMaxMessagesPerTask(90);
comp.setPriority(3);
Modified: camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsEndpointConfigurationTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsEndpointConfigurationTest.java?rev=1152868&r1=1152867&r2=1152868&view=diff
==============================================================================
--- camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsEndpointConfigurationTest.java (original)
+++ camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsEndpointConfigurationTest.java Mon Aug 1 17:32:17 2011
@@ -173,6 +173,13 @@ public class JmsEndpointConfigurationTes
}
@Test
+ public void testIdleConsumerLimit() throws Exception {
+ JmsEndpoint endpoint = (JmsEndpoint) resolveMandatoryEndpoint("jms:queue:Foo?idleConsumerLimit=51");
+ assertEquals(51, endpoint.getIdleConsumerLimit());
+ assertEquals(true, endpoint.isAutoStartup());
+ }
+
+ @Test
public void testLazyCreateTransactionManager() throws Exception {
JmsEndpoint endpoint = (JmsEndpoint) resolveMandatoryEndpoint("jms:queue:Foo?lazyCreateTransactionManager=true");
assertEquals(true, endpoint.getConfiguration().isLazyCreateTransactionManager());
@@ -204,6 +211,7 @@ public class JmsEndpointConfigurationTes
assertEquals("jms://queue:Foo", endpoint.getEndpointUri());
assertNull(endpoint.getExceptionListener());
assertEquals(1, endpoint.getIdleTaskExecutionLimit());
+ assertEquals(1, endpoint.getIdleConsumerLimit());
assertEquals(null, endpoint.getJmsMessageType());
assertNull(endpoint.getJmsOperations());
assertNotNull(endpoint.getListenerConnectionFactory());
@@ -305,6 +313,9 @@ public class JmsEndpointConfigurationTes
endpoint.setIdleTaskExecutionLimit(5);
assertEquals(5, endpoint.getIdleTaskExecutionLimit());
+ endpoint.setIdleConsumerLimit(5);
+ assertEquals(5, endpoint.getIdleConsumerLimit());
+
endpoint.setMaxConcurrentConsumers(4);
assertEquals(4, endpoint.getMaxConcurrentConsumers());