Author: dkulp Date: Mon Sep 19 20:01:28 2011 New Revision: 1172783 URL: http://svn.apache.org/viewvc?rev=1172783&view=rev Log: Merged revisions 1153230 via svnmerge from https://svn.apache.org/repos/asf/camel/trunk
........ r1153230 | janstey | 2011-08-02 14:04:51 -0400 (Tue, 02 Aug 2011) | 1 line CAMEL-4297 - Add errorHandler option for DMLC to camel-jms ........ Modified: camel/branches/camel-2.8.x/ (props changed) camel/branches/camel-2.8.x/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java camel/branches/camel-2.8.x/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsConfiguration.java camel/branches/camel-2.8.x/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsEndpoint.java camel/branches/camel-2.8.x/components/camel-jms/src/main/java/org/apache/camel/component/jms/reply/PersistentQueueReplyManager.java camel/branches/camel-2.8.x/components/camel-jms/src/main/java/org/apache/camel/component/jms/reply/TemporaryQueueReplyManager.java camel/branches/camel-2.8.x/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsEndpointConfigurationTest.java Propchange: camel/branches/camel-2.8.x/ ------------------------------------------------------------------------------ Binary property 'svnmerge-integrated' - no diff available. Modified: camel/branches/camel-2.8.x/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java URL: http://svn.apache.org/viewvc/camel/branches/camel-2.8.x/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java?rev=1172783&r1=1172782&r2=1172783&view=diff ============================================================================== --- camel/branches/camel-2.8.x/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java (original) +++ camel/branches/camel-2.8.x/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java Mon Sep 19 20:01:28 2011 @@ -39,6 +39,7 @@ import org.springframework.jms.core.JmsO import org.springframework.jms.support.converter.MessageConverter; import org.springframework.jms.support.destination.DestinationResolver; import org.springframework.transaction.PlatformTransactionManager; +import org.springframework.util.ErrorHandler; import static org.apache.camel.util.ObjectHelper.removeStartingCharacters; @@ -208,6 +209,10 @@ public class JmsComponent extends Defaul getConfiguration().setExceptionListener(exceptionListener); } + public void setErrorHandler(ErrorHandler errorHandler) { + getConfiguration().setErrorHandler(errorHandler); + } + public void setExplicitQosEnabled(boolean explicitQosEnabled) { getConfiguration().setExplicitQosEnabled(explicitQosEnabled); } Modified: camel/branches/camel-2.8.x/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsConfiguration.java URL: http://svn.apache.org/viewvc/camel/branches/camel-2.8.x/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsConfiguration.java?rev=1172783&r1=1172782&r2=1172783&view=diff ============================================================================== --- camel/branches/camel-2.8.x/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsConfiguration.java (original) +++ camel/branches/camel-2.8.x/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsConfiguration.java Mon Sep 19 20:01:28 2011 @@ -41,6 +41,7 @@ import org.springframework.jms.support.c import org.springframework.jms.support.destination.DestinationResolver; import org.springframework.transaction.PlatformTransactionManager; import org.springframework.util.Assert; +import org.springframework.util.ErrorHandler; import static org.apache.camel.component.jms.JmsMessageHelper.normalizeDestinationName; @@ -64,6 +65,7 @@ public class JmsConfiguration implements private String acknowledgementModeName; // Used to configure the spring Container private ExceptionListener exceptionListener; + private ErrorHandler errorHandler; private boolean autoStartup = true; private boolean acceptMessagesWhileStopping; private String clientId; @@ -460,6 +462,14 @@ public class JmsConfiguration implements this.exceptionListener = exceptionListener; } + public void setErrorHandler(ErrorHandler errorHandler) { + this.errorHandler = errorHandler; + } + + public ErrorHandler getErrorHandler() { + return errorHandler; + } + @Deprecated public boolean isSubscriptionDurable() { return subscriptionDurable; @@ -839,6 +849,10 @@ public class JmsConfiguration implements container.setExceptionListener(exceptionListener); } + if (errorHandler != null) { + container.setErrorHandler(errorHandler); + } + container.setAcceptMessagesWhileStopping(acceptMessagesWhileStopping); container.setExposeListenerSession(exposeListenerSession); container.setSessionTransacted(transacted); Modified: camel/branches/camel-2.8.x/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsEndpoint.java URL: http://svn.apache.org/viewvc/camel/branches/camel-2.8.x/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsEndpoint.java?rev=1172783&r1=1172782&r2=1172783&view=diff ============================================================================== --- camel/branches/camel-2.8.x/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsEndpoint.java (original) +++ camel/branches/camel-2.8.x/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsEndpoint.java Mon Sep 19 20:01:28 2011 @@ -59,6 +59,7 @@ import org.springframework.jms.support.d import org.springframework.jmx.export.annotation.ManagedAttribute; import org.springframework.jmx.export.annotation.ManagedResource; import org.springframework.transaction.PlatformTransactionManager; +import org.springframework.util.ErrorHandler; /** * A <a href="http://activemq.apache.org/jms.html">JMS Endpoint</a> @@ -490,6 +491,10 @@ public class JmsEndpoint extends Default return getConfiguration().getExceptionListener(); } + public ErrorHandler getErrorHandler() { + return getConfiguration().getErrorHandler(); + } + @ManagedAttribute public int getIdleTaskExecutionLimit() { return getConfiguration().getIdleTaskExecutionLimit(); @@ -745,6 +750,10 @@ public class JmsEndpoint extends Default getConfiguration().setExceptionListener(exceptionListener); } + public void setErrorHandler(ErrorHandler errorHandler) { + getConfiguration().setErrorHandler(errorHandler); + } + @ManagedAttribute public void setExplicitQosEnabled(boolean explicitQosEnabled) { getConfiguration().setExplicitQosEnabled(explicitQosEnabled); Modified: camel/branches/camel-2.8.x/components/camel-jms/src/main/java/org/apache/camel/component/jms/reply/PersistentQueueReplyManager.java URL: http://svn.apache.org/viewvc/camel/branches/camel-2.8.x/components/camel-jms/src/main/java/org/apache/camel/component/jms/reply/PersistentQueueReplyManager.java?rev=1172783&r1=1172782&r2=1172783&view=diff ============================================================================== --- camel/branches/camel-2.8.x/components/camel-jms/src/main/java/org/apache/camel/component/jms/reply/PersistentQueueReplyManager.java (original) +++ camel/branches/camel-2.8.x/components/camel-jms/src/main/java/org/apache/camel/component/jms/reply/PersistentQueueReplyManager.java Mon Sep 19 20:01:28 2011 @@ -193,6 +193,9 @@ public class PersistentQueueReplyManager if (endpoint.getExceptionListener() != null) { answer.setExceptionListener(endpoint.getExceptionListener()); } + if (endpoint.getErrorHandler() != null) { + answer.setErrorHandler(endpoint.getErrorHandler()); + } if (endpoint.getReceiveTimeout() >= 0) { answer.setReceiveTimeout(endpoint.getReceiveTimeout()); } Modified: camel/branches/camel-2.8.x/components/camel-jms/src/main/java/org/apache/camel/component/jms/reply/TemporaryQueueReplyManager.java URL: http://svn.apache.org/viewvc/camel/branches/camel-2.8.x/components/camel-jms/src/main/java/org/apache/camel/component/jms/reply/TemporaryQueueReplyManager.java?rev=1172783&r1=1172782&r2=1172783&view=diff ============================================================================== --- camel/branches/camel-2.8.x/components/camel-jms/src/main/java/org/apache/camel/component/jms/reply/TemporaryQueueReplyManager.java (original) +++ camel/branches/camel-2.8.x/components/camel-jms/src/main/java/org/apache/camel/component/jms/reply/TemporaryQueueReplyManager.java Mon Sep 19 20:01:28 2011 @@ -110,6 +110,9 @@ public class TemporaryQueueReplyManager if (endpoint.getExceptionListener() != null) { answer.setExceptionListener(endpoint.getExceptionListener()); } + if (endpoint.getErrorHandler() != null) { + answer.setErrorHandler(endpoint.getErrorHandler()); + } if (endpoint.getReceiveTimeout() >= 0) { answer.setReceiveTimeout(endpoint.getReceiveTimeout()); } Modified: camel/branches/camel-2.8.x/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsEndpointConfigurationTest.java URL: http://svn.apache.org/viewvc/camel/branches/camel-2.8.x/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsEndpointConfigurationTest.java?rev=1172783&r1=1172782&r2=1172783&view=diff ============================================================================== --- camel/branches/camel-2.8.x/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsEndpointConfigurationTest.java (original) +++ camel/branches/camel-2.8.x/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsEndpointConfigurationTest.java Mon Sep 19 20:01:28 2011 @@ -37,6 +37,7 @@ import org.springframework.jms.core.JmsT import org.springframework.jms.listener.AbstractMessageListenerContainer; import org.springframework.jms.listener.DefaultMessageListenerContainer; import org.springframework.jms.support.converter.SimpleMessageConverter; +import org.springframework.util.ErrorHandler; import static org.apache.camel.component.jms.JmsComponent.jmsComponentAutoAcknowledge; @@ -222,6 +223,7 @@ public class JmsEndpointConfigurationTes assertEquals("jms://queue:Foo", endpoint.getEndpointKey()); assertEquals("jms://queue:Foo", endpoint.getEndpointUri()); assertNull(endpoint.getExceptionListener()); + assertNull(endpoint.getErrorHandler()); assertEquals(1, endpoint.getIdleTaskExecutionLimit()); assertEquals(1, endpoint.getIdleConsumerLimit()); assertEquals(null, endpoint.getJmsMessageType()); @@ -315,6 +317,12 @@ public class JmsEndpointConfigurationTes }); assertNotNull(endpoint.getExceptionListener()); + endpoint.setErrorHandler(new ErrorHandler() { + public void handleError(Throwable t) { + } + }); + assertNotNull(endpoint.getErrorHandler()); + endpoint.setExplicitQosEnabled(true); assertEquals(true, endpoint.isExplicitQosEnabled());