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

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

commit b4a21287871762d5af3f7bc5020c0e7f98b69ec3
Author: Claus Ibsen <claus.ib...@gmail.com>
AuthorDate: Sat Aug 24 09:11:34 2019 +0200

    CAMEL-13870: Better API and make endpoint configurer static
---
 .../tools/apt/EndpointPropertyConfigurerGenerator.java      | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)

diff --git 
a/tooling/apt/src/main/java/org/apache/camel/tools/apt/EndpointPropertyConfigurerGenerator.java
 
b/tooling/apt/src/main/java/org/apache/camel/tools/apt/EndpointPropertyConfigurerGenerator.java
index ecf7777..abb81ee 100644
--- 
a/tooling/apt/src/main/java/org/apache/camel/tools/apt/EndpointPropertyConfigurerGenerator.java
+++ 
b/tooling/apt/src/main/java/org/apache/camel/tools/apt/EndpointPropertyConfigurerGenerator.java
@@ -91,22 +91,21 @@ public final class EndpointPropertyConfigurerGenerator {
             w.write(" */\n");
             w.write("public class " + cn + " extends PropertyConfigurerSupport 
implements TriPropertyConfigurer {\n");
             w.write("\n");
-            w.write("    private final Map<String, TriConsumer<CamelContext, 
Object, Object>> writes = new HashMap<>(" + size + ");\n");
-            w.write("\n");
-
-            w.write("    public " + cn + "() {\n");
+            w.write("    private static final Map<String, 
TriConsumer<CamelContext, Object, Object>> WRITES;\n");
+            w.write("    static {\n");
+            w.write("        Map<String, TriConsumer<CamelContext, Object, 
Object>> map = new HashMap<>(" + size + ");\n");
             for (EndpointOption option : options) {
                 String getOrSet = option.getName();
                 getOrSet = Character.toUpperCase(getOrSet.charAt(0)) + 
getOrSet.substring(1);
                 String setterLambda = setterLambda(en, getOrSet, 
option.getType(), option.getConfigurationField());
-                w.write("        writes.put(\"" + option.getName() + "\", 
(camelContext, endpoint, value) -> " + setterLambda + ");\n");
+                w.write("        map.put(\"" + option.getName() + "\", 
(camelContext, endpoint, value) -> " + setterLambda + ");\n");
             }
-
+            w.write("        WRITES = map;\n");
             w.write("    }\n");
             w.write("\n");
             w.write("    @Override\n");
             w.write("    public Map<String, TriConsumer<CamelContext, Object, 
Object>> getWriteOptions(CamelContext camelContext) {\n");
-            w.write("        return writes;\n");
+            w.write("        return WRITES;\n");
             w.write("    }\n");
             w.write("\n");
             w.write("}\n");

Reply via email to