zbendhiba commented on code in PR #4677:
URL: https://github.com/apache/camel-quarkus/pull/4677#discussion_r1143535527


##########
extensions/jira/deployment/src/main/java/org/apache/camel/quarkus/component/jira/deployment/JiraProcessor.java:
##########
@@ -55,8 +54,121 @@ NativeImageResourceBuildItem nativeImageResources() {
     }
 
     @BuildStep
-    ReflectiveClassBuildItem registerForReflection() {
-        // Required by 
org.apache.camel.component.jira.consumer.WatchUpdatesConsumer
-        return new ReflectiveClassBuildItem(true, false, 
Issue.class.getName());
+    List<ReflectiveClassBuildItem> registerReflectiveClasses() {
+        List<ReflectiveClassBuildItem> items = new ArrayList<>();
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.Attachment.class));
+        items.add(
+                new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.AuditAssociatedItem.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.AuditChangedValue.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.AuditRecord.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.AuditRecordInput.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.AuditRecordsData.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.Authentication.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.BasicComponent.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.BasicIssue.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.BasicPriority.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.BasicProject.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.BasicProjectRole.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.BasicUser.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.BasicVotes.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.BasicWatchers.class));
+        items.add(new ReflectiveClassBuildItem(true, false,
+                
com.atlassian.jira.rest.client.api.domain.BulkOperationErrorResult.class));
+        items.add(
+                new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.BulkOperationResult.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.ChangelogGroup.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.ChangelogItem.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.CimFieldInfo.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.CimIssueType.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.CimProject.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.Comment.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.Component.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.CustomFieldOption.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.EntityHelper.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.Field.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.FieldSchema.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.FieldType.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.Filter.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.Group.class));
+        items.add(new ReflectiveClassBuildItem(true, false,
+                
com.atlassian.jira.rest.client.api.domain.input.AttachmentInput.class));
+        items.add(new ReflectiveClassBuildItem(true, false,
+                
com.atlassian.jira.rest.client.api.domain.input.AuditRecordBuilder.class));
+        items.add(new ReflectiveClassBuildItem(true, false,
+                
com.atlassian.jira.rest.client.api.domain.input.AuditRecordSearchInput.class));
+        items.add(new ReflectiveClassBuildItem(true, false,
+                
com.atlassian.jira.rest.client.api.domain.input.BaseValueTransformer.class));
+        items.add(new ReflectiveClassBuildItem(true, false,
+                
com.atlassian.jira.rest.client.api.domain.input.CannotTransformValueException.class));
+        items.add(new ReflectiveClassBuildItem(true, false,
+                
com.atlassian.jira.rest.client.api.domain.input.ComplexIssueInputFieldValue.class));
+        items.add(new ReflectiveClassBuildItem(true, false,
+                
com.atlassian.jira.rest.client.api.domain.input.ComponentInput.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.input.FieldInput.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.input.IssueInput.class));
+        items.add(new ReflectiveClassBuildItem(true, false,
+                
com.atlassian.jira.rest.client.api.domain.input.LinkIssuesInput.class));
+        items.add(new ReflectiveClassBuildItem(true, false,
+                
com.atlassian.jira.rest.client.api.domain.input.MyPermissionsInput.class));
+        items.add(
+                new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.input.PropertyInput.class));
+        items.add(new ReflectiveClassBuildItem(true, false,
+                
com.atlassian.jira.rest.client.api.domain.input.TransitionInput.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.input.UserInput.class));
+        items.add(new ReflectiveClassBuildItem(true, false,
+                
com.atlassian.jira.rest.client.api.domain.input.ValueTransformer.class));
+        items.add(new ReflectiveClassBuildItem(true, false,
+                
com.atlassian.jira.rest.client.api.domain.input.ValueTransformerManager.class));
+        items.add(new ReflectiveClassBuildItem(true, false,
+                
com.atlassian.jira.rest.client.api.domain.input.VersionInputBuilder.class));
+        items.add(
+                new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.input.VersionInput.class));
+        items.add(new ReflectiveClassBuildItem(true, false,
+                
com.atlassian.jira.rest.client.api.domain.input.VersionPosition.class));
+        items.add(
+                new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.input.WorklogInput.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.Issue.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.IssueField.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.IssueFieldId.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.IssueLink.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.IssuelinksType.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.IssueLinkType.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.IssueType.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.LoginInfo.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.Operation.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.OperationGroup.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.OperationHeader.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.OperationLink.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.Operations.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.OperationVisitor.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.Page.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.Permission.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.Permissions.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.Priority.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.Project.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.ProjectRole.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.Resolution.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.RoleActor.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.SearchResult.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.SecurityLevel.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.ServerInfo.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.Session.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.SessionCookie.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.StandardOperation.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.Status.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.Subtask.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.TimeTracking.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.Transition.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.User.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.Version.class));
+        items.add(new ReflectiveClassBuildItem(true, false,
+                
com.atlassian.jira.rest.client.api.domain.VersionRelatedIssuesCount.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.Visibility.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.Votes.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.Watchers.class));
+        items.add(new ReflectiveClassBuildItem(true, false, 
com.atlassian.jira.rest.client.api.domain.Worklog.class));

Review Comment:
   Maybe we can try to catch all those classe in this package, instead of 
naming each of them? 



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to