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

acosentino pushed a commit to branch CAMEL-22247
in repository https://gitbox.apache.org/repos/asf/camel.git

commit b661c55275eb532dd87a8e1d6cbd215bcb420e68
Author: Andrea Cosentino <[email protected]>
AuthorDate: Wed Jul 16 19:13:55 2025 +0200

    CAMEL-22247 - Camel Google Components: Make the scopes parameter a string 
in all the components - Google Drive
    
    Signed-off-by: Andrea Cosentino <[email protected]>
---
 .../camel/catalog/components/google-drive.json     |  4 +-
 .../DriveAboutEndpointConfigurationConfigurer.java | 14 +---
 ...riveChangesEndpointConfigurationConfigurer.java | 14 +---
 ...iveChannelsEndpointConfigurationConfigurer.java | 14 +---
 ...iveCommentsEndpointConfigurationConfigurer.java | 14 +---
 ...DriveDrivesEndpointConfigurationConfigurer.java | 14 +---
 .../DriveFilesEndpointConfigurationConfigurer.java | 14 +---
 ...PermissionsEndpointConfigurationConfigurer.java | 14 +---
 ...riveRepliesEndpointConfigurationConfigurer.java | 14 +---
 ...veRevisionsEndpointConfigurationConfigurer.java | 14 +---
 ...eTeamdrivesEndpointConfigurationConfigurer.java | 14 +---
 .../drive/GoogleDriveComponentConfigurer.java      | 14 +---
 .../drive/GoogleDriveConfigurationConfigurer.java  | 14 +---
 .../drive/GoogleDriveEndpointConfigurer.java       |  7 +-
 .../camel/component/google/drive/google-drive.json |  4 +-
 .../google/drive/GoogleDriveComponent.java         |  4 +-
 .../google/drive/GoogleDriveConfiguration.java     | 22 +++++--
 .../dsl/GoogleDriveComponentBuilderFactory.java    | 12 ++--
 .../dsl/GoogleDriveEndpointBuilderFactory.java     | 75 ++++------------------
 19 files changed, 80 insertions(+), 216 deletions(-)

diff --git 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-drive.json
 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-drive.json
index 4b1ab437f2a..e7782e17c45 100644
--- 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-drive.json
+++ 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-drive.json
@@ -29,7 +29,7 @@
     "clientId": { "index": 1, "kind": "property", "displayName": "Client Id", 
"group": "common", "label": "", "required": false, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "autowired": false, 
"secret": false, "configurationClass": 
"org.apache.camel.component.google.drive.GoogleDriveConfiguration", 
"configurationField": "configuration", "description": "Client ID of the drive 
application" },
     "configuration": { "index": 2, "kind": "property", "displayName": 
"Configuration", "group": "common", "label": "", "required": false, "type": 
"object", "javaType": 
"org.apache.camel.component.google.drive.GoogleDriveConfiguration", 
"deprecated": false, "autowired": false, "secret": false, "description": "To 
use the shared configuration" },
     "delegate": { "index": 3, "kind": "property", "displayName": "Delegate", 
"group": "common", "label": "", "required": false, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "autowired": false, 
"secret": false, "configurationClass": 
"org.apache.camel.component.google.drive.GoogleDriveConfiguration", 
"configurationField": "configuration", "description": "Delegate for wide-domain 
service account" },
-    "scopes": { "index": 4, "kind": "property", "displayName": "Scopes", 
"group": "common", "label": "", "required": false, "type": "array", "javaType": 
"java.util.List<java.lang.String>", "deprecated": false, "autowired": false, 
"secret": false, "configurationClass": 
"org.apache.camel.component.google.drive.GoogleDriveConfiguration", 
"configurationField": "configuration", "description": "Specifies the level of 
permissions you want a drive application to have to a user account. See https 
[...]
+    "scopes": { "index": 4, "kind": "property", "displayName": "Scopes", 
"group": "common", "label": "", "required": false, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "autowired": false, 
"secret": false, "configurationClass": 
"org.apache.camel.component.google.drive.GoogleDriveConfiguration", 
"configurationField": "configuration", "description": "Specifies the level of 
permissions you want a calendar application to have to a user account. See 
https:\/\/develop [...]
     "bridgeErrorHandler": { "index": 5, "kind": "property", "displayName": 
"Bridge Error Handler", "group": "consumer", "label": "consumer", "required": 
false, "type": "boolean", "javaType": "boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"Allows for bridging the consumer to the Camel routing Error Handler, which 
mean any exceptions (if possible) occurred while the Camel consumer is trying 
to pickup incoming messages, or the like [...]
     "lazyStartProducer": { "index": 6, "kind": "property", "displayName": 
"Lazy Start Producer", "group": "producer", "label": "producer", "required": 
false, "type": "boolean", "javaType": "boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"Whether the producer should be started lazy (on the first message). By 
starting lazy you can use this to allow CamelContext and routes to startup in 
situations where a producer may otherwise fail [...]
     "autowiredEnabled": { "index": 7, "kind": "property", "displayName": 
"Autowired Enabled", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": true, "description": 
"Whether autowiring is enabled. This is used for automatic autowiring options 
(the option must be marked as autowired) by looking up in the registry to find 
if there is a single instance of matching t [...]
@@ -47,7 +47,7 @@
     "clientId": { "index": 4, "kind": "parameter", "displayName": "Client Id", 
"group": "common", "label": "", "required": false, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "autowired": false, 
"secret": false, "configurationClass": 
"org.apache.camel.component.google.drive.GoogleDriveConfiguration", 
"configurationField": "configuration", "description": "Client ID of the drive 
application" },
     "delegate": { "index": 5, "kind": "parameter", "displayName": "Delegate", 
"group": "common", "label": "", "required": false, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "autowired": false, 
"secret": false, "configurationClass": 
"org.apache.camel.component.google.drive.GoogleDriveConfiguration", 
"configurationField": "configuration", "description": "Delegate for wide-domain 
service account" },
     "inBody": { "index": 6, "kind": "parameter", "displayName": "In Body", 
"group": "common", "label": "", "required": false, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "autowired": false, 
"secret": false, "description": "Sets the name of a parameter to be passed in 
the exchange In Body" },
-    "scopes": { "index": 7, "kind": "parameter", "displayName": "Scopes", 
"group": "common", "label": "", "required": false, "type": "array", "javaType": 
"java.util.List<java.lang.String>", "deprecated": false, "autowired": false, 
"secret": false, "configurationClass": 
"org.apache.camel.component.google.drive.GoogleDriveConfiguration", 
"configurationField": "configuration", "description": "Specifies the level of 
permissions you want a drive application to have to a user account. See http 
[...]
+    "scopes": { "index": 7, "kind": "parameter", "displayName": "Scopes", 
"group": "common", "label": "", "required": false, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "autowired": false, 
"secret": false, "configurationClass": 
"org.apache.camel.component.google.drive.GoogleDriveConfiguration", 
"configurationField": "configuration", "description": "Specifies the level of 
permissions you want a calendar application to have to a user account. See 
https:\/\/develo [...]
     "sendEmptyMessageWhenIdle": { "index": 8, "kind": "parameter", 
"displayName": "Send Empty Message When Idle", "group": "consumer", "label": 
"consumer", "required": false, "type": "boolean", "javaType": "boolean", 
"deprecated": false, "autowired": false, "secret": false, "defaultValue": 
false, "description": "If the polling consumer did not poll any files, you can 
enable this option to send an empty message (no body) instead." },
     "bridgeErrorHandler": { "index": 9, "kind": "parameter", "displayName": 
"Bridge Error Handler", "group": "consumer (advanced)", "label": 
"consumer,advanced", "required": false, "type": "boolean", "javaType": 
"boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": false, "description": "Allows for bridging the consumer to the 
Camel routing Error Handler, which mean any exceptions (if possible) occurred 
while the Camel consumer is trying to pickup incoming  [...]
     "exceptionHandler": { "index": 10, "kind": "parameter", "displayName": 
"Exception Handler", "group": "consumer (advanced)", "label": 
"consumer,advanced", "required": false, "type": "object", "javaType": 
"org.apache.camel.spi.ExceptionHandler", "optionalPrefix": "consumer.", 
"deprecated": false, "autowired": false, "secret": false, "description": "To 
let the consumer use a custom ExceptionHandler. Notice if the option 
bridgeErrorHandler is enabled then this option is not in use. By de [...]
diff --git 
a/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveAboutEndpointConfigurationConfigurer.java
 
b/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveAboutEndpointConfigurationConfigurer.java
index 93559b4db85..95a6d939f4b 100644
--- 
a/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveAboutEndpointConfigurationConfigurer.java
+++ 
b/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveAboutEndpointConfigurationConfigurer.java
@@ -30,7 +30,7 @@ public class DriveAboutEndpointConfigurationConfigurer 
extends org.apache.camel.
         map.put("Delegate", java.lang.String.class);
         map.put("MethodName", java.lang.String.class);
         map.put("RefreshToken", java.lang.String.class);
-        map.put("Scopes", java.util.List.class);
+        map.put("Scopes", java.lang.String.class);
         map.put("ServiceAccountKey", java.lang.String.class);
         ALL_OPTIONS = map;
     }
@@ -54,7 +54,7 @@ public class DriveAboutEndpointConfigurationConfigurer 
extends org.apache.camel.
         case "methodName": target.setMethodName(property(camelContext, 
java.lang.String.class, value)); return true;
         case "refreshtoken":
         case "refreshToken": target.setRefreshToken(property(camelContext, 
java.lang.String.class, value)); return true;
-        case "scopes": target.setScopes(property(camelContext, 
java.util.List.class, value)); return true;
+        case "scopes": target.setScopes(property(camelContext, 
java.lang.String.class, value)); return true;
         case "serviceaccountkey":
         case "serviceAccountKey": 
target.setServiceAccountKey(property(camelContext, java.lang.String.class, 
value)); return true;
         default: return false;
@@ -84,7 +84,7 @@ public class DriveAboutEndpointConfigurationConfigurer 
extends org.apache.camel.
         case "methodName": return java.lang.String.class;
         case "refreshtoken":
         case "refreshToken": return java.lang.String.class;
-        case "scopes": return java.util.List.class;
+        case "scopes": return java.lang.String.class;
         case "serviceaccountkey":
         case "serviceAccountKey": return java.lang.String.class;
         default: return null;
@@ -116,13 +116,5 @@ public class DriveAboutEndpointConfigurationConfigurer 
extends org.apache.camel.
         default: return null;
         }
     }
-
-    @Override
-    public Object getCollectionValueType(Object target, String name, boolean 
ignoreCase) {
-        switch (ignoreCase ? name.toLowerCase() : name) {
-        case "scopes": return java.lang.String.class;
-        default: return null;
-        }
-    }
 }
 
diff --git 
a/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChangesEndpointConfigurationConfigurer.java
 
b/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChangesEndpointConfigurationConfigurer.java
index 1e44d623ece..191eef74a7c 100644
--- 
a/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChangesEndpointConfigurationConfigurer.java
+++ 
b/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChangesEndpointConfigurationConfigurer.java
@@ -41,7 +41,7 @@ public class DriveChangesEndpointConfigurationConfigurer 
extends org.apache.came
         map.put("PageToken", java.lang.String.class);
         map.put("RefreshToken", java.lang.String.class);
         map.put("RestrictToMyDrive", java.lang.Boolean.class);
-        map.put("Scopes", java.util.List.class);
+        map.put("Scopes", java.lang.String.class);
         map.put("ServiceAccountKey", java.lang.String.class);
         map.put("Spaces", java.lang.String.class);
         map.put("SupportsAllDrives", java.lang.Boolean.class);
@@ -91,7 +91,7 @@ public class DriveChangesEndpointConfigurationConfigurer 
extends org.apache.came
         case "refreshToken": target.setRefreshToken(property(camelContext, 
java.lang.String.class, value)); return true;
         case "restricttomydrive":
         case "restrictToMyDrive": 
target.setRestrictToMyDrive(property(camelContext, java.lang.Boolean.class, 
value)); return true;
-        case "scopes": target.setScopes(property(camelContext, 
java.util.List.class, value)); return true;
+        case "scopes": target.setScopes(property(camelContext, 
java.lang.String.class, value)); return true;
         case "serviceaccountkey":
         case "serviceAccountKey": 
target.setServiceAccountKey(property(camelContext, java.lang.String.class, 
value)); return true;
         case "spaces": target.setSpaces(property(camelContext, 
java.lang.String.class, value)); return true;
@@ -150,7 +150,7 @@ public class DriveChangesEndpointConfigurationConfigurer 
extends org.apache.came
         case "refreshToken": return java.lang.String.class;
         case "restricttomydrive":
         case "restrictToMyDrive": return java.lang.Boolean.class;
-        case "scopes": return java.util.List.class;
+        case "scopes": return java.lang.String.class;
         case "serviceaccountkey":
         case "serviceAccountKey": return java.lang.String.class;
         case "spaces": return java.lang.String.class;
@@ -218,13 +218,5 @@ public class DriveChangesEndpointConfigurationConfigurer 
extends org.apache.came
         default: return null;
         }
     }
-
-    @Override
-    public Object getCollectionValueType(Object target, String name, boolean 
ignoreCase) {
-        switch (ignoreCase ? name.toLowerCase() : name) {
-        case "scopes": return java.lang.String.class;
-        default: return null;
-        }
-    }
 }
 
diff --git 
a/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChannelsEndpointConfigurationConfigurer.java
 
b/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChannelsEndpointConfigurationConfigurer.java
index ba63ef7306a..0e560113873 100644
--- 
a/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChannelsEndpointConfigurationConfigurer.java
+++ 
b/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChannelsEndpointConfigurationConfigurer.java
@@ -31,7 +31,7 @@ public class DriveChannelsEndpointConfigurationConfigurer 
extends org.apache.cam
         map.put("Delegate", java.lang.String.class);
         map.put("MethodName", java.lang.String.class);
         map.put("RefreshToken", java.lang.String.class);
-        map.put("Scopes", java.util.List.class);
+        map.put("Scopes", java.lang.String.class);
         map.put("ServiceAccountKey", java.lang.String.class);
         ALL_OPTIONS = map;
     }
@@ -57,7 +57,7 @@ public class DriveChannelsEndpointConfigurationConfigurer 
extends org.apache.cam
         case "methodName": target.setMethodName(property(camelContext, 
java.lang.String.class, value)); return true;
         case "refreshtoken":
         case "refreshToken": target.setRefreshToken(property(camelContext, 
java.lang.String.class, value)); return true;
-        case "scopes": target.setScopes(property(camelContext, 
java.util.List.class, value)); return true;
+        case "scopes": target.setScopes(property(camelContext, 
java.lang.String.class, value)); return true;
         case "serviceaccountkey":
         case "serviceAccountKey": 
target.setServiceAccountKey(property(camelContext, java.lang.String.class, 
value)); return true;
         default: return false;
@@ -89,7 +89,7 @@ public class DriveChannelsEndpointConfigurationConfigurer 
extends org.apache.cam
         case "methodName": return java.lang.String.class;
         case "refreshtoken":
         case "refreshToken": return java.lang.String.class;
-        case "scopes": return java.util.List.class;
+        case "scopes": return java.lang.String.class;
         case "serviceaccountkey":
         case "serviceAccountKey": return java.lang.String.class;
         default: return null;
@@ -123,13 +123,5 @@ public class DriveChannelsEndpointConfigurationConfigurer 
extends org.apache.cam
         default: return null;
         }
     }
-
-    @Override
-    public Object getCollectionValueType(Object target, String name, boolean 
ignoreCase) {
-        switch (ignoreCase ? name.toLowerCase() : name) {
-        case "scopes": return java.lang.String.class;
-        default: return null;
-        }
-    }
 }
 
diff --git 
a/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveCommentsEndpointConfigurationConfigurer.java
 
b/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveCommentsEndpointConfigurationConfigurer.java
index 3ae746d286b..65515f0ed9f 100644
--- 
a/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveCommentsEndpointConfigurationConfigurer.java
+++ 
b/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveCommentsEndpointConfigurationConfigurer.java
@@ -36,7 +36,7 @@ public class DriveCommentsEndpointConfigurationConfigurer 
extends org.apache.cam
         map.put("PageSize", java.lang.Integer.class);
         map.put("PageToken", java.lang.String.class);
         map.put("RefreshToken", java.lang.String.class);
-        map.put("Scopes", java.util.List.class);
+        map.put("Scopes", java.lang.String.class);
         map.put("ServiceAccountKey", java.lang.String.class);
         map.put("StartModifiedTime", java.lang.String.class);
         ALL_OPTIONS = map;
@@ -72,7 +72,7 @@ public class DriveCommentsEndpointConfigurationConfigurer 
extends org.apache.cam
         case "pageToken": target.setPageToken(property(camelContext, 
java.lang.String.class, value)); return true;
         case "refreshtoken":
         case "refreshToken": target.setRefreshToken(property(camelContext, 
java.lang.String.class, value)); return true;
-        case "scopes": target.setScopes(property(camelContext, 
java.util.List.class, value)); return true;
+        case "scopes": target.setScopes(property(camelContext, 
java.lang.String.class, value)); return true;
         case "serviceaccountkey":
         case "serviceAccountKey": 
target.setServiceAccountKey(property(camelContext, java.lang.String.class, 
value)); return true;
         case "startmodifiedtime":
@@ -115,7 +115,7 @@ public class DriveCommentsEndpointConfigurationConfigurer 
extends org.apache.cam
         case "pageToken": return java.lang.String.class;
         case "refreshtoken":
         case "refreshToken": return java.lang.String.class;
-        case "scopes": return java.util.List.class;
+        case "scopes": return java.lang.String.class;
         case "serviceaccountkey":
         case "serviceAccountKey": return java.lang.String.class;
         case "startmodifiedtime":
@@ -162,13 +162,5 @@ public class DriveCommentsEndpointConfigurationConfigurer 
extends org.apache.cam
         default: return null;
         }
     }
-
-    @Override
-    public Object getCollectionValueType(Object target, String name, boolean 
ignoreCase) {
-        switch (ignoreCase ? name.toLowerCase() : name) {
-        case "scopes": return java.lang.String.class;
-        default: return null;
-        }
-    }
 }
 
diff --git 
a/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveDrivesEndpointConfigurationConfigurer.java
 
b/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveDrivesEndpointConfigurationConfigurer.java
index 463b83fab64..a4da6e5a64a 100644
--- 
a/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveDrivesEndpointConfigurationConfigurer.java
+++ 
b/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveDrivesEndpointConfigurationConfigurer.java
@@ -37,7 +37,7 @@ public class DriveDrivesEndpointConfigurationConfigurer 
extends org.apache.camel
         map.put("Q", java.lang.String.class);
         map.put("RefreshToken", java.lang.String.class);
         map.put("RequestId", java.lang.String.class);
-        map.put("Scopes", java.util.List.class);
+        map.put("Scopes", java.lang.String.class);
         map.put("ServiceAccountKey", java.lang.String.class);
         map.put("UseDomainAdminAccess", java.lang.Boolean.class);
         ALL_OPTIONS = map;
@@ -74,7 +74,7 @@ public class DriveDrivesEndpointConfigurationConfigurer 
extends org.apache.camel
         case "refreshToken": target.setRefreshToken(property(camelContext, 
java.lang.String.class, value)); return true;
         case "requestid":
         case "requestId": target.setRequestId(property(camelContext, 
java.lang.String.class, value)); return true;
-        case "scopes": target.setScopes(property(camelContext, 
java.util.List.class, value)); return true;
+        case "scopes": target.setScopes(property(camelContext, 
java.lang.String.class, value)); return true;
         case "serviceaccountkey":
         case "serviceAccountKey": 
target.setServiceAccountKey(property(camelContext, java.lang.String.class, 
value)); return true;
         case "usedomainadminaccess":
@@ -118,7 +118,7 @@ public class DriveDrivesEndpointConfigurationConfigurer 
extends org.apache.camel
         case "refreshToken": return java.lang.String.class;
         case "requestid":
         case "requestId": return java.lang.String.class;
-        case "scopes": return java.util.List.class;
+        case "scopes": return java.lang.String.class;
         case "serviceaccountkey":
         case "serviceAccountKey": return java.lang.String.class;
         case "usedomainadminaccess":
@@ -166,13 +166,5 @@ public class DriveDrivesEndpointConfigurationConfigurer 
extends org.apache.camel
         default: return null;
         }
     }
-
-    @Override
-    public Object getCollectionValueType(Object target, String name, boolean 
ignoreCase) {
-        switch (ignoreCase ? name.toLowerCase() : name) {
-        case "scopes": return java.lang.String.class;
-        default: return null;
-        }
-    }
 }
 
diff --git 
a/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveFilesEndpointConfigurationConfigurer.java
 
b/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveFilesEndpointConfigurationConfigurer.java
index b2878114869..bad505cbe6a 100644
--- 
a/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveFilesEndpointConfigurationConfigurer.java
+++ 
b/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveFilesEndpointConfigurationConfigurer.java
@@ -58,7 +58,7 @@ public class DriveFilesEndpointConfigurationConfigurer 
extends org.apache.camel.
         map.put("RefreshToken", java.lang.String.class);
         map.put("RemoveParents", java.lang.String.class);
         map.put("RevisionId", java.lang.String.class);
-        map.put("Scopes", java.util.List.class);
+        map.put("Scopes", java.lang.String.class);
         map.put("ServiceAccountKey", java.lang.String.class);
         map.put("Space", java.lang.String.class);
         map.put("Spaces", java.lang.String.class);
@@ -138,7 +138,7 @@ public class DriveFilesEndpointConfigurationConfigurer 
extends org.apache.camel.
         case "removeParents": target.setRemoveParents(property(camelContext, 
java.lang.String.class, value)); return true;
         case "revisionid":
         case "revisionId": target.setRevisionId(property(camelContext, 
java.lang.String.class, value)); return true;
-        case "scopes": target.setScopes(property(camelContext, 
java.util.List.class, value)); return true;
+        case "scopes": target.setScopes(property(camelContext, 
java.lang.String.class, value)); return true;
         case "serviceaccountkey":
         case "serviceAccountKey": 
target.setServiceAccountKey(property(camelContext, java.lang.String.class, 
value)); return true;
         case "space": target.setSpace(property(camelContext, 
java.lang.String.class, value)); return true;
@@ -228,7 +228,7 @@ public class DriveFilesEndpointConfigurationConfigurer 
extends org.apache.camel.
         case "removeParents": return java.lang.String.class;
         case "revisionid":
         case "revisionId": return java.lang.String.class;
-        case "scopes": return java.util.List.class;
+        case "scopes": return java.lang.String.class;
         case "serviceaccountkey":
         case "serviceAccountKey": return java.lang.String.class;
         case "space": return java.lang.String.class;
@@ -331,13 +331,5 @@ public class DriveFilesEndpointConfigurationConfigurer 
extends org.apache.camel.
         default: return null;
         }
     }
-
-    @Override
-    public Object getCollectionValueType(Object target, String name, boolean 
ignoreCase) {
-        switch (ignoreCase ? name.toLowerCase() : name) {
-        case "scopes": return java.lang.String.class;
-        default: return null;
-        }
-    }
 }
 
diff --git 
a/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DrivePermissionsEndpointConfigurationConfigurer.java
 
b/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DrivePermissionsEndpointConfigurationConfigurer.java
index 0a4167d869b..d0a9795452f 100644
--- 
a/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DrivePermissionsEndpointConfigurationConfigurer.java
+++ 
b/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DrivePermissionsEndpointConfigurationConfigurer.java
@@ -41,7 +41,7 @@ public class DrivePermissionsEndpointConfigurationConfigurer 
extends org.apache.
         map.put("PermissionId", java.lang.String.class);
         map.put("RefreshToken", java.lang.String.class);
         map.put("RemoveExpiration", java.lang.Boolean.class);
-        map.put("Scopes", java.util.List.class);
+        map.put("Scopes", java.lang.String.class);
         map.put("SendNotificationEmail", java.lang.Boolean.class);
         map.put("ServiceAccountKey", java.lang.String.class);
         map.put("SupportsAllDrives", java.lang.Boolean.class);
@@ -91,7 +91,7 @@ public class DrivePermissionsEndpointConfigurationConfigurer 
extends org.apache.
         case "refreshToken": target.setRefreshToken(property(camelContext, 
java.lang.String.class, value)); return true;
         case "removeexpiration":
         case "removeExpiration": 
target.setRemoveExpiration(property(camelContext, java.lang.Boolean.class, 
value)); return true;
-        case "scopes": target.setScopes(property(camelContext, 
java.util.List.class, value)); return true;
+        case "scopes": target.setScopes(property(camelContext, 
java.lang.String.class, value)); return true;
         case "sendnotificationemail":
         case "sendNotificationEmail": 
target.setSendNotificationEmail(property(camelContext, java.lang.Boolean.class, 
value)); return true;
         case "serviceaccountkey":
@@ -152,7 +152,7 @@ public class 
DrivePermissionsEndpointConfigurationConfigurer extends org.apache.
         case "refreshToken": return java.lang.String.class;
         case "removeexpiration":
         case "removeExpiration": return java.lang.Boolean.class;
-        case "scopes": return java.util.List.class;
+        case "scopes": return java.lang.String.class;
         case "sendnotificationemail":
         case "sendNotificationEmail": return java.lang.Boolean.class;
         case "serviceaccountkey":
@@ -225,13 +225,5 @@ public class 
DrivePermissionsEndpointConfigurationConfigurer extends org.apache.
         default: return null;
         }
     }
-
-    @Override
-    public Object getCollectionValueType(Object target, String name, boolean 
ignoreCase) {
-        switch (ignoreCase ? name.toLowerCase() : name) {
-        case "scopes": return java.lang.String.class;
-        default: return null;
-        }
-    }
 }
 
diff --git 
a/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRepliesEndpointConfigurationConfigurer.java
 
b/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRepliesEndpointConfigurationConfigurer.java
index 6d0d1499a2e..99414d7cbbe 100644
--- 
a/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRepliesEndpointConfigurationConfigurer.java
+++ 
b/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRepliesEndpointConfigurationConfigurer.java
@@ -37,7 +37,7 @@ public class DriveRepliesEndpointConfigurationConfigurer 
extends org.apache.came
         map.put("PageToken", java.lang.String.class);
         map.put("RefreshToken", java.lang.String.class);
         map.put("ReplyId", java.lang.String.class);
-        map.put("Scopes", java.util.List.class);
+        map.put("Scopes", java.lang.String.class);
         map.put("ServiceAccountKey", java.lang.String.class);
         ALL_OPTIONS = map;
     }
@@ -74,7 +74,7 @@ public class DriveRepliesEndpointConfigurationConfigurer 
extends org.apache.came
         case "refreshToken": target.setRefreshToken(property(camelContext, 
java.lang.String.class, value)); return true;
         case "replyid":
         case "replyId": target.setReplyId(property(camelContext, 
java.lang.String.class, value)); return true;
-        case "scopes": target.setScopes(property(camelContext, 
java.util.List.class, value)); return true;
+        case "scopes": target.setScopes(property(camelContext, 
java.lang.String.class, value)); return true;
         case "serviceaccountkey":
         case "serviceAccountKey": 
target.setServiceAccountKey(property(camelContext, java.lang.String.class, 
value)); return true;
         default: return false;
@@ -117,7 +117,7 @@ public class DriveRepliesEndpointConfigurationConfigurer 
extends org.apache.came
         case "refreshToken": return java.lang.String.class;
         case "replyid":
         case "replyId": return java.lang.String.class;
-        case "scopes": return java.util.List.class;
+        case "scopes": return java.lang.String.class;
         case "serviceaccountkey":
         case "serviceAccountKey": return java.lang.String.class;
         default: return null;
@@ -162,13 +162,5 @@ public class DriveRepliesEndpointConfigurationConfigurer 
extends org.apache.came
         default: return null;
         }
     }
-
-    @Override
-    public Object getCollectionValueType(Object target, String name, boolean 
ignoreCase) {
-        switch (ignoreCase ? name.toLowerCase() : name) {
-        case "scopes": return java.lang.String.class;
-        default: return null;
-        }
-    }
 }
 
diff --git 
a/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRevisionsEndpointConfigurationConfigurer.java
 
b/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRevisionsEndpointConfigurationConfigurer.java
index f653ec71a42..39312f06252 100644
--- 
a/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRevisionsEndpointConfigurationConfigurer.java
+++ 
b/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRevisionsEndpointConfigurationConfigurer.java
@@ -36,7 +36,7 @@ public class DriveRevisionsEndpointConfigurationConfigurer 
extends org.apache.ca
         map.put("PageToken", java.lang.String.class);
         map.put("RefreshToken", java.lang.String.class);
         map.put("RevisionId", java.lang.String.class);
-        map.put("Scopes", java.util.List.class);
+        map.put("Scopes", java.lang.String.class);
         map.put("ServiceAccountKey", java.lang.String.class);
         ALL_OPTIONS = map;
     }
@@ -71,7 +71,7 @@ public class DriveRevisionsEndpointConfigurationConfigurer 
extends org.apache.ca
         case "refreshToken": target.setRefreshToken(property(camelContext, 
java.lang.String.class, value)); return true;
         case "revisionid":
         case "revisionId": target.setRevisionId(property(camelContext, 
java.lang.String.class, value)); return true;
-        case "scopes": target.setScopes(property(camelContext, 
java.util.List.class, value)); return true;
+        case "scopes": target.setScopes(property(camelContext, 
java.lang.String.class, value)); return true;
         case "serviceaccountkey":
         case "serviceAccountKey": 
target.setServiceAccountKey(property(camelContext, java.lang.String.class, 
value)); return true;
         default: return false;
@@ -112,7 +112,7 @@ public class DriveRevisionsEndpointConfigurationConfigurer 
extends org.apache.ca
         case "refreshToken": return java.lang.String.class;
         case "revisionid":
         case "revisionId": return java.lang.String.class;
-        case "scopes": return java.util.List.class;
+        case "scopes": return java.lang.String.class;
         case "serviceaccountkey":
         case "serviceAccountKey": return java.lang.String.class;
         default: return null;
@@ -155,13 +155,5 @@ public class DriveRevisionsEndpointConfigurationConfigurer 
extends org.apache.ca
         default: return null;
         }
     }
-
-    @Override
-    public Object getCollectionValueType(Object target, String name, boolean 
ignoreCase) {
-        switch (ignoreCase ? name.toLowerCase() : name) {
-        case "scopes": return java.lang.String.class;
-        default: return null;
-        }
-    }
 }
 
diff --git 
a/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveTeamdrivesEndpointConfigurationConfigurer.java
 
b/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveTeamdrivesEndpointConfigurationConfigurer.java
index 6df6f7e0334..99b0a1ec0e7 100644
--- 
a/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveTeamdrivesEndpointConfigurationConfigurer.java
+++ 
b/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveTeamdrivesEndpointConfigurationConfigurer.java
@@ -35,7 +35,7 @@ public class DriveTeamdrivesEndpointConfigurationConfigurer 
extends org.apache.c
         map.put("Q", java.lang.String.class);
         map.put("RefreshToken", java.lang.String.class);
         map.put("RequestId", java.lang.String.class);
-        map.put("Scopes", java.util.List.class);
+        map.put("Scopes", java.lang.String.class);
         map.put("ServiceAccountKey", java.lang.String.class);
         map.put("TeamDriveId", java.lang.String.class);
         map.put("UseDomainAdminAccess", java.lang.Boolean.class);
@@ -69,7 +69,7 @@ public class DriveTeamdrivesEndpointConfigurationConfigurer 
extends org.apache.c
         case "refreshToken": target.setRefreshToken(property(camelContext, 
java.lang.String.class, value)); return true;
         case "requestid":
         case "requestId": target.setRequestId(property(camelContext, 
java.lang.String.class, value)); return true;
-        case "scopes": target.setScopes(property(camelContext, 
java.util.List.class, value)); return true;
+        case "scopes": target.setScopes(property(camelContext, 
java.lang.String.class, value)); return true;
         case "serviceaccountkey":
         case "serviceAccountKey": 
target.setServiceAccountKey(property(camelContext, java.lang.String.class, 
value)); return true;
         case "teamdriveid":
@@ -111,7 +111,7 @@ public class DriveTeamdrivesEndpointConfigurationConfigurer 
extends org.apache.c
         case "refreshToken": return java.lang.String.class;
         case "requestid":
         case "requestId": return java.lang.String.class;
-        case "scopes": return java.util.List.class;
+        case "scopes": return java.lang.String.class;
         case "serviceaccountkey":
         case "serviceAccountKey": return java.lang.String.class;
         case "teamdriveid":
@@ -159,13 +159,5 @@ public class 
DriveTeamdrivesEndpointConfigurationConfigurer extends org.apache.c
         default: return null;
         }
     }
-
-    @Override
-    public Object getCollectionValueType(Object target, String name, boolean 
ignoreCase) {
-        switch (ignoreCase ? name.toLowerCase() : name) {
-        case "scopes": return java.lang.String.class;
-        default: return null;
-        }
-    }
 }
 
diff --git 
a/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/GoogleDriveComponentConfigurer.java
 
b/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/GoogleDriveComponentConfigurer.java
index a8edd1ae720..754c11a4c48 100644
--- 
a/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/GoogleDriveComponentConfigurer.java
+++ 
b/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/GoogleDriveComponentConfigurer.java
@@ -26,7 +26,7 @@ public class GoogleDriveComponentConfigurer extends 
PropertyConfigurerSupport im
         map.put("ClientId", java.lang.String.class);
         map.put("Configuration", 
org.apache.camel.component.google.drive.GoogleDriveConfiguration.class);
         map.put("Delegate", java.lang.String.class);
-        map.put("Scopes", java.util.List.class);
+        map.put("Scopes", java.lang.String.class);
         map.put("BridgeErrorHandler", boolean.class);
         map.put("LazyStartProducer", boolean.class);
         map.put("AutowiredEnabled", boolean.class);
@@ -69,7 +69,7 @@ public class GoogleDriveComponentConfigurer extends 
PropertyConfigurerSupport im
         case "lazyStartProducer": 
target.setLazyStartProducer(property(camelContext, boolean.class, value)); 
return true;
         case "refreshtoken":
         case "refreshToken": 
getOrCreateConfiguration(target).setRefreshToken(property(camelContext, 
java.lang.String.class, value)); return true;
-        case "scopes": 
getOrCreateConfiguration(target).setScopes(property(camelContext, 
java.util.List.class, value)); return true;
+        case "scopes": 
getOrCreateConfiguration(target).setScopes(property(camelContext, 
java.lang.String.class, value)); return true;
         case "serviceaccountkey":
         case "serviceAccountKey": 
getOrCreateConfiguration(target).setServiceAccountKey(property(camelContext, 
java.lang.String.class, value)); return true;
         default: return false;
@@ -104,7 +104,7 @@ public class GoogleDriveComponentConfigurer extends 
PropertyConfigurerSupport im
         case "lazyStartProducer": return boolean.class;
         case "refreshtoken":
         case "refreshToken": return java.lang.String.class;
-        case "scopes": return java.util.List.class;
+        case "scopes": return java.lang.String.class;
         case "serviceaccountkey":
         case "serviceAccountKey": return java.lang.String.class;
         default: return null;
@@ -141,13 +141,5 @@ public class GoogleDriveComponentConfigurer extends 
PropertyConfigurerSupport im
         default: return null;
         }
     }
-
-    @Override
-    public Object getCollectionValueType(Object target, String name, boolean 
ignoreCase) {
-        switch (ignoreCase ? name.toLowerCase() : name) {
-        case "scopes": return java.lang.String.class;
-        default: return null;
-        }
-    }
 }
 
diff --git 
a/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/GoogleDriveConfigurationConfigurer.java
 
b/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/GoogleDriveConfigurationConfigurer.java
index 5401bbcc100..7e965acb114 100644
--- 
a/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/GoogleDriveConfigurationConfigurer.java
+++ 
b/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/GoogleDriveConfigurationConfigurer.java
@@ -30,7 +30,7 @@ public class GoogleDriveConfigurationConfigurer extends 
org.apache.camel.support
         map.put("Delegate", java.lang.String.class);
         map.put("MethodName", java.lang.String.class);
         map.put("RefreshToken", java.lang.String.class);
-        map.put("Scopes", java.util.List.class);
+        map.put("Scopes", java.lang.String.class);
         map.put("ServiceAccountKey", java.lang.String.class);
         ALL_OPTIONS = map;
     }
@@ -54,7 +54,7 @@ public class GoogleDriveConfigurationConfigurer extends 
org.apache.camel.support
         case "methodName": target.setMethodName(property(camelContext, 
java.lang.String.class, value)); return true;
         case "refreshtoken":
         case "refreshToken": target.setRefreshToken(property(camelContext, 
java.lang.String.class, value)); return true;
-        case "scopes": target.setScopes(property(camelContext, 
java.util.List.class, value)); return true;
+        case "scopes": target.setScopes(property(camelContext, 
java.lang.String.class, value)); return true;
         case "serviceaccountkey":
         case "serviceAccountKey": 
target.setServiceAccountKey(property(camelContext, java.lang.String.class, 
value)); return true;
         default: return false;
@@ -84,7 +84,7 @@ public class GoogleDriveConfigurationConfigurer extends 
org.apache.camel.support
         case "methodName": return java.lang.String.class;
         case "refreshtoken":
         case "refreshToken": return java.lang.String.class;
-        case "scopes": return java.util.List.class;
+        case "scopes": return java.lang.String.class;
         case "serviceaccountkey":
         case "serviceAccountKey": return java.lang.String.class;
         default: return null;
@@ -116,13 +116,5 @@ public class GoogleDriveConfigurationConfigurer extends 
org.apache.camel.support
         default: return null;
         }
     }
-
-    @Override
-    public Object getCollectionValueType(Object target, String name, boolean 
ignoreCase) {
-        switch (ignoreCase ? name.toLowerCase() : name) {
-        case "scopes": return java.lang.String.class;
-        default: return null;
-        }
-    }
 }
 
diff --git 
a/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/GoogleDriveEndpointConfigurer.java
 
b/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/GoogleDriveEndpointConfigurer.java
index fe7745b326b..d812aa26eeb 100644
--- 
a/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/GoogleDriveEndpointConfigurer.java
+++ 
b/components/camel-google/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/GoogleDriveEndpointConfigurer.java
@@ -29,7 +29,7 @@ public class GoogleDriveEndpointConfigurer extends 
PropertyConfigurerSupport imp
         map.put("ClientId", java.lang.String.class);
         map.put("Delegate", java.lang.String.class);
         map.put("InBody", java.lang.String.class);
-        map.put("Scopes", java.util.List.class);
+        map.put("Scopes", java.lang.String.class);
         map.put("SendEmptyMessageWhenIdle", boolean.class);
         map.put("BridgeErrorHandler", boolean.class);
         map.put("ExceptionHandler", 
org.apache.camel.spi.ExceptionHandler.class);
@@ -105,7 +105,7 @@ public class GoogleDriveEndpointConfigurer extends 
PropertyConfigurerSupport imp
         case "scheduler": target.setScheduler(property(camelContext, 
java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": 
target.setSchedulerProperties(property(camelContext, java.util.Map.class, 
value)); return true;
-        case "scopes": 
target.getConfiguration().setScopes(property(camelContext, 
java.util.List.class, value)); return true;
+        case "scopes": 
target.getConfiguration().setScopes(property(camelContext, 
java.lang.String.class, value)); return true;
         case "sendemptymessagewhenidle":
         case "sendEmptyMessageWhenIdle": 
target.setSendEmptyMessageWhenIdle(property(camelContext, boolean.class, 
value)); return true;
         case "serviceaccountkey":
@@ -172,7 +172,7 @@ public class GoogleDriveEndpointConfigurer extends 
PropertyConfigurerSupport imp
         case "scheduler": return java.lang.Object.class;
         case "schedulerproperties":
         case "schedulerProperties": return java.util.Map.class;
-        case "scopes": return java.util.List.class;
+        case "scopes": return java.lang.String.class;
         case "sendemptymessagewhenidle":
         case "sendEmptyMessageWhenIdle": return boolean.class;
         case "serviceaccountkey":
@@ -255,7 +255,6 @@ public class GoogleDriveEndpointConfigurer extends 
PropertyConfigurerSupport imp
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "schedulerproperties":
         case "schedulerProperties": return java.lang.Object.class;
-        case "scopes": return java.lang.String.class;
         default: return null;
         }
     }
diff --git 
a/components/camel-google/camel-google-drive/src/generated/resources/META-INF/org/apache/camel/component/google/drive/google-drive.json
 
b/components/camel-google/camel-google-drive/src/generated/resources/META-INF/org/apache/camel/component/google/drive/google-drive.json
index 4b1ab437f2a..e7782e17c45 100644
--- 
a/components/camel-google/camel-google-drive/src/generated/resources/META-INF/org/apache/camel/component/google/drive/google-drive.json
+++ 
b/components/camel-google/camel-google-drive/src/generated/resources/META-INF/org/apache/camel/component/google/drive/google-drive.json
@@ -29,7 +29,7 @@
     "clientId": { "index": 1, "kind": "property", "displayName": "Client Id", 
"group": "common", "label": "", "required": false, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "autowired": false, 
"secret": false, "configurationClass": 
"org.apache.camel.component.google.drive.GoogleDriveConfiguration", 
"configurationField": "configuration", "description": "Client ID of the drive 
application" },
     "configuration": { "index": 2, "kind": "property", "displayName": 
"Configuration", "group": "common", "label": "", "required": false, "type": 
"object", "javaType": 
"org.apache.camel.component.google.drive.GoogleDriveConfiguration", 
"deprecated": false, "autowired": false, "secret": false, "description": "To 
use the shared configuration" },
     "delegate": { "index": 3, "kind": "property", "displayName": "Delegate", 
"group": "common", "label": "", "required": false, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "autowired": false, 
"secret": false, "configurationClass": 
"org.apache.camel.component.google.drive.GoogleDriveConfiguration", 
"configurationField": "configuration", "description": "Delegate for wide-domain 
service account" },
-    "scopes": { "index": 4, "kind": "property", "displayName": "Scopes", 
"group": "common", "label": "", "required": false, "type": "array", "javaType": 
"java.util.List<java.lang.String>", "deprecated": false, "autowired": false, 
"secret": false, "configurationClass": 
"org.apache.camel.component.google.drive.GoogleDriveConfiguration", 
"configurationField": "configuration", "description": "Specifies the level of 
permissions you want a drive application to have to a user account. See https 
[...]
+    "scopes": { "index": 4, "kind": "property", "displayName": "Scopes", 
"group": "common", "label": "", "required": false, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "autowired": false, 
"secret": false, "configurationClass": 
"org.apache.camel.component.google.drive.GoogleDriveConfiguration", 
"configurationField": "configuration", "description": "Specifies the level of 
permissions you want a calendar application to have to a user account. See 
https:\/\/develop [...]
     "bridgeErrorHandler": { "index": 5, "kind": "property", "displayName": 
"Bridge Error Handler", "group": "consumer", "label": "consumer", "required": 
false, "type": "boolean", "javaType": "boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"Allows for bridging the consumer to the Camel routing Error Handler, which 
mean any exceptions (if possible) occurred while the Camel consumer is trying 
to pickup incoming messages, or the like [...]
     "lazyStartProducer": { "index": 6, "kind": "property", "displayName": 
"Lazy Start Producer", "group": "producer", "label": "producer", "required": 
false, "type": "boolean", "javaType": "boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"Whether the producer should be started lazy (on the first message). By 
starting lazy you can use this to allow CamelContext and routes to startup in 
situations where a producer may otherwise fail [...]
     "autowiredEnabled": { "index": 7, "kind": "property", "displayName": 
"Autowired Enabled", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": true, "description": 
"Whether autowiring is enabled. This is used for automatic autowiring options 
(the option must be marked as autowired) by looking up in the registry to find 
if there is a single instance of matching t [...]
@@ -47,7 +47,7 @@
     "clientId": { "index": 4, "kind": "parameter", "displayName": "Client Id", 
"group": "common", "label": "", "required": false, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "autowired": false, 
"secret": false, "configurationClass": 
"org.apache.camel.component.google.drive.GoogleDriveConfiguration", 
"configurationField": "configuration", "description": "Client ID of the drive 
application" },
     "delegate": { "index": 5, "kind": "parameter", "displayName": "Delegate", 
"group": "common", "label": "", "required": false, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "autowired": false, 
"secret": false, "configurationClass": 
"org.apache.camel.component.google.drive.GoogleDriveConfiguration", 
"configurationField": "configuration", "description": "Delegate for wide-domain 
service account" },
     "inBody": { "index": 6, "kind": "parameter", "displayName": "In Body", 
"group": "common", "label": "", "required": false, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "autowired": false, 
"secret": false, "description": "Sets the name of a parameter to be passed in 
the exchange In Body" },
-    "scopes": { "index": 7, "kind": "parameter", "displayName": "Scopes", 
"group": "common", "label": "", "required": false, "type": "array", "javaType": 
"java.util.List<java.lang.String>", "deprecated": false, "autowired": false, 
"secret": false, "configurationClass": 
"org.apache.camel.component.google.drive.GoogleDriveConfiguration", 
"configurationField": "configuration", "description": "Specifies the level of 
permissions you want a drive application to have to a user account. See http 
[...]
+    "scopes": { "index": 7, "kind": "parameter", "displayName": "Scopes", 
"group": "common", "label": "", "required": false, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "autowired": false, 
"secret": false, "configurationClass": 
"org.apache.camel.component.google.drive.GoogleDriveConfiguration", 
"configurationField": "configuration", "description": "Specifies the level of 
permissions you want a calendar application to have to a user account. See 
https:\/\/develo [...]
     "sendEmptyMessageWhenIdle": { "index": 8, "kind": "parameter", 
"displayName": "Send Empty Message When Idle", "group": "consumer", "label": 
"consumer", "required": false, "type": "boolean", "javaType": "boolean", 
"deprecated": false, "autowired": false, "secret": false, "defaultValue": 
false, "description": "If the polling consumer did not poll any files, you can 
enable this option to send an empty message (no body) instead." },
     "bridgeErrorHandler": { "index": 9, "kind": "parameter", "displayName": 
"Bridge Error Handler", "group": "consumer (advanced)", "label": 
"consumer,advanced", "required": false, "type": "boolean", "javaType": 
"boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": false, "description": "Allows for bridging the consumer to the 
Camel routing Error Handler, which mean any exceptions (if possible) occurred 
while the Camel consumer is trying to pickup incoming  [...]
     "exceptionHandler": { "index": 10, "kind": "parameter", "displayName": 
"Exception Handler", "group": "consumer (advanced)", "label": 
"consumer,advanced", "required": false, "type": "object", "javaType": 
"org.apache.camel.spi.ExceptionHandler", "optionalPrefix": "consumer.", 
"deprecated": false, "autowired": false, "secret": false, "description": "To 
let the consumer use a custom ExceptionHandler. Notice if the option 
bridgeErrorHandler is enabled then this option is not in use. By de [...]
diff --git 
a/components/camel-google/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/GoogleDriveComponent.java
 
b/components/camel-google/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/GoogleDriveComponent.java
index 1e54ebe35b4..d6e5b6b2cef 100644
--- 
a/components/camel-google/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/GoogleDriveComponent.java
+++ 
b/components/camel-google/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/GoogleDriveComponent.java
@@ -55,11 +55,11 @@ public class GoogleDriveComponent
             if (config.getClientId() != null && !config.getClientId().isBlank()
                     && config.getClientSecret() != null && 
!config.getClientSecret().isBlank()) {
                 client = getClientFactory().makeClient(config.getClientId(),
-                        config.getClientSecret(), config.getScopes(),
+                        config.getClientSecret(), config.getScopesAsList(),
                         config.getApplicationName(), config.getRefreshToken(), 
config.getAccessToken());
             } else if (config.getServiceAccountKey() != null && 
!config.getServiceAccountKey().isBlank()) {
                 client = getClientFactory().makeClient(getCamelContext(), 
config.getServiceAccountKey(),
-                        config.getScopes(), config.getApplicationName(), 
config.getDelegate());
+                        config.getScopesAsList(), config.getApplicationName(), 
config.getDelegate());
             } else {
                 throw new IllegalArgumentException(
                         "(clientId and clientSecret) or serviceAccountKey are 
required to create Google Drive client");
diff --git 
a/components/camel-google/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/GoogleDriveConfiguration.java
 
b/components/camel-google/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/GoogleDriveConfiguration.java
index 3b4e8b6f7d7..e74a360069f 100644
--- 
a/components/camel-google/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/GoogleDriveConfiguration.java
+++ 
b/components/camel-google/camel-google-drive/src/main/java/org/apache/camel/component/google/drive/GoogleDriveConfiguration.java
@@ -16,6 +16,7 @@
  */
 package org.apache.camel.component.google.drive;
 
+import java.util.Collection;
 import java.util.List;
 
 import org.apache.camel.component.google.drive.internal.GoogleDriveApiName;
@@ -38,7 +39,7 @@ public class GoogleDriveConfiguration {
     @Metadata(required = true)
     private String methodName;
     @UriParam
-    private List<String> scopes;
+    private String scopes;
     @UriParam
     private String clientId;
     @UriParam(label = "security", secret = true)
@@ -133,15 +134,26 @@ public class GoogleDriveConfiguration {
         this.applicationName = applicationName;
     }
 
-    public List<String> getScopes() {
+    public String getScopes() {
         return scopes;
     }
 
+    public Collection<String> getScopesAsList() {
+        if (scopes != null) {
+            return List.of(scopes.split(","));
+        } else {
+            return null;
+        }
+    }
+
     /**
-     * Specifies the level of permissions you want a drive application to have 
to a user account. See
-     * https://developers.google.com/drive/web/scopes for more info.
+     * Specifies the level of permissions you want a calendar application to 
have to a user account. See
+     * https://developers.google.com/identity/protocols/googlescopes for more 
info. Multiple scopes can be separated by
+     * comma.
+     *
+     * @see com.google.api.services.drive.DriveScopes
      */
-    public void setScopes(List<String> scopes) {
+    public void setScopes(String scopes) {
         this.scopes = scopes;
     }
 
diff --git 
a/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/GoogleDriveComponentBuilderFactory.java
 
b/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/GoogleDriveComponentBuilderFactory.java
index cacb62ab67e..21203b29556 100644
--- 
a/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/GoogleDriveComponentBuilderFactory.java
+++ 
b/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/GoogleDriveComponentBuilderFactory.java
@@ -113,19 +113,19 @@ public interface GoogleDriveComponentBuilderFactory {
         }
     
         /**
-         * Specifies the level of permissions you want a drive application to
+         * Specifies the level of permissions you want a calendar application 
to
          * have to a user account. See
-         * https://developers.google.com/drive/web/scopes for more info.
+         * https://developers.google.com/identity/protocols/googlescopes for
+         * more info. Multiple scopes can be separated by comma.
          * 
-         * The option is a:
-         * 
&lt;code&gt;java.util.List&amp;lt;java.lang.String&amp;gt;&lt;/code&gt; type.
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
          * 
          * Group: common
          * 
          * @param scopes the value to set
          * @return the dsl builder
          */
-        default GoogleDriveComponentBuilder 
scopes(java.util.List<java.lang.String> scopes) {
+        default GoogleDriveComponentBuilder scopes(java.lang.String scopes) {
             doSetProperty("scopes", scopes);
             return this;
         }
@@ -310,7 +310,7 @@ public interface GoogleDriveComponentBuilderFactory {
             case "clientId": getOrCreateConfiguration((GoogleDriveComponent) 
component).setClientId((java.lang.String) value); return true;
             case "configuration": ((GoogleDriveComponent) 
component).setConfiguration((org.apache.camel.component.google.drive.GoogleDriveConfiguration)
 value); return true;
             case "delegate": getOrCreateConfiguration((GoogleDriveComponent) 
component).setDelegate((java.lang.String) value); return true;
-            case "scopes": getOrCreateConfiguration((GoogleDriveComponent) 
component).setScopes((java.util.List) value); return true;
+            case "scopes": getOrCreateConfiguration((GoogleDriveComponent) 
component).setScopes((java.lang.String) value); return true;
             case "bridgeErrorHandler": ((GoogleDriveComponent) 
component).setBridgeErrorHandler((boolean) value); return true;
             case "lazyStartProducer": ((GoogleDriveComponent) 
component).setLazyStartProducer((boolean) value); return true;
             case "autowiredEnabled": ((GoogleDriveComponent) 
component).setAutowiredEnabled((boolean) value); return true;
diff --git 
a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleDriveEndpointBuilderFactory.java
 
b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleDriveEndpointBuilderFactory.java
index e711fbb0665..e71eed2431b 100644
--- 
a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleDriveEndpointBuilderFactory.java
+++ 
b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleDriveEndpointBuilderFactory.java
@@ -133,29 +133,12 @@ public interface GoogleDriveEndpointBuilderFactory {
             return this;
         }
         /**
-         * Specifies the level of permissions you want a drive application to
+         * Specifies the level of permissions you want a calendar application 
to
          * have to a user account. See
-         * https://developers.google.com/drive/web/scopes for more info.
+         * https://developers.google.com/identity/protocols/googlescopes for
+         * more info. Multiple scopes can be separated by comma.
          * 
-         * The option is a: <code>java.util.List&lt;java.lang.String&gt;</code>
-         * type.
-         * 
-         * Group: common
-         * 
-         * @param scopes the value to set
-         * @return the dsl builder
-         */
-        default GoogleDriveEndpointConsumerBuilder 
scopes(List<java.lang.String> scopes) {
-            doSetProperty("scopes", scopes);
-            return this;
-        }
-        /**
-         * Specifies the level of permissions you want a drive application to
-         * have to a user account. See
-         * https://developers.google.com/drive/web/scopes for more info.
-         * 
-         * The option will be converted to a
-         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
+         * The option is a: <code>java.lang.String</code> type.
          * 
          * Group: common
          * 
@@ -981,29 +964,12 @@ public interface GoogleDriveEndpointBuilderFactory {
             return this;
         }
         /**
-         * Specifies the level of permissions you want a drive application to
+         * Specifies the level of permissions you want a calendar application 
to
          * have to a user account. See
-         * https://developers.google.com/drive/web/scopes for more info.
+         * https://developers.google.com/identity/protocols/googlescopes for
+         * more info. Multiple scopes can be separated by comma.
          * 
-         * The option is a: <code>java.util.List&lt;java.lang.String&gt;</code>
-         * type.
-         * 
-         * Group: common
-         * 
-         * @param scopes the value to set
-         * @return the dsl builder
-         */
-        default GoogleDriveEndpointProducerBuilder 
scopes(List<java.lang.String> scopes) {
-            doSetProperty("scopes", scopes);
-            return this;
-        }
-        /**
-         * Specifies the level of permissions you want a drive application to
-         * have to a user account. See
-         * https://developers.google.com/drive/web/scopes for more info.
-         * 
-         * The option will be converted to a
-         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
+         * The option is a: <code>java.lang.String</code> type.
          * 
          * Group: common
          * 
@@ -1233,29 +1199,12 @@ public interface GoogleDriveEndpointBuilderFactory {
             return this;
         }
         /**
-         * Specifies the level of permissions you want a drive application to
-         * have to a user account. See
-         * https://developers.google.com/drive/web/scopes for more info.
-         * 
-         * The option is a: <code>java.util.List&lt;java.lang.String&gt;</code>
-         * type.
-         * 
-         * Group: common
-         * 
-         * @param scopes the value to set
-         * @return the dsl builder
-         */
-        default GoogleDriveEndpointBuilder scopes(List<java.lang.String> 
scopes) {
-            doSetProperty("scopes", scopes);
-            return this;
-        }
-        /**
-         * Specifies the level of permissions you want a drive application to
+         * Specifies the level of permissions you want a calendar application 
to
          * have to a user account. See
-         * https://developers.google.com/drive/web/scopes for more info.
+         * https://developers.google.com/identity/protocols/googlescopes for
+         * more info. Multiple scopes can be separated by comma.
          * 
-         * The option will be converted to a
-         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
+         * The option is a: <code>java.lang.String</code> type.
          * 
          * Group: common
          * 

Reply via email to