Search in sources :

Example 26 with BodyInAggregatingStrategy

use of org.apache.camel.processor.BodyInAggregatingStrategy in project camel by apache.

the class AggregateUnknownExecutorServiceRefTest method testAggregateUnknownExecutorServiceRef.

public void testAggregateUnknownExecutorServiceRef() throws Exception {
    try {
        context.addRoutes(new RouteBuilder() {

            @Override
            public void configure() throws Exception {
                from("direct:start").aggregate(header("id"), new BodyInAggregatingStrategy()).completionSize(3).executorServiceRef("myUnknownProfile").to("log:foo").to("mock:aggregated");
            }
        });
        context.start();
        fail("Should have thrown exception");
    } catch (FailedToCreateRouteException e) {
        IllegalArgumentException cause = assertIsInstanceOf(IllegalArgumentException.class, e.getCause());
        assertTrue(cause.getMessage().contains("myUnknownProfile"));
    }
}
Also used : FailedToCreateRouteException(org.apache.camel.FailedToCreateRouteException) RouteBuilder(org.apache.camel.builder.RouteBuilder) BodyInAggregatingStrategy(org.apache.camel.processor.BodyInAggregatingStrategy) FailedToCreateRouteException(org.apache.camel.FailedToCreateRouteException)

Example 27 with BodyInAggregatingStrategy

use of org.apache.camel.processor.BodyInAggregatingStrategy in project camel by apache.

the class DistributedOptimisticLockFailingTest method createRouteBuilder.

@Override
protected RouteBuilder createRouteBuilder() throws Exception {
    return new RouteBuilder() {

        @Override
        public void configure() throws Exception {
            from("direct:fails").aggregate(header("id"), new BodyInAggregatingStrategy()).aggregationRepository(new AlwaysFailingRepository()).optimisticLocking().optimisticLockRetryPolicy(new OptimisticLockRetryPolicy().maximumRetries(5)).completionSize(2).to("mock:result");
            from("direct:everysecondone").aggregate(header("id"), new BodyInAggregatingStrategy()).aggregationRepository(sharedRepository).optimisticLocking().completionSize(8).to("mock:result");
        }
    };
}
Also used : RouteBuilder(org.apache.camel.builder.RouteBuilder) BodyInAggregatingStrategy(org.apache.camel.processor.BodyInAggregatingStrategy) OptimisticLockRetryPolicy(org.apache.camel.processor.aggregate.OptimisticLockRetryPolicy)

Example 28 with BodyInAggregatingStrategy

use of org.apache.camel.processor.BodyInAggregatingStrategy in project camel by apache.

the class AggregateEagerCheckCompletionTest method testAggregateNotEagerCheckCompletion.

public void testAggregateNotEagerCheckCompletion() throws Exception {
    context.addRoutes(new RouteBuilder() {

        @Override
        public void configure() throws Exception {
            from("direct:start").aggregate(header("id"), new BodyInAggregatingStrategy()).completionPredicate(body().isEqualTo("A+B+END")).to("mock:result");
        }
    });
    context.start();
    getMockEndpoint("mock:result").expectedBodiesReceived("A+B+END");
    template.sendBodyAndHeader("direct:start", "A", "id", 1);
    template.sendBodyAndHeader("direct:start", "B", "id", 1);
    template.sendBodyAndHeader("direct:start", "END", "id", 1);
    assertMockEndpointsSatisfied();
}
Also used : RouteBuilder(org.apache.camel.builder.RouteBuilder) BodyInAggregatingStrategy(org.apache.camel.processor.BodyInAggregatingStrategy)

Aggregations

BodyInAggregatingStrategy (org.apache.camel.processor.BodyInAggregatingStrategy)28 Exchange (org.apache.camel.Exchange)14 Expression (org.apache.camel.Expression)14 Processor (org.apache.camel.Processor)14 RouteBuilder (org.apache.camel.builder.RouteBuilder)14 MockEndpoint (org.apache.camel.component.mock.MockEndpoint)14 DefaultExchange (org.apache.camel.impl.DefaultExchange)14 SendProcessor (org.apache.camel.processor.SendProcessor)14 AggregateProcessor (org.apache.camel.processor.aggregate.AggregateProcessor)14 AggregationStrategy (org.apache.camel.processor.aggregate.AggregationStrategy)14 Predicate (org.apache.camel.Predicate)5 CamelExecutionException (org.apache.camel.CamelExecutionException)4 CamelExchangeException (org.apache.camel.CamelExchangeException)2 ClosedCorrelationKeyException (org.apache.camel.processor.aggregate.ClosedCorrelationKeyException)2 FailedToCreateRouteException (org.apache.camel.FailedToCreateRouteException)1 OptimisticLockRetryPolicy (org.apache.camel.processor.aggregate.OptimisticLockRetryPolicy)1 ThreadPoolProfile (org.apache.camel.spi.ThreadPoolProfile)1