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 4bf7fda13e757d23b96ca94e4b91f6617ba42f40
Author: Claus Ibsen <claus.ib...@gmail.com>
AuthorDate: Tue Aug 13 22:45:39 2019 +0200

    CAMEL-13863: camel3 - Optimize XmlConverterLoader and other loaders as 
synchronization is not needed as the loader is invoked during bootstrapping.
---
 .../src/main/java/org/apache/camel/support/SimpleTypeConverter.java | 1 +
 .../org/apache/camel/tools/apt/AbstractTypeConverterGenerator.java  | 6 +-----
 2 files changed, 2 insertions(+), 5 deletions(-)

diff --git 
a/core/camel-support/src/main/java/org/apache/camel/support/SimpleTypeConverter.java
 
b/core/camel-support/src/main/java/org/apache/camel/support/SimpleTypeConverter.java
index b529573..4d60c86 100644
--- 
a/core/camel-support/src/main/java/org/apache/camel/support/SimpleTypeConverter.java
+++ 
b/core/camel-support/src/main/java/org/apache/camel/support/SimpleTypeConverter.java
@@ -29,6 +29,7 @@ import org.apache.camel.TypeConverter;
  */
 public class SimpleTypeConverter implements TypeConverter {
 
+    @FunctionalInterface
     public interface ConversionMethod {
         Object doConvert(Class<?> type, Exchange exchange, Object value) 
throws Exception;
     }
diff --git 
a/tooling/apt/src/main/java/org/apache/camel/tools/apt/AbstractTypeConverterGenerator.java
 
b/tooling/apt/src/main/java/org/apache/camel/tools/apt/AbstractTypeConverterGenerator.java
index 577cc6f..f24e39c 100644
--- 
a/tooling/apt/src/main/java/org/apache/camel/tools/apt/AbstractTypeConverterGenerator.java
+++ 
b/tooling/apt/src/main/java/org/apache/camel/tools/apt/AbstractTypeConverterGenerator.java
@@ -296,11 +296,7 @@ public abstract class AbstractTypeConverterGenerator 
extends AbstractCamelAnnota
                 writer.append("    private volatile ").append(f).append(" 
").append(v).append(";\n");
                 writer.append("    private ").append(f).append(" 
get").append(s).append("() {\n");
                 writer.append("        if (").append(v).append(" == null) 
{\n");
-                writer.append("            synchronized (this) {\n");
-                writer.append("                if (").append(v).append(" == 
null) {\n");
-                writer.append("                    ").append(v).append(" = new 
").append(f).append("();\n");
-                writer.append("                }\n");
-                writer.append("            }\n");
+                writer.append("            ").append(v).append(" = new 
").append(f).append("();\n");
                 writer.append("        }\n");
                 writer.append("        return ").append(v).append(";\n");
                 writer.append("    }\n");

Reply via email to