Author: davsclaus
Date: Mon Mar 23 15:41:30 2009
New Revision: 757415

URL: http://svn.apache.org/viewvc?rev=757415&view=rev
Log:
CAMEL-1479: Removed inheritErrorHandler option that is not really used. Will 
just complicate error handler if you can do special error handler per. 
individual node basis. And it was buggy anyway.

Modified:
    
camel/trunk/camel-core/src/main/java/org/apache/camel/builder/RouteBuilder.java
    
camel/trunk/camel-core/src/main/java/org/apache/camel/model/AggregateDefinition.java
    
camel/trunk/camel-core/src/main/java/org/apache/camel/model/ExpressionNode.java
    
camel/trunk/camel-core/src/main/java/org/apache/camel/model/LoadBalanceDefinition.java
    
camel/trunk/camel-core/src/main/java/org/apache/camel/model/OutputDefinition.java
    
camel/trunk/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java
    
camel/trunk/camel-core/src/main/java/org/apache/camel/model/RouteDefinition.java
    
camel/trunk/camel-core/src/main/java/org/apache/camel/model/RoutesDefinition.java
    
camel/trunk/camel-core/src/main/java/org/apache/camel/model/ThreadDefinition.java
    
camel/trunk/camel-core/src/test/java/org/apache/camel/builder/ErrorHandlerTest.java
    
camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/TransactedJmsRouteTest.java

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/builder/RouteBuilder.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/builder/RouteBuilder.java?rev=757415&r1=757414&r2=757415&view=diff
==============================================================================
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/builder/RouteBuilder.java 
(original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/builder/RouteBuilder.java 
Mon Mar 23 15:41:30 2009
@@ -141,18 +141,6 @@
     }
 
     /**
-     * Configures whether or not the <a 
href="http://camel.apache.org/error-handler.html";>error handler</a>
-     * is inherited by every processing node (or just the top most one)
-     *
-     * @param inherit  whether error handlers should be inherited or not
-     * @return the current builder
-     */
-    public RouteBuilder inheritErrorHandler(boolean inherit) {
-        routeCollection.setInheritErrorHandlerFlag(inherit);
-        return this;
-    }
-
-    /**
      * Adds the given interceptor to this route
      *
      * @param interceptor  the interceptor
@@ -229,13 +217,6 @@
     }
 
     @Override
-    public void setInheritErrorHandler(boolean inheritErrorHandler) {
-        super.setInheritErrorHandler(inheritErrorHandler);
-        routeCollection.setInheritErrorHandlerFlag(inheritErrorHandler);
-
-    }
-
-    @Override
     public void setErrorHandlerBuilder(ErrorHandlerBuilder 
errorHandlerBuilder) {
         super.setErrorHandlerBuilder(errorHandlerBuilder);
         routeCollection.setErrorHandlerBuilder(getErrorHandlerBuilder());

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/AggregateDefinition.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/model/AggregateDefinition.java?rev=757415&r1=757414&r2=757415&view=diff
==============================================================================
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/AggregateDefinition.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/AggregateDefinition.java
 Mon Mar 23 15:41:30 2009
@@ -421,11 +421,4 @@
         this.outputs = outputs;
     }
     
-    @Override
-    protected void configureChild(ProcessorDefinition output) {
-        super.configureChild(output);
-        if (isInheritErrorHandler()) {
-            output.setErrorHandlerBuilder(getErrorHandlerBuilder());
-        }
-    }
 }

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/ExpressionNode.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/model/ExpressionNode.java?rev=757415&r1=757414&r2=757415&view=diff
==============================================================================
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/ExpressionNode.java 
(original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/ExpressionNode.java 
Mon Mar 23 15:41:30 2009
@@ -95,11 +95,4 @@
         return new 
FilterProcessor(getExpression().createPredicate(routeContext), childProcessor);
     }
 
-    @Override
-    protected void configureChild(ProcessorDefinition output) {
-        super.configureChild(output);
-        if (isInheritErrorHandler()) {
-            output.setErrorHandlerBuilder(getErrorHandlerBuilder());
-        }
-    }
 }

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/LoadBalanceDefinition.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/model/LoadBalanceDefinition.java?rev=757415&r1=757414&r2=757415&view=diff
==============================================================================
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/LoadBalanceDefinition.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/LoadBalanceDefinition.java
 Mon Mar 23 15:41:30 2009
@@ -88,15 +88,6 @@
         }
     }
 
-
-    @Override
-    protected void configureChild(ProcessorDefinition output) {
-        super.configureChild(output);
-        if (isInheritErrorHandler()) {
-            output.setErrorHandlerBuilder(getErrorHandlerBuilder());
-        }
-    }
-
     public String getRef() {
         return ref;
     }

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/OutputDefinition.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/model/OutputDefinition.java?rev=757415&r1=757414&r2=757415&view=diff
==============================================================================
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/OutputDefinition.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/OutputDefinition.java
 Mon Mar 23 15:41:30 2009
@@ -53,12 +53,4 @@
         }
     }
 
-    @Override
-    protected void configureChild(ProcessorDefinition output) {
-        super.configureChild(output);
-        if (isInheritErrorHandler()) {
-            output.setErrorHandlerBuilder(getErrorHandlerBuilder());
-        }
-        // don't inherit interceptors by default
-    }
 }

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java?rev=757415&r1=757414&r2=757415&view=diff
==============================================================================
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java
 Mon Mar 23 15:41:30 2009
@@ -75,7 +75,6 @@
 public abstract class ProcessorDefinition<Type extends ProcessorDefinition> 
extends OptionalIdentifiedType<Type> implements Block {
     private static final transient Log LOG = 
LogFactory.getLog(ProcessorDefinition.class);
     private ErrorHandlerBuilder errorHandlerBuilder;
-    private Boolean inheritErrorHandlerFlag;
     private NodeFactory nodeFactory;
     private LinkedList<Block> blocks = new LinkedList<Block>();
     private ProcessorDefinition parent;
@@ -1353,19 +1352,6 @@
         return (Type) this;
     }
 
-    /**
-     * Configures whether or not the <a 
href="http://camel.apache.org/error-handler.html";>error handler</a>
-     * is inherited by every processing node (or just the top most one)
-     *
-     * @param condition the flag as to whether error handlers should be 
inherited or not
-     * @return the current builder
-     */
-    @SuppressWarnings("unchecked")
-    public Type inheritErrorHandler(boolean condition) {
-        setInheritErrorHandlerFlag(condition);
-        return (Type) this;
-    }
-
     // Transformers
     // 
-------------------------------------------------------------------------
 
@@ -1931,27 +1917,6 @@
     }
 
     @XmlTransient
-    public boolean isInheritErrorHandler() {
-        return isInheritErrorHandler(getInheritErrorHandlerFlag());
-    }
-
-    /**
-     * Lets default the inherit value to be true if there is none specified
-     */
-    public static boolean isInheritErrorHandler(Boolean value) {
-        return value == null || value;
-    }
-
-    @XmlAttribute(name = "inheritErrorHandler", required = false)
-    public Boolean getInheritErrorHandlerFlag() {
-        return inheritErrorHandlerFlag;
-    }
-
-    public void setInheritErrorHandlerFlag(Boolean inheritErrorHandlerFlag) {
-        this.inheritErrorHandlerFlag = inheritErrorHandlerFlag;
-    }
-
-    @XmlTransient
     public NodeFactory getNodeFactory() {
         if (nodeFactory == null) {
             nodeFactory = new NodeFactory();
@@ -2047,15 +2012,13 @@
         if (errorHandlerRef != null) {
             return new ErrorHandlerBuilderRef(errorHandlerRef);
         }
-        if (isInheritErrorHandler()) {
-            return new DeadLetterChannelBuilder();
-        } else {
-            return new NoErrorHandlerBuilder();
-        }
+        // return a new default one
+        return new DeadLetterChannelBuilder();
     }
 
     protected void configureChild(ProcessorDefinition output) {
         output.setNodeFactory(getNodeFactory());
+        output.setErrorHandlerBuilder(getErrorHandlerBuilder());
     }
 
     @SuppressWarnings("unchecked")

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/RouteDefinition.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/model/RouteDefinition.java?rev=757415&r1=757414&r2=757415&view=diff
==============================================================================
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/RouteDefinition.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/RouteDefinition.java
 Mon Mar 23 15:41:30 2009
@@ -39,8 +39,6 @@
 import org.apache.camel.processor.interceptor.StreamCachingInterceptor;
 import org.apache.camel.spi.RouteContext;
 import org.apache.camel.util.CamelContextHelper;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
 
 /**
  * Represents an XML &lt;route/&gt; element
@@ -51,7 +49,6 @@
 @XmlType(propOrder = {"inputs", "outputs" })
 @XmlAccessorType(XmlAccessType.PROPERTY)
 public class RouteDefinition extends ProcessorDefinition<ProcessorDefinition> 
implements CamelContextAware {
-    private static final transient Log LOG = 
LogFactory.getLog(RouteDefinition.class);
     private List<AbstractInterceptorDefinition> interceptors = new 
ArrayList<AbstractInterceptorDefinition>();
     private List<FromDefinition> inputs = new ArrayList<FromDefinition>();
     private List<ProcessorDefinition> outputs = new 
ArrayList<ProcessorDefinition>();
@@ -78,7 +75,6 @@
     @Override
     public String getShortName() {
         return "route";
-
     }
 
     /**
@@ -322,10 +318,6 @@
     protected void configureChild(ProcessorDefinition output) {
         super.configureChild(output);
 
-        if (isInheritErrorHandler()) {
-            output.setErrorHandlerBuilder(getErrorHandlerBuilder());
-        }
-
         List<AbstractInterceptorDefinition> interceptors = getInterceptors();
         for (AbstractInterceptorDefinition interceptor : interceptors) {
             output.addInterceptor(interceptor);

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/RoutesDefinition.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/model/RoutesDefinition.java?rev=757415&r1=757414&r2=757415&view=diff
==============================================================================
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/RoutesDefinition.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/RoutesDefinition.java
 Mon Mar 23 15:41:30 2009
@@ -21,7 +21,6 @@
 
 import javax.xml.bind.annotation.XmlAccessType;
 import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlAttribute;
 import javax.xml.bind.annotation.XmlElementRef;
 import javax.xml.bind.annotation.XmlRootElement;
 import javax.xml.bind.annotation.XmlTransient;
@@ -40,9 +39,6 @@
 @XmlRootElement(name = "routes")
 @XmlAccessorType(XmlAccessType.FIELD)
 public class RoutesDefinition extends OptionalIdentifiedType<RoutesDefinition> 
implements RouteContainer {
-    // TODO: not sure how else to use an optional attribute in JAXB2
-    @XmlAttribute
-    private Boolean inheritErrorHandlerFlag;
     @XmlElementRef
     private List<RouteDefinition> routes = new ArrayList<RouteDefinition>();
     @XmlTransient
@@ -108,18 +104,6 @@
         this.camelContext = camelContext;
     }
 
-    public boolean isInheritErrorHandler() {
-        return 
ProcessorDefinition.isInheritErrorHandler(getInheritErrorHandlerFlag());
-    }
-
-    public Boolean getInheritErrorHandlerFlag() {
-        return inheritErrorHandlerFlag;
-    }
-
-    public void setInheritErrorHandlerFlag(Boolean inheritErrorHandlerFlag) {
-        this.inheritErrorHandlerFlag = inheritErrorHandlerFlag;
-    }
-
     public ErrorHandlerBuilder getErrorHandlerBuilder() {
         return errorHandlerBuilder;
     }
@@ -198,7 +182,6 @@
     public RouteDefinition route(RouteDefinition route) {
         // lets configure the route
         route.setCamelContext(getCamelContext());
-        route.setInheritErrorHandlerFlag(getInheritErrorHandlerFlag());
         List<AbstractInterceptorDefinition> list = getInterceptors();
         for (AbstractInterceptorDefinition interceptorType : list) {
             route.addInterceptor(interceptorType);
@@ -267,7 +250,7 @@
     protected RouteDefinition createRoute() {
         RouteDefinition route = new RouteDefinition();
         ErrorHandlerBuilder handler = getErrorHandlerBuilder();
-        if (isInheritErrorHandler() && handler != null) {
+        if (handler != null) {
             route.setErrorHandlerBuilderIfNull(handler);
         }
         return route;

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/ThreadDefinition.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/model/ThreadDefinition.java?rev=757415&r1=757414&r2=757415&view=diff
==============================================================================
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/ThreadDefinition.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/model/ThreadDefinition.java
 Mon Mar 23 15:41:30 2009
@@ -126,9 +126,7 @@
     @Override
     protected void configureChild(ProcessorDefinition output) {
         super.configureChild(output);
-        if (isInheritErrorHandler()) {
-            output.setErrorHandlerBuilder(getErrorHandlerBuilder());
-        }
+        output.setErrorHandlerBuilder(getErrorHandlerBuilder());
     }
 
     // Fluent methods

Modified: 
camel/trunk/camel-core/src/test/java/org/apache/camel/builder/ErrorHandlerTest.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/test/java/org/apache/camel/builder/ErrorHandlerTest.java?rev=757415&r1=757414&r2=757415&view=diff
==============================================================================
--- 
camel/trunk/camel-core/src/test/java/org/apache/camel/builder/ErrorHandlerTest.java
 (original)
+++ 
camel/trunk/camel-core/src/test/java/org/apache/camel/builder/ErrorHandlerTest.java
 Mon Mar 23 15:41:30 2009
@@ -184,8 +184,7 @@
         // START SNIPPET: e5
         RouteBuilder builder = new RouteBuilder() {
             public void configure() {
-
-                
from("seda:a").errorHandler(loggingErrorHandler("FOO.BAR")).filter(body().isInstanceOf(String.class)).inheritErrorHandler(false).to("seda:b");
+                
from("seda:a").errorHandler(loggingErrorHandler("FOO.BAR")).filter(body().isInstanceOf(String.class)).to("seda:b");
             }
         };
         // END SNIPPET: e5

Modified: 
camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/TransactedJmsRouteTest.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/TransactedJmsRouteTest.java?rev=757415&r1=757414&r2=757415&view=diff
==============================================================================
--- 
camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/TransactedJmsRouteTest.java
 (original)
+++ 
camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/TransactedJmsRouteTest.java
 Mon Mar 23 15:41:30 2009
@@ -61,9 +61,9 @@
         return new SpringRouteBuilder() {
             public void configure() {
 
-                Policy requried = new 
SpringTransactionPolicy(bean(TransactionTemplate.class, 
"PROPAGATION_REQUIRED"));
-                Policy notsupported = new 
SpringTransactionPolicy(bean(TransactionTemplate.class, 
"PROPAGATION_NOT_SUPPORTED"));
-                Policy requirenew = new 
SpringTransactionPolicy(bean(TransactionTemplate.class, 
"PROPAGATION_REQUIRES_NEW"));
+                SpringTransactionPolicy requried = new 
SpringTransactionPolicy(bean(TransactionTemplate.class, 
"PROPAGATION_REQUIRED"));
+                SpringTransactionPolicy notsupported = new 
SpringTransactionPolicy(bean(TransactionTemplate.class, 
"PROPAGATION_NOT_SUPPORTED"));
+                SpringTransactionPolicy requirenew = new 
SpringTransactionPolicy(bean(TransactionTemplate.class, 
"PROPAGATION_REQUIRES_NEW"));
 
                 Policy rollback = new Policy() {
                     public Processor wrap(Processor processor) {
@@ -101,9 +101,9 @@
                     }
                 };
 
-                // NOTE: ErrorHandler has to be disabled since it operates
-                // within the failed transaction.
-                inheritErrorHandler(false);
+                // setup transacted error handler
+                errorHandler(transactionErrorHandler(requried));
+
                 // Used to validate messages are sent to the target.
                 from("activemq:queue:mock.a").to("mock:a");
                 from("activemq:queue:mock.b").to("mock:b");
@@ -240,8 +240,7 @@
         assertIsSatisfied(mockEndpointA);
     }
 
-    //TODO should fix this test
-    public void xtestSenarioB() throws Exception {
+    public void testSenarioB() throws Exception {
         String expected = getName() + ": " + System.currentTimeMillis();
         mockEndpointA.expectedMessageCount(0);
         // May be more since spring seems to go into tight loop re-delivering.


Reply via email to