You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2021/02/06 12:04:56 UTC

[camel] 03/18: CAMEL-16102: Source code generate @InvokeOnHeader for reflection free

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

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

commit 1229f2371b2ec3fd19a717d7e7fa5cc561779e3d
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Thu Feb 4 13:30:28 2021 +0100

    CAMEL-16102: Source code generate @InvokeOnHeader for reflection free
---
 .../apache/camel/maven/packaging/GenerateInvokeOnHeaderMojo.java   | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/GenerateInvokeOnHeaderMojo.java b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/GenerateInvokeOnHeaderMojo.java
index 5f8baef..b0143ae 100644
--- a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/GenerateInvokeOnHeaderMojo.java
+++ b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/GenerateInvokeOnHeaderMojo.java
@@ -114,13 +114,10 @@ public class GenerateInvokeOnHeaderMojo extends AbstractGeneratorMojo {
         Map<String, Set<InvokeOnHeaderModel>> classes = new HashMap<>();
         List<AnnotationInstance> annotations = index.getAnnotations(HEADER_ANNOTATION);
         annotations.forEach(a -> {
-            String currentClass = a.target().asClass().name().toString();
+            String currentClass = a.target().asMethod().declaringClass().name().toString();
             String value = a.value().asString();
             String methodName = a.target().asMethod().name();
-            Set<InvokeOnHeaderModel> set = classes.get(currentClass);
-            if (set == null) {
-                set = new HashSet<>();
-            }
+            Set<InvokeOnHeaderModel> set = classes.computeIfAbsent(currentClass, k -> new HashSet<>());
             InvokeOnHeaderModel model = new InvokeOnHeaderModel();
             model.setKey(value);
             model.setMethodName(methodName);