Yes, you are right, I will commit a quick fix for it shortly.

--  
Willem Jiang

Red Hat, Inc.
FuseSource is now part of Red Hat
Web: http://www.fusesource.com | http://www.redhat.com
Blog: http://willemjiang.blogspot.com (http://willemjiang.blogspot.com/) 
(English)
          http://jnn.iteye.com (http://jnn.javaeye.com/) (Chinese)
Twitter: willemjiang  
Weibo: 姜宁willem





On Thursday, August 8, 2013 at 3:42 PM, Claus Ibsen wrote:

> Hi
>  
> Maybe this caused an unit test to fail in camel-spring now?
>  
> Tests in error:
> SpringWireTapTest>TestSupport.runBare:58->WireTapTest.testWireTapId:48
> » CamelExecution
>  
> Tests run: 972, Failures: 0, Errors: 1, Skipped: 1
>  
> On Wed, Aug 7, 2013 at 9:34 AM, <ningji...@apache.org 
> (mailto:ningji...@apache.org) (mailto:ningji...@apache.org)> wrote:
> > Updated Branches:
> > refs/heads/master 0d17ff78e -> ed7e7c9fe
> >  
> >  
> > CAMEL-6610 fix the IndexOutOfBoundsException when customized id of wireTap 
> > component
> >  
> >  
> > Project: http://git-wip-us.apache.org/repos/asf/camel/repo
> > Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/ed7e7c9f
> > Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/ed7e7c9f
> > Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/ed7e7c9f
> >  
> > Branch: refs/heads/master
> > Commit: ed7e7c9feeb835fb1071b90276b1c009fed3b855
> > Parents: 0d17ff7
> > Author: Willem Jiang <ningji...@apache.org (mailto:ningji...@apache.org) 
> > (mailto:ningji...@apache.org)>
> > Authored: Wed Aug 7 15:04:15 2013 +0800
> > Committer: Willem Jiang <ningji...@apache.org (mailto:ningji...@apache.org) 
> > (mailto:ningji...@apache.org)>
> > Committed: Wed Aug 7 15:04:53 2013 +0800
> >  
> > ----------------------------------------------------------------------
> > .../org/apache/camel/model/ProcessorDefinition.java | 8 +++++++-
> > .../java/org/apache/camel/processor/WireTapTest.java | 13 +++++++++++++
> > 2 files changed, 20 insertions(+), 1 deletion(-)
> > ----------------------------------------------------------------------
> >  
> >  
> > http://git-wip-us.apache.org/repos/asf/camel/blob/ed7e7c9f/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java
> > ----------------------------------------------------------------------
> > diff --git 
> > a/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java 
> > b/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java
> > index ff16150..9b93a1a 100644
> > --- 
> > a/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java
> > +++ 
> > b/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java
> > @@ -1015,6 +1015,7 @@ public abstract class ProcessorDefinition<Type 
> > extends ProcessorDefinition<Type>
> > // set id on this
> > setId(id);
> > } else {
> > +
> > // set it on last output as this is what the user means to do
> > // for Block(s) with non empty getOutputs() the id probably refers
> > // to the last definition in the current Block
> > @@ -1027,7 +1028,12 @@ public abstract class ProcessorDefinition<Type 
> > extends ProcessorDefinition<Type>
> > }
> > }
> > }
> > - outputs.get(outputs.size() - 1).setId(id);
> > + if (!getOutputs().isEmpty()) {
> > + outputs.get(outputs.size() - 1).setId(id);
> > + } else {
> > + // the output could be empty
> > + setId(id);
> > + }
> > }
> >  
> > return (Type) this;
> >  
> > http://git-wip-us.apache.org/repos/asf/camel/blob/ed7e7c9f/camel-core/src/test/java/org/apache/camel/processor/WireTapTest.java
> > ----------------------------------------------------------------------
> > diff --git 
> > a/camel-core/src/test/java/org/apache/camel/processor/WireTapTest.java 
> > b/camel-core/src/test/java/org/apache/camel/processor/WireTapTest.java
> > index 266cd49..3c45d54 100644
> > --- a/camel-core/src/test/java/org/apache/camel/processor/WireTapTest.java
> > +++ b/camel-core/src/test/java/org/apache/camel/processor/WireTapTest.java
> > @@ -38,6 +38,16 @@ public class WireTapTest extends ContextTestSupport {
> >  
> > assertMockEndpointsSatisfied();
> > }
> > +
> > + public void testWireTapId() throws Exception {
> > + MockEndpoint a = getMockEndpoint("mock:a");
> > + MockEndpoint b = getMockEndpoint("mock:b");
> > + a.expectedBodiesReceived("Hello");
> > + b.expectedBodiesReceived("Hello");
> > +
> > + template.sendBody("direct:test", "Hello");
> > + assertMockEndpointsSatisfied();
> > + }
> >  
> > @Override
> > protected void setUp() throws Exception {
> > @@ -59,6 +69,9 @@ public class WireTapTest extends ContextTestSupport {
> > from("direct:tap")
> > .delay(1000).setBody().constant("Tapped")
> > .to("mock:result", "mock:tap");
> > +
> > + from("direct:test").wireTap("direct:a").id("wiretap_1").to("mock:a");
> > + from("direct:a").to("mock:b");
> > }
> > };
> > }
> >  
>  
>  
>  
>  
>  
> --  
> Claus Ibsen
> -----------------
> Red Hat, Inc.
> Email: cib...@redhat.com (mailto:cib...@redhat.com) (mailto:cib...@redhat.com)
> Twitter: davsclaus
> Blog: http://davsclaus.com
> Author of Camel in Action: http://www.manning.com/ibsen
>  



Reply via email to