private void startCamel()

in aggregate-dist/src/main/java/org/apache/camel/example/Application.java [107:136]


    private void startCamel() {
        try {
            Main camel = new Main();
            camel.configure().addRoutesBuilder(new RouteBuilder() {
                @Override
                public void configure() {
                    from("timer:foo?repeatCount=1&period=1")
                            .setExchangePattern(ExchangePattern.InOnly)
                            .bean(new MyProducerBean());

                    from("direct:aggregator")
                            .filter(body().isNotNull())
                            .aggregate().header(CID_HEADER)
                            .aggregationStrategy(Application.this::aggregationStrategy)
                            .completionPredicate(Application.this::completionPredicate)
                            .aggregationRepository(getAggregationRepository())
                            .optimisticLocking()
                            .log(LoggingLevel.INFO, "Result: ${body}");
                }
            });

            camel.start();
            LOG.debug("Camel started");
            latch.await();
            camel.stop();
            LOG.debug("Camel stopped");
        } catch (Exception e) {
            LOG.error("Failed to start Camel: {}", e.getMessage());
        }
    }