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

github-bot pushed a commit to branch camel-main
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git

commit 23ea207ed5275bf34ae7a04a3cd31e07e3d629a7
Author: JiriOndrusek <[email protected]>
AuthorDate: Wed Jun 12 13:44:35 2024 +0200

    Fixed azure-queue
---
 .../storage/queue/deployment/AzureStorageQueueProcessor.java | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git 
a/extensions/azure-storage-queue/deployment/src/main/java/org/apache/camel/quarkus/component/azure/storage/queue/deployment/AzureStorageQueueProcessor.java
 
b/extensions/azure-storage-queue/deployment/src/main/java/org/apache/camel/quarkus/component/azure/storage/queue/deployment/AzureStorageQueueProcessor.java
index 8d0df10777..9f73e984fa 100644
--- 
a/extensions/azure-storage-queue/deployment/src/main/java/org/apache/camel/quarkus/component/azure/storage/queue/deployment/AzureStorageQueueProcessor.java
+++ 
b/extensions/azure-storage-queue/deployment/src/main/java/org/apache/camel/quarkus/component/azure/storage/queue/deployment/AzureStorageQueueProcessor.java
@@ -16,6 +16,7 @@
  */
 package org.apache.camel.quarkus.component.azure.storage.queue.deployment;
 
+import com.azure.xml.XmlSerializable;
 import io.quarkus.deployment.annotations.BuildProducer;
 import io.quarkus.deployment.annotations.BuildStep;
 import io.quarkus.deployment.builditem.CombinedIndexBuildItem;
@@ -31,6 +32,7 @@ class AzureStorageQueueProcessor {
 
     private static final Logger LOG = 
Logger.getLogger(AzureStorageQueueProcessor.class);
     private static final String FEATURE = "camel-azure-storage-queue";
+    private static final DotName XML_SERIALIZABLE_NAME = 
DotName.createSimple(XmlSerializable.class.getName());
 
     @BuildStep
     FeatureBuildItem feature() {
@@ -55,8 +57,16 @@ class AzureStorageQueueProcessor {
                         || n.startsWith("com.azure.storage.queue.models."))
                 .sorted()
                 .toArray(String[]::new);
-        
reflectiveClasses.produce(ReflectiveClassBuildItem.builder(modelClasses).fields().build());
+        
reflectiveClasses.produce(ReflectiveClassBuildItem.builder(modelClasses).fields().serialization().build());
 
+        final String[] knownSerializableImpls = combinedIndex.getIndex()
+                .getAllKnownImplementors(XML_SERIALIZABLE_NAME)
+                .stream()
+                .map(ClassInfo::name)
+                .map(DotName::toString)
+                .sorted()
+                .toArray(String[]::new);
+        
reflectiveClasses.produce(ReflectiveClassBuildItem.builder(knownSerializableImpls).methods().build());
     }
 
     @BuildStep

Reply via email to