This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 0d2a4a821dbf632f0f268f4124c8bb96a8d27e4c
Author: Claus Ibsen <claus.ib...@gmail.com>
AuthorDate: Thu Oct 14 07:33:12 2021 +0200

    CAMEL-17079: Deprecate SimpleBuilder and migrate to not use it anymore.
---
 .../apache/camel/maven/packaging/EndpointDslMojo.java  | 18 ++++++++++++++----
 1 file changed, 14 insertions(+), 4 deletions(-)

diff --git 
a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointDslMojo.java
 
b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointDslMojo.java
index 911de40..ba7216f 100644
--- 
a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointDslMojo.java
+++ 
b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointDslMojo.java
@@ -725,12 +725,22 @@ public class EndpointDslMojo extends 
AbstractGeneratorMojo {
         
javaClass.addMethod().setDefault().setReturnType("org.apache.camel.Expression").setName("endpoints")
                 
.addParameter("org.apache.camel.builder.EndpointProducerBuilder", "endpoints", 
true)
                 .setBody("return new 
org.apache.camel.support.ExpressionAdapter() {",
-                        "    List<org.apache.camel.Expression> expressions = 
Stream.of(endpoints)",
-                        "        
.map(org.apache.camel.builder.EndpointProducerBuilder::expr)",
-                        "        .collect(Collectors.toList());", "", "    
@Override",
+                        "",
+                        "    private List<org.apache.camel.Expression> 
expressions = null;",
+                        "",
+                        "    @Override",
                         "    public Object evaluate(org.apache.camel.Exchange 
exchange) {",
                         "        return expressions.stream().map(e -> 
e.evaluate(exchange, Object.class)).collect(Collectors.toList());",
-                        "    }", "};");
+                        "    }",
+                        "",
+                        "    @Override",
+                        "    public void init(org.apache.camel.CamelContext 
context) {",
+                        "        super.init(context);",
+                        "        expressions = Stream.of(endpoints)",
+                        "                .map(epb -> epb.expr(context))",
+                        "                .collect(Collectors.toList());",
+                        "    }",
+                        "};");
 
         for (File factory : factories) {
             String factoryName = Strings.before(factory.getName(), ".");

Reply via email to