You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by cs...@apache.org on 2011/09/16 17:15:53 UTC
svn commit: r1171618 -
/camel/trunk/camel-core/src/main/java/org/apache/camel/processor/RedeliveryErrorHandler.java
Author: cschneider
Date: Fri Sep 16 15:15:53 2011
New Revision: 1171618
URL: http://svn.apache.org/viewvc?rev=1171618&view=rev
Log:
CAMEL-4458: Fix for failure in SpringAsyncDeadLetterChannelExecutorServiceRefTest
Modified:
camel/trunk/camel-core/src/main/java/org/apache/camel/processor/RedeliveryErrorHandler.java
Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/processor/RedeliveryErrorHandler.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/processor/RedeliveryErrorHandler.java?rev=1171618&r1=1171617&r2=1171618&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/processor/RedeliveryErrorHandler.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/processor/RedeliveryErrorHandler.java Fri Sep 16 15:15:53 2011
@@ -30,7 +30,9 @@ import org.apache.camel.Message;
import org.apache.camel.Predicate;
import org.apache.camel.Processor;
import org.apache.camel.model.OnExceptionDefinition;
+import org.apache.camel.spi.ExecutorServiceManager;
import org.apache.camel.spi.SubUnitOfWorkCallback;
+import org.apache.camel.spi.ThreadPoolProfile;
import org.apache.camel.util.AsyncProcessorConverterHelper;
import org.apache.camel.util.AsyncProcessorHelper;
import org.apache.camel.util.CamelContextHelper;
@@ -988,6 +990,11 @@ public abstract class RedeliveryErrorHan
if (executorServiceRef != null) {
executorService = camelContext.getRegistry().lookup(executorServiceRef, ScheduledExecutorService.class);
if (executorService == null) {
+ ExecutorServiceManager manager = camelContext.getExecutorServiceManager();
+ ThreadPoolProfile profile = manager.getThreadPoolProfile(executorServiceRef);
+ executorService = manager.newScheduledThreadPool(this, executorServiceRef, profile);
+ }
+ if (executorService == null) {
throw new IllegalArgumentException("ExecutorServiceRef " + executorServiceRef + " not found in registry.");
}
} else {