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

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


The following commit(s) were added to refs/heads/main by this push:
     new daf5c60  Regen
daf5c60 is described below

commit daf5c6058b952850a8fc419fbf2fa5ac84050983
Author: Claus Ibsen <[email protected]>
AuthorDate: Mon Jun 14 21:18:51 2021 +0200

    Regen
---
 bom/camel-bom/pom.xml                              |   2 +-
 .../docs/hwcloud-functiongraph-component.adoc      |   2 +-
 .../camel/catalog/docs/hwcloud-smn-component.adoc  |   6 +-
 .../main/docs/hwcloud-functiongraph-component.adoc |   4 +-
 .../services/org/apache/camel/component.properties |   7 +
 .../org/apache/camel/component/hwcloud-iam         |   2 +
 .../src/main/docs/hwcloud-iam-component.adoc       |  40 +-
 .../src/main/docs/hwcloud-smn-component.adoc       |  10 +-
 core/camel-allcomponents/pom.xml                   |   4 +
 .../component/ComponentsBuilderFactory.java        |  13 +
 .../dsl/HwcloudIamComponentBuilderFactory.java     | 144 +++
 .../src/generated/resources/metadata.json          |  22 +
 .../builder/endpoint/EndpointBuilderFactory.java   |   1 +
 .../camel/builder/endpoint/EndpointBuilders.java   |   1 +
 .../builder/endpoint/StaticEndpointBuilders.java   |  43 +
 .../endpoint/dsl/IAMEndpointBuilderFactory.java    | 985 +++++++++++++++++++++
 docs/components/modules/ROOT/nav.adoc              |   1 +
 .../pages/hwcloud-functiongraph-component.adoc     |   2 +-
 .../modules/ROOT/pages}/hwcloud-iam-component.adoc |  42 +-
 .../modules/ROOT/pages/hwcloud-smn-component.adoc  |   6 +-
 20 files changed, 1285 insertions(+), 52 deletions(-)

diff --git a/bom/camel-bom/pom.xml b/bom/camel-bom/pom.xml
index 0441a91..a7f967c 100644
--- a/bom/camel-bom/pom.xml
+++ b/bom/camel-bom/pom.xml
@@ -907,7 +907,7 @@
         <artifactId>camel-huaweicloud-functiongraph</artifactId>
         <version>${project.version}</version>
       </dependency>
-         <dependency>
+      <dependency>
         <groupId>org.apache.camel</groupId>
         <artifactId>camel-huaweicloud-iam</artifactId>
         <version>${project.version}</version>
diff --git 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/hwcloud-functiongraph-component.adoc
 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/hwcloud-functiongraph-component.adoc
index 7b3fce9..3474d4b 100644
--- 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/hwcloud-functiongraph-component.adoc
+++ 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/hwcloud-functiongraph-component.adoc
@@ -14,7 +14,7 @@ 
include::{cq-version}@camel-quarkus:ROOT:partial$reference/components/hwcloud-fu
 
 *{component-header}*
 
-Huawei Cloud FunctionGraph component allows you to integrate with 
https://www.huaweicloud.com/en-us/product/functiongraph.html[FunctionGraph] 
services provided by Huawei Cloud.
+Huawei Cloud FunctionGraph component allows you to integrate with 
https://www.huaweicloud.com/intl/en-us/product/functiongraph.html[FunctionGraph]
 provided by Huawei Cloud.
 
 Maven users will need to add the following dependency to their `pom.xml` for 
this component:
 
diff --git 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/hwcloud-smn-component.adoc
 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/hwcloud-smn-component.adoc
index 84ae573..2573150c 100644
--- 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/hwcloud-smn-component.adoc
+++ 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/hwcloud-smn-component.adoc
@@ -14,7 +14,7 @@ 
include::{cq-version}@camel-quarkus:ROOT:partial$reference/components/hwcloud-sm
 
 *{component-header}*
 
-Huawei Cloud SMN component allowes you to integrate with Simple notification 
services[https://www.huaweicloud.com/en-us/product/smn.html] provided by Huawei 
cloud.
+Huawei Cloud Simple Message Notification (SMN) component allows you to 
integrate with https://www.huaweicloud.com/intl/en-us/product/smn.html[SMN] 
provided by Huawei Cloud.
 
 Maven users will need to add the following dependency to their `pom.xml`
 for this component:
@@ -123,9 +123,9 @@ with the following path and query parameters:
 |=======================================================================
 |Header |Type |Description
 
-|`CamelHwCloudSmnMesssageId` |`String` | Unique message id returned by simple 
message notification server after processing the request
+|`CamelHwCloudSmnMesssageId` |`String` | Unique message id returned by Simple 
Message Notification server after processing the request
 
-|`CamelHwCloudSmnRequestId` |`String` | Unique request id returned by simple 
message notification server after processing the request
+|`CamelHwCloudSmnRequestId` |`String` | Unique request id returned by Simple 
Message Notification server after processing the request
 
 |=======================================================================
 
diff --git 
a/components/camel-huawei/camel-huaweicloud-functiongraph/src/main/docs/hwcloud-functiongraph-component.adoc
 
b/components/camel-huawei/camel-huaweicloud-functiongraph/src/main/docs/hwcloud-functiongraph-component.adoc
index c744533..3474d4b 100644
--- 
a/components/camel-huawei/camel-huaweicloud-functiongraph/src/main/docs/hwcloud-functiongraph-component.adoc
+++ 
b/components/camel-huawei/camel-huaweicloud-functiongraph/src/main/docs/hwcloud-functiongraph-component.adoc
@@ -1,6 +1,6 @@
 [[hwcloud-functiongraph-component]]
-= Huawei Cloud FunctionGraph Component
-:docTitle: Huawei Cloud FunctionGraph
+= FunctionGraph Component
+:docTitle: FunctionGraph
 :artifactId: camel-huaweicloud-functiongraph
 :description: To call serverless functions on Huawei Cloud
 :since: 3.11
diff --git 
a/components/camel-huawei/camel-huaweicloud-iam/src/generated/resources/META-INF/services/org/apache/camel/component.properties
 
b/components/camel-huawei/camel-huaweicloud-iam/src/generated/resources/META-INF/services/org/apache/camel/component.properties
new file mode 100644
index 0000000..f4b9f04
--- /dev/null
+++ 
b/components/camel-huawei/camel-huaweicloud-iam/src/generated/resources/META-INF/services/org/apache/camel/component.properties
@@ -0,0 +1,7 @@
+# Generated by camel build tools - do NOT edit this file!
+components=hwcloud-iam
+groupId=org.apache.camel
+artifactId=camel-huaweicloud-iam
+version=3.11.0-SNAPSHOT
+projectName=Camel :: Huawei Cloud IAM Component
+projectDescription=To securely manage users on Huawei Cloud
diff --git 
a/components/camel-huawei/camel-huaweicloud-iam/src/generated/resources/META-INF/services/org/apache/camel/component/hwcloud-iam
 
b/components/camel-huawei/camel-huaweicloud-iam/src/generated/resources/META-INF/services/org/apache/camel/component/hwcloud-iam
new file mode 100644
index 0000000..2f07b9a
--- /dev/null
+++ 
b/components/camel-huawei/camel-huaweicloud-iam/src/generated/resources/META-INF/services/org/apache/camel/component/hwcloud-iam
@@ -0,0 +1,2 @@
+# Generated by camel build tools - do NOT edit this file!
+class=org.apache.camel.component.huaweicloud.iam.IAMComponent
diff --git 
a/components/camel-huawei/camel-huaweicloud-iam/src/main/docs/hwcloud-iam-component.adoc
 
b/components/camel-huawei/camel-huaweicloud-iam/src/main/docs/hwcloud-iam-component.adoc
index ff8dd38..21024a0 100644
--- 
a/components/camel-huawei/camel-huaweicloud-iam/src/main/docs/hwcloud-iam-component.adoc
+++ 
b/components/camel-huawei/camel-huaweicloud-iam/src/main/docs/hwcloud-iam-component.adoc
@@ -1,11 +1,11 @@
 [[hwcloud-iam-component]]
-= Huawei Cloud Identity and Access Management (IAM) Component
-:docTitle: Huawei Cloud Identity and Access Management (IAM)
+= IAM Component
+:docTitle: IAM
 :artifactId: camel-huaweicloud-iam
 :description: To securely manage users on Huawei Cloud
 :since: 3.11
 :supportLevel: Preview
-:component-header: Only producer is supported
+:component-header: Both producer and consumer are supported
 
include::{cq-version}@camel-quarkus:ROOT:partial$reference/components/hwcloud-iam.adoc[opts=optional]
 //Manually maintained attributes
 :group: Huawei Cloud
@@ -38,20 +38,21 @@ hwcloud-iam:operation[?options]
 == URI Options
 
 // component options: START
-The IAM component supports 2 options, which are listed below.
+The IAM component supports 3 options, which are listed below.
 
 
 
 [width="100%",cols="2,5,^1,2",options="header"]
 |===
 | Name | Description | Default | Type
+| *bridgeErrorHandler* (consumer) | Allows for bridging the consumer to the 
Camel routing Error Handler, which mean any exceptions occurred while the 
consumer is trying to pickup incoming messages, or the likes, will now be 
processed as a message and handled by the routing Error Handler. By default the 
consumer will use the org.apache.camel.spi.ExceptionHandler to deal with 
exceptions, that will be logged at WARN or ERROR level and ignored. | false | 
boolean
 | *lazyStartProducer* (producer) | 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 during 
starting and cause the route to fail being started. By deferring this startup 
to be lazy then the startup failure can be handled during routing messages via 
Camel's routing error handlers. Beware that when the first message is processed 
then creating and [...]
 | *autowiredEnabled* (advanced) | 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 
type, which then gets configured on the component. This can be used for 
automatic configuring JDBC data sources, JMS connection factories, AWS Clients, 
etc. | true | boolean
 |===
 // component options: END
 
 // endpoint options: START
-The HuaweiCloud IAM endpoint is configured using URI syntax:
+The IAM endpoint is configured using URI syntax:
 
 ----
 hwcloud-iam:operation
@@ -69,25 +70,28 @@ with the following path and query parameters:
 |===
 
 
-=== Query Parameters (14 parameters):
+=== Query Parameters (16 parameters):
 
 
 [width="100%",cols="2,5,^1,2",options="header"]
 |===
 | Name | Description | Default | Type
-| *endpoint* (producer) | IAM url. Carries higher precedence than region 
parameter based client initialization |  | String
-| *groupId* (producer) | Group ID to perform operation with |  | String
+| *authenticationKey* (common) | *Required* Authentication key for the cloud 
user |  | String
+| *endpoint* (common) | IAM endpoint url. Carries higher precedence than 
region parameter based client initialization |  | String
+| *groupId* (common) | Group ID to perform operation with |  | String
+| *ignoreSslVerification* (common) | Ignore SSL verification | false | boolean
+| *proxyHost* (common) | Proxy server ip/hostname |  | String
+| *proxyPassword* (common) | Proxy authentication password |  | String
+| *proxyPort* (common) | Proxy server port |  | int
+| *proxyUser* (common) | Proxy authentication user |  | String
+| *region* (common) | *Required* IAM service region. This is lower precedence 
than endpoint based configuration |  | String
+| *secretKey* (common) | *Required* Secret key for the cloud user |  | String
+| *serviceKeys* (common) | Configuration object for cloud service 
authentication |  | ServiceKeys
+| *userId* (common) | User ID to perform operation with |  | String
+| *bridgeErrorHandler* (consumer) | Allows for bridging the consumer to the 
Camel routing Error Handler, which mean any exceptions occurred while the 
consumer is trying to pickup incoming messages, or the likes, will now be 
processed as a message and handled by the routing Error Handler. By default the 
consumer will use the org.apache.camel.spi.ExceptionHandler to deal with 
exceptions, that will be logged at WARN or ERROR level and ignored. | false | 
boolean
+| *exceptionHandler* (consumer) | To let the consumer use a custom 
ExceptionHandler. Notice if the option bridgeErrorHandler is enabled then this 
option is not in use. By default the consumer will deal with exceptions, that 
will be logged at WARN or ERROR level and ignored. |  | ExceptionHandler
+| *exchangePattern* (consumer) | Sets the exchange pattern when the consumer 
creates an exchange. There are 3 enums and the value can be one of: InOnly, 
InOut, InOptionalOut |  | ExchangePattern
 | *lazyStartProducer* (producer) | 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 during 
starting and cause the route to fail being started. By deferring this startup 
to be lazy then the startup failure can be handled during routing messages via 
Camel's routing error handlers. Beware that when the first message is processed 
then creating and [...]
-| *region* (producer) | *Required* IAM service region. This is lower 
precedence than endpoint based configuration |  | String
-| *serviceKeys* (producer) | Configuration object for cloud service 
authentication |  | ServiceKeys
-| *proxyHost* (proxy) | Proxy server ip/hostname |  | String
-| *proxyPassword* (proxy) | Proxy authentication password |  | String
-| *proxyPort* (proxy) | Proxy server port |  | int
-| *proxyUser* (proxy) | Proxy authentication user |  | String
-| *authenticationKey* (security) | *Required* Authentication key for the cloud 
user |  | String
-| *ignoreSslVerification* (security) | Ignore SSL verification | false | 
boolean
-| *secretKey* (security) | *Required* Secret key for the cloud user |  | String
-| *userId* (producer) | User ID to perform operation with |  | String
 |===
 // endpoint options: END
 
diff --git 
a/components/camel-huawei/camel-huaweicloud-smn/src/main/docs/hwcloud-smn-component.adoc
 
b/components/camel-huawei/camel-huaweicloud-smn/src/main/docs/hwcloud-smn-component.adoc
index 512fb11..2573150c 100644
--- 
a/components/camel-huawei/camel-huaweicloud-smn/src/main/docs/hwcloud-smn-component.adoc
+++ 
b/components/camel-huawei/camel-huaweicloud-smn/src/main/docs/hwcloud-smn-component.adoc
@@ -1,8 +1,8 @@
 [[hwcloud-smn-component]]
-= Huawei Cloud Simple Message Notification Component
-:docTitle: Huawei Cloud Simple Message Notification (SMN)
+= SimpleNotification Component
+:docTitle: SimpleNotification
 :artifactId: camel-huaweicloud-smn
-:description: Huawei Cloud component to integrate with Simple Message 
Notification
+:description: Huawei Cloud component to integrate with SimpleNotification 
services
 :since: 3.8
 :supportLevel: Stable
 :component-header: Only producer is supported
@@ -42,7 +42,7 @@ hwcloud-smn:service[?options]
 == Options
 
 // component options: START
-The SMN component supports 2 options, which are listed below.
+The SimpleNotification component supports 2 options, which are listed below.
 
 
 
@@ -55,7 +55,7 @@ The SMN component supports 2 options, which are listed below.
 // component options: END
 
 // endpoint options: START
-The SMN endpoint is configured using URI syntax:
+The SimpleNotification endpoint is configured using URI syntax:
 
 ----
 hwcloud-smn:smnService
diff --git a/core/camel-allcomponents/pom.xml b/core/camel-allcomponents/pom.xml
index 9bed219..28845f8 100644
--- a/core/camel-allcomponents/pom.xml
+++ b/core/camel-allcomponents/pom.xml
@@ -607,6 +607,10 @@
                </dependency>
                <dependency>
                        <groupId>org.apache.camel</groupId>
+                       <artifactId>camel-huaweicloud-iam</artifactId>
+               </dependency>
+               <dependency>
+                       <groupId>org.apache.camel</groupId>
                        <artifactId>camel-huaweicloud-smn</artifactId>
                </dependency>
                <dependency>
diff --git 
a/core/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/ComponentsBuilderFactory.java
 
b/core/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/ComponentsBuilderFactory.java
index 51b022a..1d80f0e 100644
--- 
a/core/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/ComponentsBuilderFactory.java
+++ 
b/core/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/ComponentsBuilderFactory.java
@@ -2007,6 +2007,19 @@ public interface ComponentsBuilderFactory {
         return 
org.apache.camel.builder.component.dsl.HwcloudFunctiongraphComponentBuilderFactory.hwcloudFunctiongraph();
     }
     /**
+     * IAM (camel-huaweicloud-iam)
+     * To securely manage users on Huawei Cloud
+     * 
+     * Category: cloud
+     * Since: 3.11
+     * Maven coordinates: org.apache.camel:camel-huaweicloud-iam
+     * 
+     * @return the dsl builder
+     */
+    static 
org.apache.camel.builder.component.dsl.HwcloudIamComponentBuilderFactory.HwcloudIamComponentBuilder
 hwcloudIam() {
+        return 
org.apache.camel.builder.component.dsl.HwcloudIamComponentBuilderFactory.hwcloudIam();
+    }
+    /**
      * SimpleNotification (camel-huaweicloud-smn)
      * Huawei Cloud component to integrate with SimpleNotification services
      * 
diff --git 
a/core/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/HwcloudIamComponentBuilderFactory.java
 
b/core/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/HwcloudIamComponentBuilderFactory.java
new file mode 100644
index 0000000..a9286ea
--- /dev/null
+++ 
b/core/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/HwcloudIamComponentBuilderFactory.java
@@ -0,0 +1,144 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.builder.component.dsl;
+
+import javax.annotation.Generated;
+import org.apache.camel.Component;
+import org.apache.camel.builder.component.AbstractComponentBuilder;
+import org.apache.camel.builder.component.ComponentBuilder;
+import org.apache.camel.component.huaweicloud.iam.IAMComponent;
+
+/**
+ * To securely manage users on Huawei Cloud
+ * 
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.ComponentDslMojo")
+public interface HwcloudIamComponentBuilderFactory {
+
+    /**
+     * IAM (camel-huaweicloud-iam)
+     * To securely manage users on Huawei Cloud
+     * 
+     * Category: cloud
+     * Since: 3.11
+     * Maven coordinates: org.apache.camel:camel-huaweicloud-iam
+     * 
+     * @return the dsl builder
+     */
+    static HwcloudIamComponentBuilder hwcloudIam() {
+        return new HwcloudIamComponentBuilderImpl();
+    }
+
+    /**
+     * Builder for the IAM component.
+     */
+    interface HwcloudIamComponentBuilder
+            extends
+                ComponentBuilder<IAMComponent> {
+        /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored.
+         * 
+         * The option is a: &lt;code&gt;boolean&lt;/code&gt; type.
+         * 
+         * Default: false
+         * Group: consumer
+         * 
+         * @param bridgeErrorHandler the value to set
+         * @return the dsl builder
+         */
+        default HwcloudIamComponentBuilder bridgeErrorHandler(
+                boolean bridgeErrorHandler) {
+            doSetProperty("bridgeErrorHandler", bridgeErrorHandler);
+            return this;
+        }
+        /**
+         * 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 during
+         * starting and cause the route to fail being started. By deferring 
this
+         * startup to be lazy then the startup failure can be handled during
+         * routing messages via Camel's routing error handlers. Beware that 
when
+         * the first message is processed then creating and starting the
+         * producer may take a little time and prolong the total processing 
time
+         * of the processing.
+         * 
+         * The option is a: &lt;code&gt;boolean&lt;/code&gt; type.
+         * 
+         * Default: false
+         * Group: producer
+         * 
+         * @param lazyStartProducer the value to set
+         * @return the dsl builder
+         */
+        default HwcloudIamComponentBuilder lazyStartProducer(
+                boolean lazyStartProducer) {
+            doSetProperty("lazyStartProducer", lazyStartProducer);
+            return this;
+        }
+        /**
+         * 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 type,
+         * which then gets configured on the component. This can be used for
+         * automatic configuring JDBC data sources, JMS connection factories,
+         * AWS Clients, etc.
+         * 
+         * The option is a: &lt;code&gt;boolean&lt;/code&gt; type.
+         * 
+         * Default: true
+         * Group: advanced
+         * 
+         * @param autowiredEnabled the value to set
+         * @return the dsl builder
+         */
+        default HwcloudIamComponentBuilder autowiredEnabled(
+                boolean autowiredEnabled) {
+            doSetProperty("autowiredEnabled", autowiredEnabled);
+            return this;
+        }
+    }
+
+    class HwcloudIamComponentBuilderImpl
+            extends
+                AbstractComponentBuilder<IAMComponent>
+            implements
+                HwcloudIamComponentBuilder {
+        @Override
+        protected IAMComponent buildConcreteComponent() {
+            return new IAMComponent();
+        }
+        @Override
+        protected boolean setPropertyOnComponent(
+                Component component,
+                String name,
+                Object value) {
+            switch (name) {
+            case "bridgeErrorHandler": ((IAMComponent) 
component).setBridgeErrorHandler((boolean) value); return true;
+            case "lazyStartProducer": ((IAMComponent) 
component).setLazyStartProducer((boolean) value); return true;
+            case "autowiredEnabled": ((IAMComponent) 
component).setAutowiredEnabled((boolean) value); return true;
+            default: return false;
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/core/camel-componentdsl/src/generated/resources/metadata.json 
b/core/camel-componentdsl/src/generated/resources/metadata.json
index 7119459..eb4fd1b 100644
--- a/core/camel-componentdsl/src/generated/resources/metadata.json
+++ b/core/camel-componentdsl/src/generated/resources/metadata.json
@@ -3282,6 +3282,28 @@
     "producerOnly": true,
     "lenientProperties": false
   },
+  "HwcloudIamComponentBuilderFactory": {
+    "kind": "component",
+    "name": "hwcloud-iam",
+    "title": "IAM",
+    "description": "To securely manage users on Huawei Cloud",
+    "deprecated": false,
+    "firstVersion": "3.11.0",
+    "label": "cloud",
+    "javaType": "org.apache.camel.component.huaweicloud.iam.IAMComponent",
+    "supportLevel": "Preview",
+    "groupId": "org.apache.camel",
+    "artifactId": "camel-huaweicloud-iam",
+    "version": "3.11.0-SNAPSHOT",
+    "scheme": "hwcloud-iam",
+    "extendsScheme": "",
+    "syntax": "hwcloud-iam:operation",
+    "async": false,
+    "api": false,
+    "consumerOnly": false,
+    "producerOnly": false,
+    "lenientProperties": false
+  },
   "HwcloudSmnComponentBuilderFactory": {
     "kind": "component",
     "name": "hwcloud-smn",
diff --git 
a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/EndpointBuilderFactory.java
 
b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/EndpointBuilderFactory.java
index 9ff04f2..290e57d 100644
--- 
a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/EndpointBuilderFactory.java
+++ 
b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/EndpointBuilderFactory.java
@@ -161,6 +161,7 @@ public interface EndpointBuilderFactory
             
org.apache.camel.builder.endpoint.dsl.HdfsEndpointBuilderFactory.HdfsBuilders,
             
org.apache.camel.builder.endpoint.dsl.HttpEndpointBuilderFactory.HttpBuilders,
             
org.apache.camel.builder.endpoint.dsl.IAM2EndpointBuilderFactory.IAM2Builders,
+            
org.apache.camel.builder.endpoint.dsl.IAMEndpointBuilderFactory.IAMBuilders,
             
org.apache.camel.builder.endpoint.dsl.IOTAEndpointBuilderFactory.IOTABuilders,
             
org.apache.camel.builder.endpoint.dsl.IPFSEndpointBuilderFactory.IPFSBuilders,
             
org.apache.camel.builder.endpoint.dsl.IgniteCacheEndpointBuilderFactory.IgniteCacheBuilders,
diff --git 
a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/EndpointBuilders.java
 
b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/EndpointBuilders.java
index 1b32042..82c4438 100644
--- 
a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/EndpointBuilders.java
+++ 
b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/EndpointBuilders.java
@@ -158,6 +158,7 @@ public interface EndpointBuilders
             org.apache.camel.builder.endpoint.dsl.HdfsEndpointBuilderFactory,
             org.apache.camel.builder.endpoint.dsl.HttpEndpointBuilderFactory,
             org.apache.camel.builder.endpoint.dsl.IAM2EndpointBuilderFactory,
+            org.apache.camel.builder.endpoint.dsl.IAMEndpointBuilderFactory,
             org.apache.camel.builder.endpoint.dsl.IOTAEndpointBuilderFactory,
             org.apache.camel.builder.endpoint.dsl.IPFSEndpointBuilderFactory,
             
org.apache.camel.builder.endpoint.dsl.IgniteCacheEndpointBuilderFactory,
diff --git 
a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/StaticEndpointBuilders.java
 
b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/StaticEndpointBuilders.java
index 016339f..53a4c7d 100644
--- 
a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/StaticEndpointBuilders.java
+++ 
b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/StaticEndpointBuilders.java
@@ -6788,6 +6788,49 @@ public class StaticEndpointBuilders {
         return 
org.apache.camel.builder.endpoint.dsl.FunctionGraphEndpointBuilderFactory.endpointBuilder(componentName,
 path);
     }
     /**
+     * IAM (camel-huaweicloud-iam)
+     * To securely manage users on Huawei Cloud
+     * 
+     * Category: cloud
+     * Since: 3.11
+     * Maven coordinates: org.apache.camel:camel-huaweicloud-iam
+     * 
+     * Syntax: <code>hwcloud-iam:operation</code>
+     * 
+     * Path parameter: operation (required)
+     * Operation to be performed
+     * 
+     * @param path operation
+     * @return the dsl builder
+     */
+    public static 
org.apache.camel.builder.endpoint.dsl.IAMEndpointBuilderFactory.IAMEndpointBuilder
 hwcloudIam(
+            String path) {
+        return 
org.apache.camel.builder.endpoint.dsl.IAMEndpointBuilderFactory.endpointBuilder("hwcloud-iam",
 path);
+    }
+    /**
+     * IAM (camel-huaweicloud-iam)
+     * To securely manage users on Huawei Cloud
+     * 
+     * Category: cloud
+     * Since: 3.11
+     * Maven coordinates: org.apache.camel:camel-huaweicloud-iam
+     * 
+     * Syntax: <code>hwcloud-iam:operation</code>
+     * 
+     * Path parameter: operation (required)
+     * Operation to be performed
+     * 
+     * @param componentName to use a custom component name for the endpoint
+     * instead of the default name
+     * @param path operation
+     * @return the dsl builder
+     */
+    public static 
org.apache.camel.builder.endpoint.dsl.IAMEndpointBuilderFactory.IAMEndpointBuilder
 hwcloudIam(
+            String componentName,
+            String path) {
+        return 
org.apache.camel.builder.endpoint.dsl.IAMEndpointBuilderFactory.endpointBuilder(componentName,
 path);
+    }
+    /**
      * SimpleNotification (camel-huaweicloud-smn)
      * Huawei Cloud component to integrate with SimpleNotification services
      * 
diff --git 
a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/IAMEndpointBuilderFactory.java
 
b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/IAMEndpointBuilderFactory.java
new file mode 100644
index 0000000..9eec24d
--- /dev/null
+++ 
b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/IAMEndpointBuilderFactory.java
@@ -0,0 +1,985 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.builder.endpoint.dsl;
+
+import javax.annotation.Generated;
+import org.apache.camel.ExchangePattern;
+import org.apache.camel.builder.EndpointConsumerBuilder;
+import org.apache.camel.builder.EndpointProducerBuilder;
+import org.apache.camel.builder.endpoint.AbstractEndpointBuilder;
+import org.apache.camel.spi.ExceptionHandler;
+
+/**
+ * To securely manage users on Huawei Cloud
+ * 
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
+public interface IAMEndpointBuilderFactory {
+
+
+    /**
+     * Builder for endpoint consumers for the IAM component.
+     */
+    public interface IAMEndpointConsumerBuilder
+            extends
+                EndpointConsumerBuilder {
+        default AdvancedIAMEndpointConsumerBuilder advanced() {
+            return (AdvancedIAMEndpointConsumerBuilder) this;
+        }
+        /**
+         * Authentication key for the cloud user.
+         * 
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
+         * 
+         * Required: true
+         * Group: common
+         * 
+         * @param authenticationKey the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointConsumerBuilder authenticationKey(
+                String authenticationKey) {
+            doSetProperty("authenticationKey", authenticationKey);
+            return this;
+        }
+        /**
+         * IAM endpoint url. Carries higher precedence than region parameter
+         * based client initialization.
+         * 
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
+         * 
+         * Group: common
+         * 
+         * @param endpoint the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointConsumerBuilder endpoint(String endpoint) {
+            doSetProperty("endpoint", endpoint);
+            return this;
+        }
+        /**
+         * Group ID to perform operation with.
+         * 
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
+         * 
+         * Group: common
+         * 
+         * @param groupId the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointConsumerBuilder groupId(String groupId) {
+            doSetProperty("groupId", groupId);
+            return this;
+        }
+        /**
+         * Ignore SSL verification.
+         * 
+         * The option is a: &lt;code&gt;boolean&lt;/code&gt; type.
+         * 
+         * Default: false
+         * Group: common
+         * 
+         * @param ignoreSslVerification the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointConsumerBuilder ignoreSslVerification(
+                boolean ignoreSslVerification) {
+            doSetProperty("ignoreSslVerification", ignoreSslVerification);
+            return this;
+        }
+        /**
+         * Ignore SSL verification.
+         * 
+         * The option will be converted to a &lt;code&gt;boolean&lt;/code&gt;
+         * type.
+         * 
+         * Default: false
+         * Group: common
+         * 
+         * @param ignoreSslVerification the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointConsumerBuilder ignoreSslVerification(
+                String ignoreSslVerification) {
+            doSetProperty("ignoreSslVerification", ignoreSslVerification);
+            return this;
+        }
+        /**
+         * Proxy server ip/hostname.
+         * 
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
+         * 
+         * Group: common
+         * 
+         * @param proxyHost the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointConsumerBuilder proxyHost(String proxyHost) {
+            doSetProperty("proxyHost", proxyHost);
+            return this;
+        }
+        /**
+         * Proxy authentication password.
+         * 
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
+         * 
+         * Group: common
+         * 
+         * @param proxyPassword the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointConsumerBuilder proxyPassword(String proxyPassword) 
{
+            doSetProperty("proxyPassword", proxyPassword);
+            return this;
+        }
+        /**
+         * Proxy server port.
+         * 
+         * The option is a: &lt;code&gt;int&lt;/code&gt; type.
+         * 
+         * Group: common
+         * 
+         * @param proxyPort the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointConsumerBuilder proxyPort(int proxyPort) {
+            doSetProperty("proxyPort", proxyPort);
+            return this;
+        }
+        /**
+         * Proxy server port.
+         * 
+         * The option will be converted to a &lt;code&gt;int&lt;/code&gt; type.
+         * 
+         * Group: common
+         * 
+         * @param proxyPort the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointConsumerBuilder proxyPort(String proxyPort) {
+            doSetProperty("proxyPort", proxyPort);
+            return this;
+        }
+        /**
+         * Proxy authentication user.
+         * 
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
+         * 
+         * Group: common
+         * 
+         * @param proxyUser the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointConsumerBuilder proxyUser(String proxyUser) {
+            doSetProperty("proxyUser", proxyUser);
+            return this;
+        }
+        /**
+         * IAM service region. This is lower precedence than endpoint based
+         * configuration.
+         * 
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
+         * 
+         * Required: true
+         * Group: common
+         * 
+         * @param region the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointConsumerBuilder region(String region) {
+            doSetProperty("region", region);
+            return this;
+        }
+        /**
+         * Secret key for the cloud user.
+         * 
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
+         * 
+         * Required: true
+         * Group: common
+         * 
+         * @param secretKey the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointConsumerBuilder secretKey(String secretKey) {
+            doSetProperty("secretKey", secretKey);
+            return this;
+        }
+        /**
+         * Configuration object for cloud service authentication.
+         * 
+         * The option is a:
+         * 
&lt;code&gt;org.apache.camel.component.huaweicloud.iam.models.ServiceKeys&lt;/code&gt;
 type.
+         * 
+         * Group: common
+         * 
+         * @param serviceKeys the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointConsumerBuilder serviceKeys(Object serviceKeys) {
+            doSetProperty("serviceKeys", serviceKeys);
+            return this;
+        }
+        /**
+         * Configuration object for cloud service authentication.
+         * 
+         * The option will be converted to a
+         * 
&lt;code&gt;org.apache.camel.component.huaweicloud.iam.models.ServiceKeys&lt;/code&gt;
 type.
+         * 
+         * Group: common
+         * 
+         * @param serviceKeys the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointConsumerBuilder serviceKeys(String serviceKeys) {
+            doSetProperty("serviceKeys", serviceKeys);
+            return this;
+        }
+        /**
+         * User ID to perform operation with.
+         * 
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
+         * 
+         * Group: common
+         * 
+         * @param userId the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointConsumerBuilder userId(String userId) {
+            doSetProperty("userId", userId);
+            return this;
+        }
+        /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored.
+         * 
+         * The option is a: &lt;code&gt;boolean&lt;/code&gt; type.
+         * 
+         * Default: false
+         * Group: consumer
+         * 
+         * @param bridgeErrorHandler the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointConsumerBuilder bridgeErrorHandler(
+                boolean bridgeErrorHandler) {
+            doSetProperty("bridgeErrorHandler", bridgeErrorHandler);
+            return this;
+        }
+        /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored.
+         * 
+         * The option will be converted to a &lt;code&gt;boolean&lt;/code&gt;
+         * type.
+         * 
+         * Default: false
+         * Group: consumer
+         * 
+         * @param bridgeErrorHandler the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointConsumerBuilder bridgeErrorHandler(
+                String bridgeErrorHandler) {
+            doSetProperty("bridgeErrorHandler", bridgeErrorHandler);
+            return this;
+        }
+    }
+
+    /**
+     * Advanced builder for endpoint consumers for the IAM component.
+     */
+    public interface AdvancedIAMEndpointConsumerBuilder
+            extends
+                EndpointConsumerBuilder {
+        default IAMEndpointConsumerBuilder basic() {
+            return (IAMEndpointConsumerBuilder) this;
+        }
+        /**
+         * To let the consumer use a custom ExceptionHandler. Notice if the
+         * option bridgeErrorHandler is enabled then this option is not in use.
+         * By default the consumer will deal with exceptions, that will be
+         * logged at WARN or ERROR level and ignored.
+         * 
+         * The option is a:
+         * &lt;code&gt;org.apache.camel.spi.ExceptionHandler&lt;/code&gt; type.
+         * 
+         * Group: consumer (advanced)
+         * 
+         * @param exceptionHandler the value to set
+         * @return the dsl builder
+         */
+        default AdvancedIAMEndpointConsumerBuilder exceptionHandler(
+                ExceptionHandler exceptionHandler) {
+            doSetProperty("exceptionHandler", exceptionHandler);
+            return this;
+        }
+        /**
+         * To let the consumer use a custom ExceptionHandler. Notice if the
+         * option bridgeErrorHandler is enabled then this option is not in use.
+         * By default the consumer will deal with exceptions, that will be
+         * logged at WARN or ERROR level and ignored.
+         * 
+         * The option will be converted to a
+         * &lt;code&gt;org.apache.camel.spi.ExceptionHandler&lt;/code&gt; type.
+         * 
+         * Group: consumer (advanced)
+         * 
+         * @param exceptionHandler the value to set
+         * @return the dsl builder
+         */
+        default AdvancedIAMEndpointConsumerBuilder exceptionHandler(
+                String exceptionHandler) {
+            doSetProperty("exceptionHandler", exceptionHandler);
+            return this;
+        }
+        /**
+         * Sets the exchange pattern when the consumer creates an exchange.
+         * 
+         * The option is a:
+         * &lt;code&gt;org.apache.camel.ExchangePattern&lt;/code&gt; type.
+         * 
+         * Group: consumer (advanced)
+         * 
+         * @param exchangePattern the value to set
+         * @return the dsl builder
+         */
+        default AdvancedIAMEndpointConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
+            doSetProperty("exchangePattern", exchangePattern);
+            return this;
+        }
+        /**
+         * Sets the exchange pattern when the consumer creates an exchange.
+         * 
+         * The option will be converted to a
+         * &lt;code&gt;org.apache.camel.ExchangePattern&lt;/code&gt; type.
+         * 
+         * Group: consumer (advanced)
+         * 
+         * @param exchangePattern the value to set
+         * @return the dsl builder
+         */
+        default AdvancedIAMEndpointConsumerBuilder exchangePattern(
+                String exchangePattern) {
+            doSetProperty("exchangePattern", exchangePattern);
+            return this;
+        }
+    }
+
+    /**
+     * Builder for endpoint producers for the IAM component.
+     */
+    public interface IAMEndpointProducerBuilder
+            extends
+                EndpointProducerBuilder {
+        default AdvancedIAMEndpointProducerBuilder advanced() {
+            return (AdvancedIAMEndpointProducerBuilder) this;
+        }
+        /**
+         * Authentication key for the cloud user.
+         * 
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
+         * 
+         * Required: true
+         * Group: common
+         * 
+         * @param authenticationKey the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointProducerBuilder authenticationKey(
+                String authenticationKey) {
+            doSetProperty("authenticationKey", authenticationKey);
+            return this;
+        }
+        /**
+         * IAM endpoint url. Carries higher precedence than region parameter
+         * based client initialization.
+         * 
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
+         * 
+         * Group: common
+         * 
+         * @param endpoint the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointProducerBuilder endpoint(String endpoint) {
+            doSetProperty("endpoint", endpoint);
+            return this;
+        }
+        /**
+         * Group ID to perform operation with.
+         * 
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
+         * 
+         * Group: common
+         * 
+         * @param groupId the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointProducerBuilder groupId(String groupId) {
+            doSetProperty("groupId", groupId);
+            return this;
+        }
+        /**
+         * Ignore SSL verification.
+         * 
+         * The option is a: &lt;code&gt;boolean&lt;/code&gt; type.
+         * 
+         * Default: false
+         * Group: common
+         * 
+         * @param ignoreSslVerification the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointProducerBuilder ignoreSslVerification(
+                boolean ignoreSslVerification) {
+            doSetProperty("ignoreSslVerification", ignoreSslVerification);
+            return this;
+        }
+        /**
+         * Ignore SSL verification.
+         * 
+         * The option will be converted to a &lt;code&gt;boolean&lt;/code&gt;
+         * type.
+         * 
+         * Default: false
+         * Group: common
+         * 
+         * @param ignoreSslVerification the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointProducerBuilder ignoreSslVerification(
+                String ignoreSslVerification) {
+            doSetProperty("ignoreSslVerification", ignoreSslVerification);
+            return this;
+        }
+        /**
+         * Proxy server ip/hostname.
+         * 
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
+         * 
+         * Group: common
+         * 
+         * @param proxyHost the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointProducerBuilder proxyHost(String proxyHost) {
+            doSetProperty("proxyHost", proxyHost);
+            return this;
+        }
+        /**
+         * Proxy authentication password.
+         * 
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
+         * 
+         * Group: common
+         * 
+         * @param proxyPassword the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointProducerBuilder proxyPassword(String proxyPassword) 
{
+            doSetProperty("proxyPassword", proxyPassword);
+            return this;
+        }
+        /**
+         * Proxy server port.
+         * 
+         * The option is a: &lt;code&gt;int&lt;/code&gt; type.
+         * 
+         * Group: common
+         * 
+         * @param proxyPort the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointProducerBuilder proxyPort(int proxyPort) {
+            doSetProperty("proxyPort", proxyPort);
+            return this;
+        }
+        /**
+         * Proxy server port.
+         * 
+         * The option will be converted to a &lt;code&gt;int&lt;/code&gt; type.
+         * 
+         * Group: common
+         * 
+         * @param proxyPort the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointProducerBuilder proxyPort(String proxyPort) {
+            doSetProperty("proxyPort", proxyPort);
+            return this;
+        }
+        /**
+         * Proxy authentication user.
+         * 
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
+         * 
+         * Group: common
+         * 
+         * @param proxyUser the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointProducerBuilder proxyUser(String proxyUser) {
+            doSetProperty("proxyUser", proxyUser);
+            return this;
+        }
+        /**
+         * IAM service region. This is lower precedence than endpoint based
+         * configuration.
+         * 
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
+         * 
+         * Required: true
+         * Group: common
+         * 
+         * @param region the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointProducerBuilder region(String region) {
+            doSetProperty("region", region);
+            return this;
+        }
+        /**
+         * Secret key for the cloud user.
+         * 
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
+         * 
+         * Required: true
+         * Group: common
+         * 
+         * @param secretKey the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointProducerBuilder secretKey(String secretKey) {
+            doSetProperty("secretKey", secretKey);
+            return this;
+        }
+        /**
+         * Configuration object for cloud service authentication.
+         * 
+         * The option is a:
+         * 
&lt;code&gt;org.apache.camel.component.huaweicloud.iam.models.ServiceKeys&lt;/code&gt;
 type.
+         * 
+         * Group: common
+         * 
+         * @param serviceKeys the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointProducerBuilder serviceKeys(Object serviceKeys) {
+            doSetProperty("serviceKeys", serviceKeys);
+            return this;
+        }
+        /**
+         * Configuration object for cloud service authentication.
+         * 
+         * The option will be converted to a
+         * 
&lt;code&gt;org.apache.camel.component.huaweicloud.iam.models.ServiceKeys&lt;/code&gt;
 type.
+         * 
+         * Group: common
+         * 
+         * @param serviceKeys the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointProducerBuilder serviceKeys(String serviceKeys) {
+            doSetProperty("serviceKeys", serviceKeys);
+            return this;
+        }
+        /**
+         * User ID to perform operation with.
+         * 
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
+         * 
+         * Group: common
+         * 
+         * @param userId the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointProducerBuilder userId(String userId) {
+            doSetProperty("userId", userId);
+            return this;
+        }
+        /**
+         * 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 during
+         * starting and cause the route to fail being started. By deferring 
this
+         * startup to be lazy then the startup failure can be handled during
+         * routing messages via Camel's routing error handlers. Beware that 
when
+         * the first message is processed then creating and starting the
+         * producer may take a little time and prolong the total processing 
time
+         * of the processing.
+         * 
+         * The option is a: &lt;code&gt;boolean&lt;/code&gt; type.
+         * 
+         * Default: false
+         * Group: producer
+         * 
+         * @param lazyStartProducer the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointProducerBuilder lazyStartProducer(
+                boolean lazyStartProducer) {
+            doSetProperty("lazyStartProducer", lazyStartProducer);
+            return this;
+        }
+        /**
+         * 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 during
+         * starting and cause the route to fail being started. By deferring 
this
+         * startup to be lazy then the startup failure can be handled during
+         * routing messages via Camel's routing error handlers. Beware that 
when
+         * the first message is processed then creating and starting the
+         * producer may take a little time and prolong the total processing 
time
+         * of the processing.
+         * 
+         * The option will be converted to a &lt;code&gt;boolean&lt;/code&gt;
+         * type.
+         * 
+         * Default: false
+         * Group: producer
+         * 
+         * @param lazyStartProducer the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointProducerBuilder lazyStartProducer(
+                String lazyStartProducer) {
+            doSetProperty("lazyStartProducer", lazyStartProducer);
+            return this;
+        }
+    }
+
+    /**
+     * Advanced builder for endpoint producers for the IAM component.
+     */
+    public interface AdvancedIAMEndpointProducerBuilder
+            extends
+                EndpointProducerBuilder {
+        default IAMEndpointProducerBuilder basic() {
+            return (IAMEndpointProducerBuilder) this;
+        }
+    }
+
+    /**
+     * Builder for endpoint for the IAM component.
+     */
+    public interface IAMEndpointBuilder
+            extends
+                IAMEndpointConsumerBuilder,
+                IAMEndpointProducerBuilder {
+        default AdvancedIAMEndpointBuilder advanced() {
+            return (AdvancedIAMEndpointBuilder) this;
+        }
+        /**
+         * Authentication key for the cloud user.
+         * 
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
+         * 
+         * Required: true
+         * Group: common
+         * 
+         * @param authenticationKey the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointBuilder authenticationKey(String authenticationKey) 
{
+            doSetProperty("authenticationKey", authenticationKey);
+            return this;
+        }
+        /**
+         * IAM endpoint url. Carries higher precedence than region parameter
+         * based client initialization.
+         * 
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
+         * 
+         * Group: common
+         * 
+         * @param endpoint the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointBuilder endpoint(String endpoint) {
+            doSetProperty("endpoint", endpoint);
+            return this;
+        }
+        /**
+         * Group ID to perform operation with.
+         * 
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
+         * 
+         * Group: common
+         * 
+         * @param groupId the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointBuilder groupId(String groupId) {
+            doSetProperty("groupId", groupId);
+            return this;
+        }
+        /**
+         * Ignore SSL verification.
+         * 
+         * The option is a: &lt;code&gt;boolean&lt;/code&gt; type.
+         * 
+         * Default: false
+         * Group: common
+         * 
+         * @param ignoreSslVerification the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointBuilder ignoreSslVerification(
+                boolean ignoreSslVerification) {
+            doSetProperty("ignoreSslVerification", ignoreSslVerification);
+            return this;
+        }
+        /**
+         * Ignore SSL verification.
+         * 
+         * The option will be converted to a &lt;code&gt;boolean&lt;/code&gt;
+         * type.
+         * 
+         * Default: false
+         * Group: common
+         * 
+         * @param ignoreSslVerification the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointBuilder ignoreSslVerification(
+                String ignoreSslVerification) {
+            doSetProperty("ignoreSslVerification", ignoreSslVerification);
+            return this;
+        }
+        /**
+         * Proxy server ip/hostname.
+         * 
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
+         * 
+         * Group: common
+         * 
+         * @param proxyHost the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointBuilder proxyHost(String proxyHost) {
+            doSetProperty("proxyHost", proxyHost);
+            return this;
+        }
+        /**
+         * Proxy authentication password.
+         * 
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
+         * 
+         * Group: common
+         * 
+         * @param proxyPassword the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointBuilder proxyPassword(String proxyPassword) {
+            doSetProperty("proxyPassword", proxyPassword);
+            return this;
+        }
+        /**
+         * Proxy server port.
+         * 
+         * The option is a: &lt;code&gt;int&lt;/code&gt; type.
+         * 
+         * Group: common
+         * 
+         * @param proxyPort the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointBuilder proxyPort(int proxyPort) {
+            doSetProperty("proxyPort", proxyPort);
+            return this;
+        }
+        /**
+         * Proxy server port.
+         * 
+         * The option will be converted to a &lt;code&gt;int&lt;/code&gt; type.
+         * 
+         * Group: common
+         * 
+         * @param proxyPort the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointBuilder proxyPort(String proxyPort) {
+            doSetProperty("proxyPort", proxyPort);
+            return this;
+        }
+        /**
+         * Proxy authentication user.
+         * 
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
+         * 
+         * Group: common
+         * 
+         * @param proxyUser the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointBuilder proxyUser(String proxyUser) {
+            doSetProperty("proxyUser", proxyUser);
+            return this;
+        }
+        /**
+         * IAM service region. This is lower precedence than endpoint based
+         * configuration.
+         * 
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
+         * 
+         * Required: true
+         * Group: common
+         * 
+         * @param region the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointBuilder region(String region) {
+            doSetProperty("region", region);
+            return this;
+        }
+        /**
+         * Secret key for the cloud user.
+         * 
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
+         * 
+         * Required: true
+         * Group: common
+         * 
+         * @param secretKey the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointBuilder secretKey(String secretKey) {
+            doSetProperty("secretKey", secretKey);
+            return this;
+        }
+        /**
+         * Configuration object for cloud service authentication.
+         * 
+         * The option is a:
+         * 
&lt;code&gt;org.apache.camel.component.huaweicloud.iam.models.ServiceKeys&lt;/code&gt;
 type.
+         * 
+         * Group: common
+         * 
+         * @param serviceKeys the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointBuilder serviceKeys(Object serviceKeys) {
+            doSetProperty("serviceKeys", serviceKeys);
+            return this;
+        }
+        /**
+         * Configuration object for cloud service authentication.
+         * 
+         * The option will be converted to a
+         * 
&lt;code&gt;org.apache.camel.component.huaweicloud.iam.models.ServiceKeys&lt;/code&gt;
 type.
+         * 
+         * Group: common
+         * 
+         * @param serviceKeys the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointBuilder serviceKeys(String serviceKeys) {
+            doSetProperty("serviceKeys", serviceKeys);
+            return this;
+        }
+        /**
+         * User ID to perform operation with.
+         * 
+         * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
+         * 
+         * Group: common
+         * 
+         * @param userId the value to set
+         * @return the dsl builder
+         */
+        default IAMEndpointBuilder userId(String userId) {
+            doSetProperty("userId", userId);
+            return this;
+        }
+    }
+
+    /**
+     * Advanced builder for endpoint for the IAM component.
+     */
+    public interface AdvancedIAMEndpointBuilder
+            extends
+                AdvancedIAMEndpointConsumerBuilder,
+                AdvancedIAMEndpointProducerBuilder {
+        default IAMEndpointBuilder basic() {
+            return (IAMEndpointBuilder) this;
+        }
+    }
+
+    public interface IAMBuilders {
+        /**
+         * IAM (camel-huaweicloud-iam)
+         * To securely manage users on Huawei Cloud
+         * 
+         * Category: cloud
+         * Since: 3.11
+         * Maven coordinates: org.apache.camel:camel-huaweicloud-iam
+         * 
+         * Syntax: <code>hwcloud-iam:operation</code>
+         * 
+         * Path parameter: operation (required)
+         * Operation to be performed
+         * 
+         * @param path operation
+         * @return the dsl builder
+         */
+        default IAMEndpointBuilder hwcloudIam(String path) {
+            return IAMEndpointBuilderFactory.endpointBuilder("hwcloud-iam", 
path);
+        }
+        /**
+         * IAM (camel-huaweicloud-iam)
+         * To securely manage users on Huawei Cloud
+         * 
+         * Category: cloud
+         * Since: 3.11
+         * Maven coordinates: org.apache.camel:camel-huaweicloud-iam
+         * 
+         * Syntax: <code>hwcloud-iam:operation</code>
+         * 
+         * Path parameter: operation (required)
+         * Operation to be performed
+         * 
+         * @param componentName to use a custom component name for the endpoint
+         * instead of the default name
+         * @param path operation
+         * @return the dsl builder
+         */
+        default IAMEndpointBuilder hwcloudIam(String componentName, String 
path) {
+            return IAMEndpointBuilderFactory.endpointBuilder(componentName, 
path);
+        }
+    }
+    static IAMEndpointBuilder endpointBuilder(String componentName, String 
path) {
+        class IAMEndpointBuilderImpl extends AbstractEndpointBuilder 
implements IAMEndpointBuilder, AdvancedIAMEndpointBuilder {
+            public IAMEndpointBuilderImpl(String path) {
+                super(componentName, path);
+            }
+        }
+        return new IAMEndpointBuilderImpl(path);
+    }
+}
\ No newline at end of file
diff --git a/docs/components/modules/ROOT/nav.adoc 
b/docs/components/modules/ROOT/nav.adoc
index 3f199a4..e45bb2d 100644
--- a/docs/components/modules/ROOT/nav.adoc
+++ b/docs/components/modules/ROOT/nav.adoc
@@ -149,6 +149,7 @@
 ** xref:http-component.adoc[HTTP]
 ** xref:hwcloud-summary.adoc[Huawei Cloud]
 *** xref:hwcloud-functiongraph-component.adoc[FunctionGraph]
+*** xref:hwcloud-iam-component.adoc[IAM]
 *** xref:hwcloud-smn-component.adoc[SimpleNotification]
 ** xref:iec60870-client-component.adoc[IEC 60870 Client]
 ** xref:iec60870-server-component.adoc[IEC 60870 Server]
diff --git 
a/docs/components/modules/ROOT/pages/hwcloud-functiongraph-component.adoc 
b/docs/components/modules/ROOT/pages/hwcloud-functiongraph-component.adoc
index 4bdbc14..e197fbe 100644
--- a/docs/components/modules/ROOT/pages/hwcloud-functiongraph-component.adoc
+++ b/docs/components/modules/ROOT/pages/hwcloud-functiongraph-component.adoc
@@ -16,7 +16,7 @@ 
include::{cq-version}@camel-quarkus:ROOT:partial$reference/components/hwcloud-fu
 
 *{component-header}*
 
-Huawei Cloud FunctionGraph component allows you to integrate with 
https://www.huaweicloud.com/en-us/product/functiongraph.html[FunctionGraph] 
services provided by Huawei Cloud.
+Huawei Cloud FunctionGraph component allows you to integrate with 
https://www.huaweicloud.com/intl/en-us/product/functiongraph.html[FunctionGraph]
 provided by Huawei Cloud.
 
 Maven users will need to add the following dependency to their `pom.xml` for 
this component:
 
diff --git 
a/components/camel-huawei/camel-huaweicloud-iam/src/main/docs/hwcloud-iam-component.adoc
 b/docs/components/modules/ROOT/pages/hwcloud-iam-component.adoc
similarity index 63%
copy from 
components/camel-huawei/camel-huaweicloud-iam/src/main/docs/hwcloud-iam-component.adoc
copy to docs/components/modules/ROOT/pages/hwcloud-iam-component.adoc
index ff8dd38..d5207d1 100644
--- 
a/components/camel-huawei/camel-huaweicloud-iam/src/main/docs/hwcloud-iam-component.adoc
+++ b/docs/components/modules/ROOT/pages/hwcloud-iam-component.adoc
@@ -1,11 +1,13 @@
 [[hwcloud-iam-component]]
-= Huawei Cloud Identity and Access Management (IAM) Component
-:docTitle: Huawei Cloud Identity and Access Management (IAM)
+= IAM Component
+//THIS FILE IS COPIED: EDIT THE SOURCE FILE:
+:page-source: 
components/camel-huawei/camel-huaweicloud-iam/src/main/docs/hwcloud-iam-component.adoc
+:docTitle: IAM
 :artifactId: camel-huaweicloud-iam
 :description: To securely manage users on Huawei Cloud
 :since: 3.11
 :supportLevel: Preview
-:component-header: Only producer is supported
+:component-header: Both producer and consumer are supported
 
include::{cq-version}@camel-quarkus:ROOT:partial$reference/components/hwcloud-iam.adoc[opts=optional]
 //Manually maintained attributes
 :group: Huawei Cloud
@@ -38,20 +40,21 @@ hwcloud-iam:operation[?options]
 == URI Options
 
 // component options: START
-The IAM component supports 2 options, which are listed below.
+The IAM component supports 3 options, which are listed below.
 
 
 
 [width="100%",cols="2,5,^1,2",options="header"]
 |===
 | Name | Description | Default | Type
+| *bridgeErrorHandler* (consumer) | Allows for bridging the consumer to the 
Camel routing Error Handler, which mean any exceptions occurred while the 
consumer is trying to pickup incoming messages, or the likes, will now be 
processed as a message and handled by the routing Error Handler. By default the 
consumer will use the org.apache.camel.spi.ExceptionHandler to deal with 
exceptions, that will be logged at WARN or ERROR level and ignored. | false | 
boolean
 | *lazyStartProducer* (producer) | 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 during 
starting and cause the route to fail being started. By deferring this startup 
to be lazy then the startup failure can be handled during routing messages via 
Camel's routing error handlers. Beware that when the first message is processed 
then creating and [...]
 | *autowiredEnabled* (advanced) | 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 
type, which then gets configured on the component. This can be used for 
automatic configuring JDBC data sources, JMS connection factories, AWS Clients, 
etc. | true | boolean
 |===
 // component options: END
 
 // endpoint options: START
-The HuaweiCloud IAM endpoint is configured using URI syntax:
+The IAM endpoint is configured using URI syntax:
 
 ----
 hwcloud-iam:operation
@@ -69,25 +72,28 @@ with the following path and query parameters:
 |===
 
 
-=== Query Parameters (14 parameters):
+=== Query Parameters (16 parameters):
 
 
 [width="100%",cols="2,5,^1,2",options="header"]
 |===
 | Name | Description | Default | Type
-| *endpoint* (producer) | IAM url. Carries higher precedence than region 
parameter based client initialization |  | String
-| *groupId* (producer) | Group ID to perform operation with |  | String
+| *authenticationKey* (common) | *Required* Authentication key for the cloud 
user |  | String
+| *endpoint* (common) | IAM endpoint url. Carries higher precedence than 
region parameter based client initialization |  | String
+| *groupId* (common) | Group ID to perform operation with |  | String
+| *ignoreSslVerification* (common) | Ignore SSL verification | false | boolean
+| *proxyHost* (common) | Proxy server ip/hostname |  | String
+| *proxyPassword* (common) | Proxy authentication password |  | String
+| *proxyPort* (common) | Proxy server port |  | int
+| *proxyUser* (common) | Proxy authentication user |  | String
+| *region* (common) | *Required* IAM service region. This is lower precedence 
than endpoint based configuration |  | String
+| *secretKey* (common) | *Required* Secret key for the cloud user |  | String
+| *serviceKeys* (common) | Configuration object for cloud service 
authentication |  | ServiceKeys
+| *userId* (common) | User ID to perform operation with |  | String
+| *bridgeErrorHandler* (consumer) | Allows for bridging the consumer to the 
Camel routing Error Handler, which mean any exceptions occurred while the 
consumer is trying to pickup incoming messages, or the likes, will now be 
processed as a message and handled by the routing Error Handler. By default the 
consumer will use the org.apache.camel.spi.ExceptionHandler to deal with 
exceptions, that will be logged at WARN or ERROR level and ignored. | false | 
boolean
+| *exceptionHandler* (consumer) | To let the consumer use a custom 
ExceptionHandler. Notice if the option bridgeErrorHandler is enabled then this 
option is not in use. By default the consumer will deal with exceptions, that 
will be logged at WARN or ERROR level and ignored. |  | ExceptionHandler
+| *exchangePattern* (consumer) | Sets the exchange pattern when the consumer 
creates an exchange. There are 3 enums and the value can be one of: InOnly, 
InOut, InOptionalOut |  | ExchangePattern
 | *lazyStartProducer* (producer) | 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 during 
starting and cause the route to fail being started. By deferring this startup 
to be lazy then the startup failure can be handled during routing messages via 
Camel's routing error handlers. Beware that when the first message is processed 
then creating and [...]
-| *region* (producer) | *Required* IAM service region. This is lower 
precedence than endpoint based configuration |  | String
-| *serviceKeys* (producer) | Configuration object for cloud service 
authentication |  | ServiceKeys
-| *proxyHost* (proxy) | Proxy server ip/hostname |  | String
-| *proxyPassword* (proxy) | Proxy authentication password |  | String
-| *proxyPort* (proxy) | Proxy server port |  | int
-| *proxyUser* (proxy) | Proxy authentication user |  | String
-| *authenticationKey* (security) | *Required* Authentication key for the cloud 
user |  | String
-| *ignoreSslVerification* (security) | Ignore SSL verification | false | 
boolean
-| *secretKey* (security) | *Required* Secret key for the cloud user |  | String
-| *userId* (producer) | User ID to perform operation with |  | String
 |===
 // endpoint options: END
 
diff --git a/docs/components/modules/ROOT/pages/hwcloud-smn-component.adoc 
b/docs/components/modules/ROOT/pages/hwcloud-smn-component.adoc
index 43403bf..129ef70 100644
--- a/docs/components/modules/ROOT/pages/hwcloud-smn-component.adoc
+++ b/docs/components/modules/ROOT/pages/hwcloud-smn-component.adoc
@@ -16,7 +16,7 @@ 
include::{cq-version}@camel-quarkus:ROOT:partial$reference/components/hwcloud-sm
 
 *{component-header}*
 
-Huawei Cloud SMN component allowes you to integrate with Simple notification 
services[https://www.huaweicloud.com/en-us/product/smn.html] provided by Huawei 
cloud.
+Huawei Cloud Simple Message Notification (SMN) component allows you to 
integrate with https://www.huaweicloud.com/intl/en-us/product/smn.html[SMN] 
provided by Huawei Cloud.
 
 Maven users will need to add the following dependency to their `pom.xml`
 for this component:
@@ -125,9 +125,9 @@ with the following path and query parameters:
 |=======================================================================
 |Header |Type |Description
 
-|`CamelHwCloudSmnMesssageId` |`String` | Unique message id returned by simple 
message notification server after processing the request
+|`CamelHwCloudSmnMesssageId` |`String` | Unique message id returned by Simple 
Message Notification server after processing the request
 
-|`CamelHwCloudSmnRequestId` |`String` | Unique request id returned by simple 
message notification server after processing the request
+|`CamelHwCloudSmnRequestId` |`String` | Unique request id returned by Simple 
Message Notification server after processing the request
 
 |=======================================================================
 

Reply via email to