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
commit 12beac978bf55741ed33df488a24a91405025fc2 Author: Claus Ibsen <[email protected]> AuthorDate: Sat Oct 24 19:57:04 2026 +0200 CAMEL-24961: Catalog body types for seven more kubernetes components and the three openshift components (#28400) Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]> Signed-off-by: Claus Ibsen <[email protected]> --- .../kubernetes-persistent-volumes-claims.json | 4 ++ .../components/kubernetes-persistent-volumes.json | 4 ++ .../kubernetes-replication-controllers.json | 5 +++ .../components/kubernetes-resources-quota.json | 4 ++ .../catalog/components/kubernetes-secrets.json | 4 ++ .../components/kubernetes-service-accounts.json | 4 ++ .../catalog/components/kubernetes-services.json | 5 +++ .../components/openshift-build-configs.json | 4 ++ .../camel/catalog/components/openshift-builds.json | 4 ++ .../components/openshift-deploymentconfigs.json | 5 +++ .../kubernetes-persistent-volumes.json | 4 ++ .../kubernetes-persistent-volumes-claims.json | 4 ++ .../kubernetes-replication-controllers.json | 5 +++ .../kubernetes-resources-quota.json | 4 ++ .../kubernetes/secrets/kubernetes-secrets.json | 4 ++ .../kubernetes-service-accounts.json | 4 ++ .../kubernetes/services/kubernetes-services.json | 5 +++ .../build_configs/openshift-build-configs.json | 4 ++ .../openshift/builds/openshift-builds.json | 4 ++ .../openshift-deploymentconfigs.json | 5 +++ .../KubernetesPersistentVolumesEndpoint.java | 22 +++++++++++ .../KubernetesPersistentVolumesClaimsEndpoint.java | 35 +++++++++++++++++ .../KubernetesReplicationControllersEndpoint.java | 44 +++++++++++++++++++++ .../KubernetesResourcesQuotaEndpoint.java | 34 ++++++++++++++++ .../secrets/KubernetesSecretsEndpoint.java | 29 ++++++++++++++ .../KubernetesServiceAccountsEndpoint.java | 34 ++++++++++++++++ .../services/KubernetesServicesEndpoint.java | 34 ++++++++++++++++ .../OpenshiftBuildConfigsEndpoint.java | 23 +++++++++++ .../openshift/builds/OpenshiftBuildsEndpoint.java | 21 ++++++++++ .../OpenshiftDeploymentConfigsEndpoint.java | 45 ++++++++++++++++++++++ 30 files changed, 407 insertions(+) diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-persistent-volumes-claims.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-persistent-volumes-claims.json index a617e37acbe0..7be0f607fca9 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-persistent-volumes-claims.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-persistent-volumes-claims.json @@ -35,6 +35,10 @@ "CamelKubernetesPersistentVolumeClaimName": { "index": 3, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The persistent volume claim name", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_PERSISTENT_VOLUME_CLAIM_NAME" }, "CamelKubernetesPersistentVolumeClaimSpec": { "index": 4, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "io.fabric8.kubernetes.api.model.PersistentVolumeClaimSpec", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The spec for a persistent volume claim", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_PERSISTENT_VOLUME_CLAIM_SPEC" } }, + "bodyTypes": { + "producerIn": { "carriers": [ "any" ], "description": "Not used: the operation (the operation option, or else the CamelKubernetesOperation header) takes its input from headers: the namespace in CamelKubernetesNamespaceName, the name in CamelKubernetesPersistentVolumeClaimName, the labels in CamelKubernetesPersistentVolumesClaimsLabels and the PersistentVolumeClaimSpec in CamelKubernetesPersistentVolumeClaimSpec" }, + "producerOut": { "carriers": [ "list", "pojo", "null", "value" ], "byOption": [ { "option": "operation", "value": "listPersistentVolumesClaims", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.PersistentVolumeClaim>" }, { "option": "operation", "value": "listPersistentVolumesClaimsByLabels", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.PersistentVolumeClaim>" }, { "option": "operation", "value": "getPersistent [...] + }, "properties": { "masterUrl": { "index": 0, "kind": "path", "displayName": "Master Url", "group": "producer", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "URL to a remote Kubernetes API server. This should only be used when your Camel application [...] "apiVersion": { "index": 1, "kind": "parameter", "displayName": "Api Version", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "The Kubernetes API Version to use" }, diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-persistent-volumes.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-persistent-volumes.json index 151e8f90ab93..504609083699 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-persistent-volumes.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-persistent-volumes.json @@ -33,6 +33,10 @@ "CamelKubernetesPersistentVolumesLabels": { "index": 1, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "Map<String, String>", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The persistent volume labels", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_PERSISTENT_VOLUMES_LABELS" }, "CamelKubernetesPersistentVolumeName": { "index": 2, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The persistent volume name", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_PERSISTENT_VOLUME_NAME" } }, + "bodyTypes": { + "producerIn": { "carriers": [ "any" ], "description": "Not used: the operation (the operation option, or else the CamelKubernetesOperation header) takes its input from headers: the name in CamelKubernetesPersistentVolumeName and the labels in CamelKubernetesPersistentVolumesLabels" }, + "producerOut": { "carriers": [ "list", "pojo", "null" ], "byOption": [ { "option": "operation", "value": "listPersistentVolumes", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.PersistentVolume>" }, { "option": "operation", "value": "listPersistentVolumesByLabels", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.PersistentVolume>" }, { "option": "operation", "value": "getPersistentVolume", "carriers": [ "pojo", [...] + }, "properties": { "masterUrl": { "index": 0, "kind": "path", "displayName": "Master Url", "group": "producer", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "URL to a remote Kubernetes API server. This should only be used when your Camel application [...] "apiVersion": { "index": 1, "kind": "parameter", "displayName": "Api Version", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "The Kubernetes API Version to use" }, diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-replication-controllers.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-replication-controllers.json index 1cfd606e72d9..f328bc09d4b9 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-replication-controllers.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-replication-controllers.json @@ -39,6 +39,11 @@ "CamelKubernetesEventAction": { "index": 6, "kind": "header", "displayName": "", "group": "consumer", "label": "consumer", "required": false, "javaType": "io.fabric8.kubernetes.client.Watcher.Action", "enum": [ "ADDED", "MODIFIED", "DELETED", "ERROR", "BOOKMARK" ], "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Action watched by the consumer", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_EVENT_ [...] "CamelKubernetesEventTimestamp": { "index": 7, "kind": "header", "displayName": "", "group": "consumer", "label": "consumer", "required": false, "javaType": "long", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Timestamp of the action watched by the consumer", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_EVENT_TIMESTAMP" } }, + "bodyTypes": { + "consumerOut": { "carriers": [ "pojo" ], "javaType": "io.fabric8.kubernetes.api.model.ReplicationController", "description": "The ReplicationController that changed, one message per watch event, with the action (ADDED, MODIFIED, DELETED) in the CamelKubernetesEventAction header" }, + "producerIn": { "carriers": [ "any" ], "description": "Not used: the operation (the operation option, or else the CamelKubernetesOperation header) takes its input from headers: the namespace in CamelKubernetesNamespaceName, the name in CamelKubernetesReplicationControllerName, the labels in CamelKubernetesReplicationControllersLabels, the ReplicationControllerSpec in CamelKubernetesReplicationControllerSpec and the replicas in CamelKubernetesReplicationControllerReplicas" }, + "producerOut": { "carriers": [ "list", "pojo", "null", "value" ], "byOption": [ { "option": "operation", "value": "listReplicationControllers", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.ReplicationController>" }, { "option": "operation", "value": "listReplicationControllersByLabels", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.ReplicationController>" }, { "option": "operation", "value": "getReplicationC [...] + }, "properties": { "masterUrl": { "index": 0, "kind": "path", "displayName": "Master Url", "group": "common", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "URL to a remote Kubernetes API server. This should only be used when your Camel application i [...] "apiVersion": { "index": 1, "kind": "parameter", "displayName": "Api Version", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "The Kubernetes API Version to use" }, diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-resources-quota.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-resources-quota.json index 3079e02090e8..e778a278db0f 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-resources-quota.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-resources-quota.json @@ -35,6 +35,10 @@ "CamelKubernetesResourcesQuotaName": { "index": 3, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The resource quota name", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_RESOURCES_QUOTA_NAME" }, "CamelKubernetesResourceQuotaSpec": { "index": 4, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "io.fabric8.kubernetes.api.model.ResourceQuotaSpec", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The spec for a resource quota", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_RESOURCE_QUOTA_SPEC" } }, + "bodyTypes": { + "producerIn": { "carriers": [ "any" ], "description": "Not used: the operation (the operation option, or else the CamelKubernetesOperation header) takes its input from headers: the namespace in CamelKubernetesNamespaceName, the name in CamelKubernetesResourcesQuotaName, the labels in CamelKubernetesResourcesQuotaLabels and the ResourceQuotaSpec in CamelKubernetesResourceQuotaSpec" }, + "producerOut": { "carriers": [ "list", "pojo", "null", "value" ], "byOption": [ { "option": "operation", "value": "listResourcesQuota", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.ResourceQuota>" }, { "option": "operation", "value": "listResourcesQuotaByLabels", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.ResourceQuota>" }, { "option": "operation", "value": "getResourceQuota", "carriers": [ "pojo", "null" [...] + }, "properties": { "masterUrl": { "index": 0, "kind": "path", "displayName": "Master Url", "group": "producer", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "URL to a remote Kubernetes API server. This should only be used when your Camel application [...] "apiVersion": { "index": 1, "kind": "parameter", "displayName": "Api Version", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "The Kubernetes API Version to use" }, diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-secrets.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-secrets.json index 84b96615d2b9..392532b546a2 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-secrets.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-secrets.json @@ -36,6 +36,10 @@ "CamelKubernetesSecret": { "index": 4, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "io.fabric8.kubernetes.api.model.Secret", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "A secret object", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_SECRET" }, "CamelKubernetesSecretsAnnotations": { "index": 5, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "Map<String, String>", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The secret annotations", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_SECRETS_ANNOTATIONS" } }, + "bodyTypes": { + "producerIn": { "carriers": [ "any" ], "description": "Not used: the operation (the operation option, or else the CamelKubernetesOperation header) takes its input from headers: the namespace in CamelKubernetesNamespaceName, the name in CamelKubernetesSecretName, the labels in CamelKubernetesSecretsLabels and the Secret to create or update in CamelKubernetesSecret" }, + "producerOut": { "carriers": [ "list", "pojo", "null", "value" ], "byOption": [ { "option": "operation", "value": "listSecrets", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.Secret>" }, { "option": "operation", "value": "listSecretsByLabels", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.Secret>" }, { "option": "operation", "value": "getSecret", "carriers": [ "pojo", "null" ], "javaType": "io.fabric8.kuberne [...] + }, "properties": { "masterUrl": { "index": 0, "kind": "path", "displayName": "Master Url", "group": "producer", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "URL to a remote Kubernetes API server. This should only be used when your Camel application [...] "apiVersion": { "index": 1, "kind": "parameter", "displayName": "Api Version", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "The Kubernetes API Version to use" }, diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-service-accounts.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-service-accounts.json index ff9aff3e7834..733a79b9f281 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-service-accounts.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-service-accounts.json @@ -35,6 +35,10 @@ "CamelKubernetesServiceAccountName": { "index": 3, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The service account name", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_SERVICE_ACCOUNT_NAME" }, "CamelKubernetesServiceAccount": { "index": 4, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "io.fabric8.kubernetes.api.model.ServiceAccount", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "A service account object", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_SERVICE_ACCOUNT" } }, + "bodyTypes": { + "producerIn": { "carriers": [ "any" ], "description": "Not used: the operation (the operation option, or else the CamelKubernetesOperation header) takes its input from headers: the namespace in CamelKubernetesNamespaceName, the name in CamelKubernetesServiceAccountName, the labels in CamelKubernetesServiceAccountsLabels and the ServiceAccount to create or update in CamelKubernetesServiceAccount" }, + "producerOut": { "carriers": [ "list", "pojo", "null", "value" ], "byOption": [ { "option": "operation", "value": "listServiceAccounts", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.ServiceAccount>" }, { "option": "operation", "value": "listServiceAccountsByLabels", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.ServiceAccount>" }, { "option": "operation", "value": "getServiceAccount", "carriers": [ "pojo", " [...] + }, "properties": { "masterUrl": { "index": 0, "kind": "path", "displayName": "Master Url", "group": "producer", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "URL to a remote Kubernetes API server. This should only be used when your Camel application [...] "apiVersion": { "index": 1, "kind": "parameter", "displayName": "Api Version", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "The Kubernetes API Version to use" }, diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-services.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-services.json index cb9f20669925..b9aafb3b9b39 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-services.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/kubernetes-services.json @@ -38,6 +38,11 @@ "CamelKubernetesEventAction": { "index": 5, "kind": "header", "displayName": "", "group": "consumer", "label": "consumer", "required": false, "javaType": "io.fabric8.kubernetes.client.Watcher.Action", "enum": [ "ADDED", "MODIFIED", "DELETED", "ERROR", "BOOKMARK" ], "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Action watched by the consumer", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_EVENT_ [...] "CamelKubernetesEventTimestamp": { "index": 6, "kind": "header", "displayName": "", "group": "consumer", "label": "consumer", "required": false, "javaType": "long", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Timestamp of the action watched by the consumer", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_EVENT_TIMESTAMP" } }, + "bodyTypes": { + "consumerOut": { "carriers": [ "pojo" ], "javaType": "io.fabric8.kubernetes.api.model.Service", "description": "The Service that changed, one message per watch event, with the action (ADDED, MODIFIED, DELETED) in the CamelKubernetesEventAction header" }, + "producerIn": { "carriers": [ "any" ], "description": "Not used: the operation (the operation option, or else the CamelKubernetesOperation header) takes its input from headers: the namespace in CamelKubernetesNamespaceName, the name in CamelKubernetesServiceName, the labels in CamelKubernetesServiceLabels and the ServiceSpec in CamelKubernetesServiceSpec" }, + "producerOut": { "carriers": [ "list", "pojo", "null", "value" ], "byOption": [ { "option": "operation", "value": "listServices", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.Service>" }, { "option": "operation", "value": "listServicesByLabels", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.Service>" }, { "option": "operation", "value": "getService", "carriers": [ "pojo", "null" ], "javaType": "io.fabric8.ku [...] + }, "properties": { "masterUrl": { "index": 0, "kind": "path", "displayName": "Master Url", "group": "common", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "URL to a remote Kubernetes API server. This should only be used when your Camel application i [...] "apiVersion": { "index": 1, "kind": "parameter", "displayName": "Api Version", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "The Kubernetes API Version to use" }, diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/openshift-build-configs.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/openshift-build-configs.json index 322c5c7f298e..1e122503e63b 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/openshift-build-configs.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/openshift-build-configs.json @@ -34,6 +34,10 @@ "CamelKubernetesBuildConfigsLabels": { "index": 2, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "Map<String, String>", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The OpenShift Config Build labels", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_BUILD_CONFIGS_LABELS" }, "CamelKubernetesBuildConfigName": { "index": 3, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The Openshift Config Build name", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_BUILD_CONFIG_NAME" } }, + "bodyTypes": { + "producerIn": { "carriers": [ "any" ], "description": "Not used: the operation (the operation option, or else the CamelKubernetesOperation header) takes its input from headers: the namespace in CamelKubernetesNamespaceName, the name in CamelKubernetesBuildConfigName and the labels in CamelKubernetesBuildConfigsLabels. listBuildConfigs does not read the namespace header: it lists the build configs of all namespaces" }, + "producerOut": { "carriers": [ "list", "pojo", "null" ], "byOption": [ { "option": "operation", "value": "listBuildConfigs", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.openshift.api.model.BuildConfig>" }, { "option": "operation", "value": "listBuildConfigsByLabels", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.openshift.api.model.BuildConfig>" }, { "option": "operation", "value": "getBuildConfig", "carriers": [ "pojo", "null" ], "javaType": "io.f [...] + }, "properties": { "masterUrl": { "index": 0, "kind": "path", "displayName": "Master Url", "group": "producer", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "URL to a remote Kubernetes API server. This should only be used when your Camel application [...] "apiVersion": { "index": 1, "kind": "parameter", "displayName": "Api Version", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "The Kubernetes API Version to use" }, diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/openshift-builds.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/openshift-builds.json index c5feb32d587b..04b0baf9f398 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/openshift-builds.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/openshift-builds.json @@ -34,6 +34,10 @@ "CamelKubernetesBuildsLabels": { "index": 2, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "Map<String, String>", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The OpenShift build labels", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_BUILDS_LABELS" }, "CamelKubernetesBuildName": { "index": 3, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The OpenShift build name", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_BUILD_NAME" } }, + "bodyTypes": { + "producerIn": { "carriers": [ "any" ], "description": "Not used: the operation (the operation option, or else the CamelKubernetesOperation header) takes its input from headers: the namespace in CamelKubernetesNamespaceName, the name in CamelKubernetesBuildName and the labels in CamelKubernetesBuildsLabels. listBuilds does not read the namespace header: it lists the builds of all namespaces" }, + "producerOut": { "carriers": [ "list", "pojo", "null" ], "byOption": [ { "option": "operation", "value": "listBuilds", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.openshift.api.model.Build>" }, { "option": "operation", "value": "listBuildsByLabels", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.openshift.api.model.Build>" }, { "option": "operation", "value": "getBuild", "carriers": [ "pojo", "null" ], "javaType": "io.fabric8.openshift.api.model.Bui [...] + }, "properties": { "masterUrl": { "index": 0, "kind": "path", "displayName": "Master Url", "group": "producer", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "URL to a remote Kubernetes API server. This should only be used when your Camel application [...] "apiVersion": { "index": 1, "kind": "parameter", "displayName": "Api Version", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "The Kubernetes API Version to use" }, diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/openshift-deploymentconfigs.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/openshift-deploymentconfigs.json index 013c1722b4d6..3867981619cf 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/openshift-deploymentconfigs.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/openshift-deploymentconfigs.json @@ -40,6 +40,11 @@ "CamelKubernetesEventAction": { "index": 7, "kind": "header", "displayName": "", "group": "consumer", "label": "consumer", "required": false, "javaType": "io.fabric8.kubernetes.client.Watcher.Action", "enum": [ "ADDED", "MODIFIED", "DELETED", "ERROR", "BOOKMARK" ], "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Action watched by the consumer", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_EVENT_ [...] "CamelKubernetesEventTimestamp": { "index": 8, "kind": "header", "displayName": "", "group": "consumer", "label": "consumer", "required": false, "javaType": "long", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Timestamp of the action watched by the consumer", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_EVENT_TIMESTAMP" } }, + "bodyTypes": { + "consumerOut": { "carriers": [ "pojo" ], "javaType": "io.fabric8.openshift.api.model.DeploymentConfig", "description": "The DeploymentConfig that changed, one message per watch event, with the action (ADDED, MODIFIED, DELETED) in the CamelKubernetesEventAction header" }, + "producerIn": { "carriers": [ "any" ], "description": "Not used: the operation (the operation option, or else the CamelKubernetesOperation header) takes its input from headers: the namespace in CamelKubernetesNamespaceName, the name in CamelKubernetesDeploymentName, the labels in CamelKubernetesDeploymentsLabels, the DeploymentConfigSpec in CamelKubernetesDeploymentConfigSpec and the replicas in CamelKubernetesDeploymentReplicas. The list and get operations do not read the namespace [...] + "producerOut": { "carriers": [ "list", "pojo", "null", "value" ], "byOption": [ { "option": "operation", "value": "listDeploymentConfigs", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.openshift.api.model.DeploymentConfig>" }, { "option": "operation", "value": "listDeploymentConfigsByLabels", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.openshift.api.model.DeploymentConfig>" }, { "option": "operation", "value": "getDeploymentConfig", "carriers": [ " [...] + }, "properties": { "masterUrl": { "index": 0, "kind": "path", "displayName": "Master Url", "group": "common", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "URL to a remote Kubernetes API server. This should only be used when your Camel application i [...] "apiVersion": { "index": 1, "kind": "parameter", "displayName": "Api Version", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "The Kubernetes API Version to use" }, diff --git a/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/persistent_volumes/kubernetes-persistent-volumes.json b/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/persistent_volumes/kubernetes-persistent-volumes.json index 151e8f90ab93..504609083699 100644 --- a/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/persistent_volumes/kubernetes-persistent-volumes.json +++ b/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/persistent_volumes/kubernetes-persistent-volumes.json @@ -33,6 +33,10 @@ "CamelKubernetesPersistentVolumesLabels": { "index": 1, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "Map<String, String>", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The persistent volume labels", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_PERSISTENT_VOLUMES_LABELS" }, "CamelKubernetesPersistentVolumeName": { "index": 2, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The persistent volume name", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_PERSISTENT_VOLUME_NAME" } }, + "bodyTypes": { + "producerIn": { "carriers": [ "any" ], "description": "Not used: the operation (the operation option, or else the CamelKubernetesOperation header) takes its input from headers: the name in CamelKubernetesPersistentVolumeName and the labels in CamelKubernetesPersistentVolumesLabels" }, + "producerOut": { "carriers": [ "list", "pojo", "null" ], "byOption": [ { "option": "operation", "value": "listPersistentVolumes", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.PersistentVolume>" }, { "option": "operation", "value": "listPersistentVolumesByLabels", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.PersistentVolume>" }, { "option": "operation", "value": "getPersistentVolume", "carriers": [ "pojo", [...] + }, "properties": { "masterUrl": { "index": 0, "kind": "path", "displayName": "Master Url", "group": "producer", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "URL to a remote Kubernetes API server. This should only be used when your Camel application [...] "apiVersion": { "index": 1, "kind": "parameter", "displayName": "Api Version", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "The Kubernetes API Version to use" }, diff --git a/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/persistent_volumes_claims/kubernetes-persistent-volumes-claims.json b/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/persistent_volumes_claims/kubernetes-persistent-volumes-claims.json index a617e37acbe0..7be0f607fca9 100644 --- a/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/persistent_volumes_claims/kubernetes-persistent-volumes-claims.json +++ b/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/persistent_volumes_claims/kubernetes-persistent-volumes-claims.json @@ -35,6 +35,10 @@ "CamelKubernetesPersistentVolumeClaimName": { "index": 3, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The persistent volume claim name", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_PERSISTENT_VOLUME_CLAIM_NAME" }, "CamelKubernetesPersistentVolumeClaimSpec": { "index": 4, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "io.fabric8.kubernetes.api.model.PersistentVolumeClaimSpec", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The spec for a persistent volume claim", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_PERSISTENT_VOLUME_CLAIM_SPEC" } }, + "bodyTypes": { + "producerIn": { "carriers": [ "any" ], "description": "Not used: the operation (the operation option, or else the CamelKubernetesOperation header) takes its input from headers: the namespace in CamelKubernetesNamespaceName, the name in CamelKubernetesPersistentVolumeClaimName, the labels in CamelKubernetesPersistentVolumesClaimsLabels and the PersistentVolumeClaimSpec in CamelKubernetesPersistentVolumeClaimSpec" }, + "producerOut": { "carriers": [ "list", "pojo", "null", "value" ], "byOption": [ { "option": "operation", "value": "listPersistentVolumesClaims", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.PersistentVolumeClaim>" }, { "option": "operation", "value": "listPersistentVolumesClaimsByLabels", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.PersistentVolumeClaim>" }, { "option": "operation", "value": "getPersistent [...] + }, "properties": { "masterUrl": { "index": 0, "kind": "path", "displayName": "Master Url", "group": "producer", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "URL to a remote Kubernetes API server. This should only be used when your Camel application [...] "apiVersion": { "index": 1, "kind": "parameter", "displayName": "Api Version", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "The Kubernetes API Version to use" }, diff --git a/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/replication_controllers/kubernetes-replication-controllers.json b/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/replication_controllers/kubernetes-replication-controllers.json index 1cfd606e72d9..f328bc09d4b9 100644 --- a/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/replication_controllers/kubernetes-replication-controllers.json +++ b/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/replication_controllers/kubernetes-replication-controllers.json @@ -39,6 +39,11 @@ "CamelKubernetesEventAction": { "index": 6, "kind": "header", "displayName": "", "group": "consumer", "label": "consumer", "required": false, "javaType": "io.fabric8.kubernetes.client.Watcher.Action", "enum": [ "ADDED", "MODIFIED", "DELETED", "ERROR", "BOOKMARK" ], "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Action watched by the consumer", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_EVENT_ [...] "CamelKubernetesEventTimestamp": { "index": 7, "kind": "header", "displayName": "", "group": "consumer", "label": "consumer", "required": false, "javaType": "long", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Timestamp of the action watched by the consumer", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_EVENT_TIMESTAMP" } }, + "bodyTypes": { + "consumerOut": { "carriers": [ "pojo" ], "javaType": "io.fabric8.kubernetes.api.model.ReplicationController", "description": "The ReplicationController that changed, one message per watch event, with the action (ADDED, MODIFIED, DELETED) in the CamelKubernetesEventAction header" }, + "producerIn": { "carriers": [ "any" ], "description": "Not used: the operation (the operation option, or else the CamelKubernetesOperation header) takes its input from headers: the namespace in CamelKubernetesNamespaceName, the name in CamelKubernetesReplicationControllerName, the labels in CamelKubernetesReplicationControllersLabels, the ReplicationControllerSpec in CamelKubernetesReplicationControllerSpec and the replicas in CamelKubernetesReplicationControllerReplicas" }, + "producerOut": { "carriers": [ "list", "pojo", "null", "value" ], "byOption": [ { "option": "operation", "value": "listReplicationControllers", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.ReplicationController>" }, { "option": "operation", "value": "listReplicationControllersByLabels", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.ReplicationController>" }, { "option": "operation", "value": "getReplicationC [...] + }, "properties": { "masterUrl": { "index": 0, "kind": "path", "displayName": "Master Url", "group": "common", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "URL to a remote Kubernetes API server. This should only be used when your Camel application i [...] "apiVersion": { "index": 1, "kind": "parameter", "displayName": "Api Version", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "The Kubernetes API Version to use" }, diff --git a/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/resources_quota/kubernetes-resources-quota.json b/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/resources_quota/kubernetes-resources-quota.json index 3079e02090e8..e778a278db0f 100644 --- a/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/resources_quota/kubernetes-resources-quota.json +++ b/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/resources_quota/kubernetes-resources-quota.json @@ -35,6 +35,10 @@ "CamelKubernetesResourcesQuotaName": { "index": 3, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The resource quota name", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_RESOURCES_QUOTA_NAME" }, "CamelKubernetesResourceQuotaSpec": { "index": 4, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "io.fabric8.kubernetes.api.model.ResourceQuotaSpec", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The spec for a resource quota", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_RESOURCE_QUOTA_SPEC" } }, + "bodyTypes": { + "producerIn": { "carriers": [ "any" ], "description": "Not used: the operation (the operation option, or else the CamelKubernetesOperation header) takes its input from headers: the namespace in CamelKubernetesNamespaceName, the name in CamelKubernetesResourcesQuotaName, the labels in CamelKubernetesResourcesQuotaLabels and the ResourceQuotaSpec in CamelKubernetesResourceQuotaSpec" }, + "producerOut": { "carriers": [ "list", "pojo", "null", "value" ], "byOption": [ { "option": "operation", "value": "listResourcesQuota", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.ResourceQuota>" }, { "option": "operation", "value": "listResourcesQuotaByLabels", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.ResourceQuota>" }, { "option": "operation", "value": "getResourceQuota", "carriers": [ "pojo", "null" [...] + }, "properties": { "masterUrl": { "index": 0, "kind": "path", "displayName": "Master Url", "group": "producer", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "URL to a remote Kubernetes API server. This should only be used when your Camel application [...] "apiVersion": { "index": 1, "kind": "parameter", "displayName": "Api Version", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "The Kubernetes API Version to use" }, diff --git a/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/secrets/kubernetes-secrets.json b/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/secrets/kubernetes-secrets.json index 84b96615d2b9..392532b546a2 100644 --- a/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/secrets/kubernetes-secrets.json +++ b/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/secrets/kubernetes-secrets.json @@ -36,6 +36,10 @@ "CamelKubernetesSecret": { "index": 4, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "io.fabric8.kubernetes.api.model.Secret", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "A secret object", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_SECRET" }, "CamelKubernetesSecretsAnnotations": { "index": 5, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "Map<String, String>", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The secret annotations", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_SECRETS_ANNOTATIONS" } }, + "bodyTypes": { + "producerIn": { "carriers": [ "any" ], "description": "Not used: the operation (the operation option, or else the CamelKubernetesOperation header) takes its input from headers: the namespace in CamelKubernetesNamespaceName, the name in CamelKubernetesSecretName, the labels in CamelKubernetesSecretsLabels and the Secret to create or update in CamelKubernetesSecret" }, + "producerOut": { "carriers": [ "list", "pojo", "null", "value" ], "byOption": [ { "option": "operation", "value": "listSecrets", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.Secret>" }, { "option": "operation", "value": "listSecretsByLabels", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.Secret>" }, { "option": "operation", "value": "getSecret", "carriers": [ "pojo", "null" ], "javaType": "io.fabric8.kuberne [...] + }, "properties": { "masterUrl": { "index": 0, "kind": "path", "displayName": "Master Url", "group": "producer", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "URL to a remote Kubernetes API server. This should only be used when your Camel application [...] "apiVersion": { "index": 1, "kind": "parameter", "displayName": "Api Version", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "The Kubernetes API Version to use" }, diff --git a/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/service_accounts/kubernetes-service-accounts.json b/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/service_accounts/kubernetes-service-accounts.json index ff9aff3e7834..733a79b9f281 100644 --- a/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/service_accounts/kubernetes-service-accounts.json +++ b/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/service_accounts/kubernetes-service-accounts.json @@ -35,6 +35,10 @@ "CamelKubernetesServiceAccountName": { "index": 3, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The service account name", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_SERVICE_ACCOUNT_NAME" }, "CamelKubernetesServiceAccount": { "index": 4, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "io.fabric8.kubernetes.api.model.ServiceAccount", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "A service account object", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_SERVICE_ACCOUNT" } }, + "bodyTypes": { + "producerIn": { "carriers": [ "any" ], "description": "Not used: the operation (the operation option, or else the CamelKubernetesOperation header) takes its input from headers: the namespace in CamelKubernetesNamespaceName, the name in CamelKubernetesServiceAccountName, the labels in CamelKubernetesServiceAccountsLabels and the ServiceAccount to create or update in CamelKubernetesServiceAccount" }, + "producerOut": { "carriers": [ "list", "pojo", "null", "value" ], "byOption": [ { "option": "operation", "value": "listServiceAccounts", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.ServiceAccount>" }, { "option": "operation", "value": "listServiceAccountsByLabels", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.ServiceAccount>" }, { "option": "operation", "value": "getServiceAccount", "carriers": [ "pojo", " [...] + }, "properties": { "masterUrl": { "index": 0, "kind": "path", "displayName": "Master Url", "group": "producer", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "URL to a remote Kubernetes API server. This should only be used when your Camel application [...] "apiVersion": { "index": 1, "kind": "parameter", "displayName": "Api Version", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "The Kubernetes API Version to use" }, diff --git a/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/services/kubernetes-services.json b/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/services/kubernetes-services.json index cb9f20669925..b9aafb3b9b39 100644 --- a/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/services/kubernetes-services.json +++ b/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/kubernetes/services/kubernetes-services.json @@ -38,6 +38,11 @@ "CamelKubernetesEventAction": { "index": 5, "kind": "header", "displayName": "", "group": "consumer", "label": "consumer", "required": false, "javaType": "io.fabric8.kubernetes.client.Watcher.Action", "enum": [ "ADDED", "MODIFIED", "DELETED", "ERROR", "BOOKMARK" ], "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Action watched by the consumer", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_EVENT_ [...] "CamelKubernetesEventTimestamp": { "index": 6, "kind": "header", "displayName": "", "group": "consumer", "label": "consumer", "required": false, "javaType": "long", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Timestamp of the action watched by the consumer", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_EVENT_TIMESTAMP" } }, + "bodyTypes": { + "consumerOut": { "carriers": [ "pojo" ], "javaType": "io.fabric8.kubernetes.api.model.Service", "description": "The Service that changed, one message per watch event, with the action (ADDED, MODIFIED, DELETED) in the CamelKubernetesEventAction header" }, + "producerIn": { "carriers": [ "any" ], "description": "Not used: the operation (the operation option, or else the CamelKubernetesOperation header) takes its input from headers: the namespace in CamelKubernetesNamespaceName, the name in CamelKubernetesServiceName, the labels in CamelKubernetesServiceLabels and the ServiceSpec in CamelKubernetesServiceSpec" }, + "producerOut": { "carriers": [ "list", "pojo", "null", "value" ], "byOption": [ { "option": "operation", "value": "listServices", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.Service>" }, { "option": "operation", "value": "listServicesByLabels", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.kubernetes.api.model.Service>" }, { "option": "operation", "value": "getService", "carriers": [ "pojo", "null" ], "javaType": "io.fabric8.ku [...] + }, "properties": { "masterUrl": { "index": 0, "kind": "path", "displayName": "Master Url", "group": "common", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "URL to a remote Kubernetes API server. This should only be used when your Camel application i [...] "apiVersion": { "index": 1, "kind": "parameter", "displayName": "Api Version", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "The Kubernetes API Version to use" }, diff --git a/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/openshift/build_configs/openshift-build-configs.json b/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/openshift/build_configs/openshift-build-configs.json index 322c5c7f298e..1e122503e63b 100644 --- a/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/openshift/build_configs/openshift-build-configs.json +++ b/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/openshift/build_configs/openshift-build-configs.json @@ -34,6 +34,10 @@ "CamelKubernetesBuildConfigsLabels": { "index": 2, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "Map<String, String>", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The OpenShift Config Build labels", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_BUILD_CONFIGS_LABELS" }, "CamelKubernetesBuildConfigName": { "index": 3, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The Openshift Config Build name", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_BUILD_CONFIG_NAME" } }, + "bodyTypes": { + "producerIn": { "carriers": [ "any" ], "description": "Not used: the operation (the operation option, or else the CamelKubernetesOperation header) takes its input from headers: the namespace in CamelKubernetesNamespaceName, the name in CamelKubernetesBuildConfigName and the labels in CamelKubernetesBuildConfigsLabels. listBuildConfigs does not read the namespace header: it lists the build configs of all namespaces" }, + "producerOut": { "carriers": [ "list", "pojo", "null" ], "byOption": [ { "option": "operation", "value": "listBuildConfigs", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.openshift.api.model.BuildConfig>" }, { "option": "operation", "value": "listBuildConfigsByLabels", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.openshift.api.model.BuildConfig>" }, { "option": "operation", "value": "getBuildConfig", "carriers": [ "pojo", "null" ], "javaType": "io.f [...] + }, "properties": { "masterUrl": { "index": 0, "kind": "path", "displayName": "Master Url", "group": "producer", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "URL to a remote Kubernetes API server. This should only be used when your Camel application [...] "apiVersion": { "index": 1, "kind": "parameter", "displayName": "Api Version", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "The Kubernetes API Version to use" }, diff --git a/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/openshift/builds/openshift-builds.json b/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/openshift/builds/openshift-builds.json index c5feb32d587b..04b0baf9f398 100644 --- a/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/openshift/builds/openshift-builds.json +++ b/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/openshift/builds/openshift-builds.json @@ -34,6 +34,10 @@ "CamelKubernetesBuildsLabels": { "index": 2, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "Map<String, String>", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The OpenShift build labels", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_BUILDS_LABELS" }, "CamelKubernetesBuildName": { "index": 3, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The OpenShift build name", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_BUILD_NAME" } }, + "bodyTypes": { + "producerIn": { "carriers": [ "any" ], "description": "Not used: the operation (the operation option, or else the CamelKubernetesOperation header) takes its input from headers: the namespace in CamelKubernetesNamespaceName, the name in CamelKubernetesBuildName and the labels in CamelKubernetesBuildsLabels. listBuilds does not read the namespace header: it lists the builds of all namespaces" }, + "producerOut": { "carriers": [ "list", "pojo", "null" ], "byOption": [ { "option": "operation", "value": "listBuilds", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.openshift.api.model.Build>" }, { "option": "operation", "value": "listBuildsByLabels", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.openshift.api.model.Build>" }, { "option": "operation", "value": "getBuild", "carriers": [ "pojo", "null" ], "javaType": "io.fabric8.openshift.api.model.Bui [...] + }, "properties": { "masterUrl": { "index": 0, "kind": "path", "displayName": "Master Url", "group": "producer", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "URL to a remote Kubernetes API server. This should only be used when your Camel application [...] "apiVersion": { "index": 1, "kind": "parameter", "displayName": "Api Version", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "The Kubernetes API Version to use" }, diff --git a/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/openshift/deploymentconfigs/openshift-deploymentconfigs.json b/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/openshift/deploymentconfigs/openshift-deploymentconfigs.json index 013c1722b4d6..3867981619cf 100644 --- a/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/openshift/deploymentconfigs/openshift-deploymentconfigs.json +++ b/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/component/openshift/deploymentconfigs/openshift-deploymentconfigs.json @@ -40,6 +40,11 @@ "CamelKubernetesEventAction": { "index": 7, "kind": "header", "displayName": "", "group": "consumer", "label": "consumer", "required": false, "javaType": "io.fabric8.kubernetes.client.Watcher.Action", "enum": [ "ADDED", "MODIFIED", "DELETED", "ERROR", "BOOKMARK" ], "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Action watched by the consumer", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_EVENT_ [...] "CamelKubernetesEventTimestamp": { "index": 8, "kind": "header", "displayName": "", "group": "consumer", "label": "consumer", "required": false, "javaType": "long", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Timestamp of the action watched by the consumer", "constantName": "org.apache.camel.component.kubernetes.KubernetesConstants#KUBERNETES_EVENT_TIMESTAMP" } }, + "bodyTypes": { + "consumerOut": { "carriers": [ "pojo" ], "javaType": "io.fabric8.openshift.api.model.DeploymentConfig", "description": "The DeploymentConfig that changed, one message per watch event, with the action (ADDED, MODIFIED, DELETED) in the CamelKubernetesEventAction header" }, + "producerIn": { "carriers": [ "any" ], "description": "Not used: the operation (the operation option, or else the CamelKubernetesOperation header) takes its input from headers: the namespace in CamelKubernetesNamespaceName, the name in CamelKubernetesDeploymentName, the labels in CamelKubernetesDeploymentsLabels, the DeploymentConfigSpec in CamelKubernetesDeploymentConfigSpec and the replicas in CamelKubernetesDeploymentReplicas. The list and get operations do not read the namespace [...] + "producerOut": { "carriers": [ "list", "pojo", "null", "value" ], "byOption": [ { "option": "operation", "value": "listDeploymentConfigs", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.openshift.api.model.DeploymentConfig>" }, { "option": "operation", "value": "listDeploymentConfigsByLabels", "carriers": [ "list" ], "javaType": "java.util.List<io.fabric8.openshift.api.model.DeploymentConfig>" }, { "option": "operation", "value": "getDeploymentConfig", "carriers": [ " [...] + }, "properties": { "masterUrl": { "index": 0, "kind": "path", "displayName": "Master Url", "group": "common", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "URL to a remote Kubernetes API server. This should only be used when your Camel application i [...] "apiVersion": { "index": 1, "kind": "parameter", "displayName": "Api Version", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.kubernetes.KubernetesConfiguration", "configurationField": "configuration", "description": "The Kubernetes API Version to use" }, diff --git a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/persistent_volumes/KubernetesPersistentVolumesEndpoint.java b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/persistent_volumes/KubernetesPersistentVolumesEndpoint.java index da6feff04575..3f67c28cb59e 100644 --- a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/persistent_volumes/KubernetesPersistentVolumesEndpoint.java +++ b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/persistent_volumes/KubernetesPersistentVolumesEndpoint.java @@ -23,6 +23,9 @@ import org.apache.camel.Producer; import org.apache.camel.component.kubernetes.AbstractKubernetesEndpoint; import org.apache.camel.component.kubernetes.KubernetesConfiguration; import org.apache.camel.component.kubernetes.KubernetesConstants; +import org.apache.camel.spi.BodyType; +import org.apache.camel.spi.BodyType.Carrier; +import org.apache.camel.spi.BodyTypes; import org.apache.camel.spi.UriEndpoint; import static org.apache.camel.component.kubernetes.KubernetesConstants.SCHEME_PERSISTENT_VOLUMES; @@ -34,6 +37,25 @@ import static org.apache.camel.component.kubernetes.KubernetesConstants.SCHEME_P syntax = "kubernetes-persistent-volumes:masterUrl", producerOnly = true, category = { Category.CONTAINER, Category.CLOUD }, headersClass = KubernetesConstants.class) +@BodyTypes(producerIn = @BodyType(value = Carrier.ANY, + description = "Not used: the operation (the operation option, or else the" + + " CamelKubernetesOperation header) takes its input from headers: the name" + + " in CamelKubernetesPersistentVolumeName and the labels in" + + " CamelKubernetesPersistentVolumesLabels"), + producerOut = @BodyType(value = { Carrier.LIST, Carrier.POJO, Carrier.NULL }, + byOption = { + @BodyType.When(option = "operation", value = "listPersistentVolumes", + carriers = Carrier.LIST, + javaType = "java.util.List<io.fabric8.kubernetes.api.model.PersistentVolume>"), + @BodyType.When(option = "operation", value = "listPersistentVolumesByLabels", + carriers = Carrier.LIST, + javaType = "java.util.List<io.fabric8.kubernetes.api.model.PersistentVolume>"), + @BodyType.When(option = "operation", value = "getPersistentVolume", + carriers = { Carrier.POJO, Carrier.NULL }, + javaType = "io.fabric8.kubernetes.api.model.PersistentVolume") }, + description = "A List of PersistentVolume for listPersistentVolumes and" + + " listPersistentVolumesByLabels; the PersistentVolume for" + + " getPersistentVolume (null when not found)")) public class KubernetesPersistentVolumesEndpoint extends AbstractKubernetesEndpoint { public KubernetesPersistentVolumesEndpoint(String uri, KubernetesPersistentVolumesComponent component, diff --git a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/persistent_volumes_claims/KubernetesPersistentVolumesClaimsEndpoint.java b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/persistent_volumes_claims/KubernetesPersistentVolumesClaimsEndpoint.java index d57f061f3925..aef2935c147f 100644 --- a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/persistent_volumes_claims/KubernetesPersistentVolumesClaimsEndpoint.java +++ b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/persistent_volumes_claims/KubernetesPersistentVolumesClaimsEndpoint.java @@ -23,6 +23,9 @@ import org.apache.camel.Producer; import org.apache.camel.component.kubernetes.AbstractKubernetesEndpoint; import org.apache.camel.component.kubernetes.KubernetesConfiguration; import org.apache.camel.component.kubernetes.KubernetesConstants; +import org.apache.camel.spi.BodyType; +import org.apache.camel.spi.BodyType.Carrier; +import org.apache.camel.spi.BodyTypes; import org.apache.camel.spi.UriEndpoint; import static org.apache.camel.component.kubernetes.KubernetesConstants.SCHEME_PERSISTENT_VOLUMES_CLAIMS; @@ -34,6 +37,38 @@ import static org.apache.camel.component.kubernetes.KubernetesConstants.SCHEME_P title = "Kubernetes Persistent Volume Claim", syntax = "kubernetes-persistent-volumes-claims:masterUrl", producerOnly = true, category = { Category.CONTAINER, Category.CLOUD }, headersClass = KubernetesConstants.class) +@BodyTypes(producerIn = @BodyType(value = Carrier.ANY, + description = "Not used: the operation (the operation option, or else the" + + " CamelKubernetesOperation header) takes its input from headers: the" + + " namespace in CamelKubernetesNamespaceName, the name in" + + " CamelKubernetesPersistentVolumeClaimName, the labels in" + + " CamelKubernetesPersistentVolumesClaimsLabels and the" + + " PersistentVolumeClaimSpec in CamelKubernetesPersistentVolumeClaimSpec"), + producerOut = @BodyType(value = { Carrier.LIST, Carrier.POJO, Carrier.NULL, Carrier.VALUE }, + byOption = { + @BodyType.When(option = "operation", value = "listPersistentVolumesClaims", + carriers = Carrier.LIST, + javaType = "java.util.List<io.fabric8.kubernetes.api.model.PersistentVolumeClaim>"), + @BodyType.When(option = "operation", value = "listPersistentVolumesClaimsByLabels", + carriers = Carrier.LIST, + javaType = "java.util.List<io.fabric8.kubernetes.api.model.PersistentVolumeClaim>"), + @BodyType.When(option = "operation", value = "getPersistentVolumeClaim", + carriers = { Carrier.POJO, Carrier.NULL }, + javaType = "io.fabric8.kubernetes.api.model.PersistentVolumeClaim"), + @BodyType.When(option = "operation", value = "createPersistentVolumeClaim", + carriers = Carrier.POJO, + javaType = "io.fabric8.kubernetes.api.model.PersistentVolumeClaim"), + @BodyType.When(option = "operation", value = "updatePersistentVolumeClaim", + carriers = Carrier.POJO, + javaType = "io.fabric8.kubernetes.api.model.PersistentVolumeClaim"), + @BodyType.When(option = "operation", value = "deletePersistentVolumeClaim", + carriers = Carrier.VALUE, + javaType = "java.lang.Boolean") }, + description = "A List of PersistentVolumeClaim for listPersistentVolumesClaims and" + + " listPersistentVolumesClaimsByLabels; the PersistentVolumeClaim for" + + " getPersistentVolumeClaim (null when not found)," + + " createPersistentVolumeClaim and updatePersistentVolumeClaim; a Boolean" + + " for deletePersistentVolumeClaim, false when not found")) public class KubernetesPersistentVolumesClaimsEndpoint extends AbstractKubernetesEndpoint { public KubernetesPersistentVolumesClaimsEndpoint( diff --git a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/replication_controllers/KubernetesReplicationControllersEndpoint.java b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/replication_controllers/KubernetesReplicationControllersEndpoint.java index f1d2b2455585..83a2170553de 100644 --- a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/replication_controllers/KubernetesReplicationControllersEndpoint.java +++ b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/replication_controllers/KubernetesReplicationControllersEndpoint.java @@ -23,6 +23,9 @@ import org.apache.camel.Producer; import org.apache.camel.component.kubernetes.AbstractKubernetesEndpoint; import org.apache.camel.component.kubernetes.KubernetesConfiguration; import org.apache.camel.component.kubernetes.KubernetesConstants; +import org.apache.camel.spi.BodyType; +import org.apache.camel.spi.BodyType.Carrier; +import org.apache.camel.spi.BodyTypes; import org.apache.camel.spi.UriEndpoint; import static org.apache.camel.component.kubernetes.KubernetesConstants.SCHEME_REPLICATION_CONTROLLERS; @@ -33,6 +36,47 @@ import static org.apache.camel.component.kubernetes.KubernetesConstants.SCHEME_R @UriEndpoint(firstVersion = "2.17.0", scheme = SCHEME_REPLICATION_CONTROLLERS, title = "Kubernetes Replication Controller", syntax = "kubernetes-replication-controllers:masterUrl", category = { Category.CONTAINER, Category.CLOUD }, headersClass = KubernetesConstants.class) +@BodyTypes(consumerOut = @BodyType(value = Carrier.POJO, javaType = "io.fabric8.kubernetes.api.model.ReplicationController", + description = "The ReplicationController that changed, one message per watch event, with" + + " the action (ADDED, MODIFIED, DELETED) in the CamelKubernetesEventAction" + + " header"), + producerIn = @BodyType(value = Carrier.ANY, + description = "Not used: the operation (the operation option, or else the" + + " CamelKubernetesOperation header) takes its input from headers: the" + + " namespace in CamelKubernetesNamespaceName, the name in" + + " CamelKubernetesReplicationControllerName, the labels in" + + " CamelKubernetesReplicationControllersLabels, the" + + " ReplicationControllerSpec in CamelKubernetesReplicationControllerSpec and" + + " the replicas in CamelKubernetesReplicationControllerReplicas"), + producerOut = @BodyType(value = { Carrier.LIST, Carrier.POJO, Carrier.NULL, Carrier.VALUE }, + byOption = { + @BodyType.When(option = "operation", value = "listReplicationControllers", + carriers = Carrier.LIST, + javaType = "java.util.List<io.fabric8.kubernetes.api.model.ReplicationController>"), + @BodyType.When(option = "operation", value = "listReplicationControllersByLabels", + carriers = Carrier.LIST, + javaType = "java.util.List<io.fabric8.kubernetes.api.model.ReplicationController>"), + @BodyType.When(option = "operation", value = "getReplicationController", + carriers = { Carrier.POJO, Carrier.NULL }, + javaType = "io.fabric8.kubernetes.api.model.ReplicationController"), + @BodyType.When(option = "operation", value = "createReplicationController", + carriers = Carrier.POJO, + javaType = "io.fabric8.kubernetes.api.model.ReplicationController"), + @BodyType.When(option = "operation", value = "updateReplicationController", + carriers = Carrier.POJO, + javaType = "io.fabric8.kubernetes.api.model.ReplicationController"), + @BodyType.When(option = "operation", value = "deleteReplicationController", + carriers = Carrier.VALUE, + javaType = "java.lang.Boolean"), + @BodyType.When(option = "operation", value = "scaleReplicationController", + carriers = Carrier.VALUE, + javaType = "java.lang.Integer") }, + description = "A List of ReplicationController for listReplicationControllers and" + + " listReplicationControllersByLabels; the ReplicationController for" + + " getReplicationController (null when not found)," + + " createReplicationController and updateReplicationController; a Boolean" + + " for deleteReplicationController, false when not found; for" + + " scaleReplicationController the replicas of its status, as an Integer")) public class KubernetesReplicationControllersEndpoint extends AbstractKubernetesEndpoint { public KubernetesReplicationControllersEndpoint(String uri, KubernetesReplicationControllersComponent component, diff --git a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/resources_quota/KubernetesResourcesQuotaEndpoint.java b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/resources_quota/KubernetesResourcesQuotaEndpoint.java index a2fe04e92bf6..7a6bdc1687ca 100644 --- a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/resources_quota/KubernetesResourcesQuotaEndpoint.java +++ b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/resources_quota/KubernetesResourcesQuotaEndpoint.java @@ -23,6 +23,9 @@ import org.apache.camel.Producer; import org.apache.camel.component.kubernetes.AbstractKubernetesEndpoint; import org.apache.camel.component.kubernetes.KubernetesConfiguration; import org.apache.camel.component.kubernetes.KubernetesConstants; +import org.apache.camel.spi.BodyType; +import org.apache.camel.spi.BodyType.Carrier; +import org.apache.camel.spi.BodyTypes; import org.apache.camel.spi.UriEndpoint; import static org.apache.camel.component.kubernetes.KubernetesConstants.SCHEME_RESOURCES_QUOTA; @@ -33,6 +36,37 @@ import static org.apache.camel.component.kubernetes.KubernetesConstants.SCHEME_R @UriEndpoint(firstVersion = "2.17.0", scheme = SCHEME_RESOURCES_QUOTA, title = "Kubernetes Resources Quota", syntax = "kubernetes-resources-quota:masterUrl", producerOnly = true, category = { Category.CONTAINER, Category.CLOUD }, headersClass = KubernetesConstants.class) +@BodyTypes(producerIn = @BodyType(value = Carrier.ANY, + description = "Not used: the operation (the operation option, or else the" + + " CamelKubernetesOperation header) takes its input from headers: the" + + " namespace in CamelKubernetesNamespaceName, the name in" + + " CamelKubernetesResourcesQuotaName, the labels in" + + " CamelKubernetesResourcesQuotaLabels and the ResourceQuotaSpec in" + + " CamelKubernetesResourceQuotaSpec"), + producerOut = @BodyType(value = { Carrier.LIST, Carrier.POJO, Carrier.NULL, Carrier.VALUE }, + byOption = { + @BodyType.When(option = "operation", value = "listResourcesQuota", + carriers = Carrier.LIST, + javaType = "java.util.List<io.fabric8.kubernetes.api.model.ResourceQuota>"), + @BodyType.When(option = "operation", value = "listResourcesQuotaByLabels", + carriers = Carrier.LIST, + javaType = "java.util.List<io.fabric8.kubernetes.api.model.ResourceQuota>"), + @BodyType.When(option = "operation", value = "getResourceQuota", + carriers = { Carrier.POJO, Carrier.NULL }, + javaType = "io.fabric8.kubernetes.api.model.ResourceQuota"), + @BodyType.When(option = "operation", value = "createResourceQuota", + carriers = Carrier.POJO, + javaType = "io.fabric8.kubernetes.api.model.ResourceQuota"), + @BodyType.When(option = "operation", value = "updateResourceQuota", + carriers = Carrier.POJO, + javaType = "io.fabric8.kubernetes.api.model.ResourceQuota"), + @BodyType.When(option = "operation", value = "deleteResourceQuota", + carriers = Carrier.VALUE, + javaType = "java.lang.Boolean") }, + description = "A List of ResourceQuota for listResourcesQuota and" + + " listResourcesQuotaByLabels; the ResourceQuota for getResourceQuota (null" + + " when not found), createResourceQuota and updateResourceQuota; a Boolean" + + " for deleteResourceQuota, false when not found")) public class KubernetesResourcesQuotaEndpoint extends AbstractKubernetesEndpoint { public KubernetesResourcesQuotaEndpoint(String uri, KubernetesResourcesQuotaComponent component, diff --git a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/secrets/KubernetesSecretsEndpoint.java b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/secrets/KubernetesSecretsEndpoint.java index a423bb60ad24..c89cec474e20 100644 --- a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/secrets/KubernetesSecretsEndpoint.java +++ b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/secrets/KubernetesSecretsEndpoint.java @@ -23,6 +23,9 @@ import org.apache.camel.Producer; import org.apache.camel.component.kubernetes.AbstractKubernetesEndpoint; import org.apache.camel.component.kubernetes.KubernetesConfiguration; import org.apache.camel.component.kubernetes.KubernetesConstants; +import org.apache.camel.spi.BodyType; +import org.apache.camel.spi.BodyType.Carrier; +import org.apache.camel.spi.BodyTypes; import org.apache.camel.spi.UriEndpoint; import static org.apache.camel.component.kubernetes.KubernetesConstants.SCHEME_SECRETS; @@ -33,6 +36,32 @@ import static org.apache.camel.component.kubernetes.KubernetesConstants.SCHEME_S @UriEndpoint(firstVersion = "2.17.0", scheme = SCHEME_SECRETS, title = "Kubernetes Secrets", syntax = "kubernetes-secrets:masterUrl", producerOnly = true, category = { Category.CONTAINER, Category.CLOUD }, headersClass = KubernetesConstants.class) +@BodyTypes(producerIn = @BodyType(value = Carrier.ANY, + description = "Not used: the operation (the operation option, or else the" + + " CamelKubernetesOperation header) takes its input from headers: the" + + " namespace in CamelKubernetesNamespaceName, the name in" + + " CamelKubernetesSecretName, the labels in CamelKubernetesSecretsLabels and" + + " the Secret to create or update in CamelKubernetesSecret"), + producerOut = @BodyType(value = { Carrier.LIST, Carrier.POJO, Carrier.NULL, Carrier.VALUE }, + byOption = { + @BodyType.When(option = "operation", value = "listSecrets", carriers = Carrier.LIST, + javaType = "java.util.List<io.fabric8.kubernetes.api.model.Secret>"), + @BodyType.When(option = "operation", value = "listSecretsByLabels", + carriers = Carrier.LIST, + javaType = "java.util.List<io.fabric8.kubernetes.api.model.Secret>"), + @BodyType.When(option = "operation", value = "getSecret", + carriers = { Carrier.POJO, Carrier.NULL }, + javaType = "io.fabric8.kubernetes.api.model.Secret"), + @BodyType.When(option = "operation", value = "createSecret", carriers = Carrier.POJO, + javaType = "io.fabric8.kubernetes.api.model.Secret"), + @BodyType.When(option = "operation", value = "updateSecret", carriers = Carrier.POJO, + javaType = "io.fabric8.kubernetes.api.model.Secret"), + @BodyType.When(option = "operation", value = "deleteSecret", + carriers = Carrier.VALUE, + javaType = "java.lang.Boolean") }, + description = "A List of Secret for listSecrets and listSecretsByLabels; the Secret for" + + " getSecret (null when not found), createSecret and updateSecret; a" + + " Boolean for deleteSecret, false when not found")) public class KubernetesSecretsEndpoint extends AbstractKubernetesEndpoint { public KubernetesSecretsEndpoint(String uri, KubernetesSecretsComponent component, KubernetesConfiguration config) { diff --git a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/service_accounts/KubernetesServiceAccountsEndpoint.java b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/service_accounts/KubernetesServiceAccountsEndpoint.java index ea53b56f4abc..0f859e279a22 100644 --- a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/service_accounts/KubernetesServiceAccountsEndpoint.java +++ b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/service_accounts/KubernetesServiceAccountsEndpoint.java @@ -23,6 +23,9 @@ import org.apache.camel.Producer; import org.apache.camel.component.kubernetes.AbstractKubernetesEndpoint; import org.apache.camel.component.kubernetes.KubernetesConfiguration; import org.apache.camel.component.kubernetes.KubernetesConstants; +import org.apache.camel.spi.BodyType; +import org.apache.camel.spi.BodyType.Carrier; +import org.apache.camel.spi.BodyTypes; import org.apache.camel.spi.UriEndpoint; import static org.apache.camel.component.kubernetes.KubernetesConstants.SCHEME_SERVICE_ACCOUNTS; @@ -33,6 +36,37 @@ import static org.apache.camel.component.kubernetes.KubernetesConstants.SCHEME_S @UriEndpoint(firstVersion = "2.17.0", scheme = SCHEME_SERVICE_ACCOUNTS, title = "Kubernetes Service Account", syntax = "kubernetes-service-accounts:masterUrl", producerOnly = true, category = { Category.CONTAINER, Category.CLOUD }, headersClass = KubernetesConstants.class) +@BodyTypes(producerIn = @BodyType(value = Carrier.ANY, + description = "Not used: the operation (the operation option, or else the" + + " CamelKubernetesOperation header) takes its input from headers: the" + + " namespace in CamelKubernetesNamespaceName, the name in" + + " CamelKubernetesServiceAccountName, the labels in" + + " CamelKubernetesServiceAccountsLabels and the ServiceAccount to create or" + + " update in CamelKubernetesServiceAccount"), + producerOut = @BodyType(value = { Carrier.LIST, Carrier.POJO, Carrier.NULL, Carrier.VALUE }, + byOption = { + @BodyType.When(option = "operation", value = "listServiceAccounts", + carriers = Carrier.LIST, + javaType = "java.util.List<io.fabric8.kubernetes.api.model.ServiceAccount>"), + @BodyType.When(option = "operation", value = "listServiceAccountsByLabels", + carriers = Carrier.LIST, + javaType = "java.util.List<io.fabric8.kubernetes.api.model.ServiceAccount>"), + @BodyType.When(option = "operation", value = "getServiceAccount", + carriers = { Carrier.POJO, Carrier.NULL }, + javaType = "io.fabric8.kubernetes.api.model.ServiceAccount"), + @BodyType.When(option = "operation", value = "createServiceAccount", + carriers = Carrier.POJO, + javaType = "io.fabric8.kubernetes.api.model.ServiceAccount"), + @BodyType.When(option = "operation", value = "updateServiceAccount", + carriers = Carrier.POJO, + javaType = "io.fabric8.kubernetes.api.model.ServiceAccount"), + @BodyType.When(option = "operation", value = "deleteServiceAccount", + carriers = Carrier.VALUE, + javaType = "java.lang.Boolean") }, + description = "A List of ServiceAccount for listServiceAccounts and" + + " listServiceAccountsByLabels; the ServiceAccount for getServiceAccount" + + " (null when not found), createServiceAccount and updateServiceAccount; a" + + " Boolean for deleteServiceAccount, false when not found")) public class KubernetesServiceAccountsEndpoint extends AbstractKubernetesEndpoint { public KubernetesServiceAccountsEndpoint(String uri, KubernetesServiceAccountsComponent component, diff --git a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/services/KubernetesServicesEndpoint.java b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/services/KubernetesServicesEndpoint.java index 8ca60ded94d9..0cfa75d4d5df 100644 --- a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/services/KubernetesServicesEndpoint.java +++ b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/services/KubernetesServicesEndpoint.java @@ -23,6 +23,9 @@ import org.apache.camel.Producer; import org.apache.camel.component.kubernetes.AbstractKubernetesEndpoint; import org.apache.camel.component.kubernetes.KubernetesConfiguration; import org.apache.camel.component.kubernetes.KubernetesConstants; +import org.apache.camel.spi.BodyType; +import org.apache.camel.spi.BodyType.Carrier; +import org.apache.camel.spi.BodyTypes; import org.apache.camel.spi.UriEndpoint; import static org.apache.camel.component.kubernetes.KubernetesConstants.SCHEME_SERVICES; @@ -33,6 +36,37 @@ import static org.apache.camel.component.kubernetes.KubernetesConstants.SCHEME_S @UriEndpoint(firstVersion = "2.17.0", scheme = SCHEME_SERVICES, title = "Kubernetes Services", syntax = "kubernetes-services:masterUrl", category = { Category.CONTAINER, Category.CLOUD }, headersClass = KubernetesConstants.class) +@BodyTypes(consumerOut = @BodyType(value = Carrier.POJO, javaType = "io.fabric8.kubernetes.api.model.Service", + description = "The Service that changed, one message per watch event, with the action" + + " (ADDED, MODIFIED, DELETED) in the CamelKubernetesEventAction header"), + producerIn = @BodyType(value = Carrier.ANY, + description = "Not used: the operation (the operation option, or else the" + + " CamelKubernetesOperation header) takes its input from headers: the" + + " namespace in CamelKubernetesNamespaceName, the name in" + + " CamelKubernetesServiceName, the labels in CamelKubernetesServiceLabels" + + " and the ServiceSpec in CamelKubernetesServiceSpec"), + producerOut = @BodyType(value = { Carrier.LIST, Carrier.POJO, Carrier.NULL, Carrier.VALUE }, + byOption = { + @BodyType.When(option = "operation", value = "listServices", carriers = Carrier.LIST, + javaType = "java.util.List<io.fabric8.kubernetes.api.model.Service>"), + @BodyType.When(option = "operation", value = "listServicesByLabels", + carriers = Carrier.LIST, + javaType = "java.util.List<io.fabric8.kubernetes.api.model.Service>"), + @BodyType.When(option = "operation", value = "getService", + carriers = { Carrier.POJO, Carrier.NULL }, + javaType = "io.fabric8.kubernetes.api.model.Service"), + @BodyType.When(option = "operation", value = "createService", + carriers = Carrier.POJO, + javaType = "io.fabric8.kubernetes.api.model.Service"), + @BodyType.When(option = "operation", value = "updateService", + carriers = Carrier.POJO, + javaType = "io.fabric8.kubernetes.api.model.Service"), + @BodyType.When(option = "operation", value = "deleteService", + carriers = Carrier.VALUE, + javaType = "java.lang.Boolean") }, + description = "A List of Service for listServices and listServicesByLabels; the Service" + + " for getService (null when not found), createService and updateService; a" + + " Boolean for deleteService, false when not found")) public class KubernetesServicesEndpoint extends AbstractKubernetesEndpoint { public KubernetesServicesEndpoint(String uri, KubernetesServicesComponent component, KubernetesConfiguration config) { diff --git a/components/camel-kubernetes/src/main/java/org/apache/camel/component/openshift/build_configs/OpenshiftBuildConfigsEndpoint.java b/components/camel-kubernetes/src/main/java/org/apache/camel/component/openshift/build_configs/OpenshiftBuildConfigsEndpoint.java index e7467fada1d6..7be032e4843f 100644 --- a/components/camel-kubernetes/src/main/java/org/apache/camel/component/openshift/build_configs/OpenshiftBuildConfigsEndpoint.java +++ b/components/camel-kubernetes/src/main/java/org/apache/camel/component/openshift/build_configs/OpenshiftBuildConfigsEndpoint.java @@ -23,6 +23,9 @@ import org.apache.camel.Producer; import org.apache.camel.component.kubernetes.AbstractKubernetesEndpoint; import org.apache.camel.component.kubernetes.KubernetesConfiguration; import org.apache.camel.component.kubernetes.KubernetesConstants; +import org.apache.camel.spi.BodyType; +import org.apache.camel.spi.BodyType.Carrier; +import org.apache.camel.spi.BodyTypes; import org.apache.camel.spi.UriEndpoint; import static org.apache.camel.component.kubernetes.KubernetesConstants.SCHEME_BUILD_CONFIG; @@ -34,6 +37,26 @@ import static org.apache.camel.component.kubernetes.KubernetesConstants.SCHEME_B syntax = "openshift-build-configs:masterUrl", producerOnly = true, category = { Category.CONTAINER, Category.CLOUD }, headersClass = KubernetesConstants.class) +@BodyTypes(producerIn = @BodyType(value = Carrier.ANY, + description = "Not used: the operation (the operation option, or else the" + + " CamelKubernetesOperation header) takes its input from headers: the" + + " namespace in CamelKubernetesNamespaceName, the name in" + + " CamelKubernetesBuildConfigName and the labels in" + + " CamelKubernetesBuildConfigsLabels. listBuildConfigs does not read the" + + " namespace header: it lists the build configs of all namespaces"), + producerOut = @BodyType(value = { Carrier.LIST, Carrier.POJO, Carrier.NULL }, + byOption = { + @BodyType.When(option = "operation", value = "listBuildConfigs", + carriers = Carrier.LIST, + javaType = "java.util.List<io.fabric8.openshift.api.model.BuildConfig>"), + @BodyType.When(option = "operation", value = "listBuildConfigsByLabels", + carriers = Carrier.LIST, + javaType = "java.util.List<io.fabric8.openshift.api.model.BuildConfig>"), + @BodyType.When(option = "operation", value = "getBuildConfig", + carriers = { Carrier.POJO, Carrier.NULL }, + javaType = "io.fabric8.openshift.api.model.BuildConfig") }, + description = "A List of BuildConfig for listBuildConfigs and listBuildConfigsByLabels;" + + " the BuildConfig for getBuildConfig (null when not found)")) public class OpenshiftBuildConfigsEndpoint extends AbstractKubernetesEndpoint { public OpenshiftBuildConfigsEndpoint(String uri, OpenshiftBuildConfigsComponent component, KubernetesConfiguration config) { diff --git a/components/camel-kubernetes/src/main/java/org/apache/camel/component/openshift/builds/OpenshiftBuildsEndpoint.java b/components/camel-kubernetes/src/main/java/org/apache/camel/component/openshift/builds/OpenshiftBuildsEndpoint.java index c4f3a95b08cc..6ca7f6290ebf 100644 --- a/components/camel-kubernetes/src/main/java/org/apache/camel/component/openshift/builds/OpenshiftBuildsEndpoint.java +++ b/components/camel-kubernetes/src/main/java/org/apache/camel/component/openshift/builds/OpenshiftBuildsEndpoint.java @@ -23,6 +23,9 @@ import org.apache.camel.Producer; import org.apache.camel.component.kubernetes.AbstractKubernetesEndpoint; import org.apache.camel.component.kubernetes.KubernetesConfiguration; import org.apache.camel.component.kubernetes.KubernetesConstants; +import org.apache.camel.spi.BodyType; +import org.apache.camel.spi.BodyType.Carrier; +import org.apache.camel.spi.BodyTypes; import org.apache.camel.spi.UriEndpoint; import static org.apache.camel.component.kubernetes.KubernetesConstants.SCHEME_BUILDS; @@ -34,6 +37,24 @@ import static org.apache.camel.component.kubernetes.KubernetesConstants.SCHEME_B syntax = "openshift-builds:masterUrl", producerOnly = true, category = { Category.CONTAINER, Category.CLOUD }, headersClass = KubernetesConstants.class) +@BodyTypes(producerIn = @BodyType(value = Carrier.ANY, + description = "Not used: the operation (the operation option, or else the" + + " CamelKubernetesOperation header) takes its input from headers: the" + + " namespace in CamelKubernetesNamespaceName, the name in" + + " CamelKubernetesBuildName and the labels in CamelKubernetesBuildsLabels. listBuilds does not" + + " read the namespace header: it lists the builds of all namespaces"), + producerOut = @BodyType(value = { Carrier.LIST, Carrier.POJO, Carrier.NULL }, + byOption = { + @BodyType.When(option = "operation", value = "listBuilds", carriers = Carrier.LIST, + javaType = "java.util.List<io.fabric8.openshift.api.model.Build>"), + @BodyType.When(option = "operation", value = "listBuildsByLabels", + carriers = Carrier.LIST, + javaType = "java.util.List<io.fabric8.openshift.api.model.Build>"), + @BodyType.When(option = "operation", value = "getBuild", + carriers = { Carrier.POJO, Carrier.NULL }, + javaType = "io.fabric8.openshift.api.model.Build") }, + description = "A List of Build for listBuilds and listBuildsByLabels; the Build for" + + " getBuild (null when not found)")) public class OpenshiftBuildsEndpoint extends AbstractKubernetesEndpoint { public OpenshiftBuildsEndpoint(String uri, OpenshiftBuildsComponent component, KubernetesConfiguration config) { diff --git a/components/camel-kubernetes/src/main/java/org/apache/camel/component/openshift/deploymentconfigs/OpenshiftDeploymentConfigsEndpoint.java b/components/camel-kubernetes/src/main/java/org/apache/camel/component/openshift/deploymentconfigs/OpenshiftDeploymentConfigsEndpoint.java index c2a696dd54e0..61dc7ce73a66 100644 --- a/components/camel-kubernetes/src/main/java/org/apache/camel/component/openshift/deploymentconfigs/OpenshiftDeploymentConfigsEndpoint.java +++ b/components/camel-kubernetes/src/main/java/org/apache/camel/component/openshift/deploymentconfigs/OpenshiftDeploymentConfigsEndpoint.java @@ -23,6 +23,9 @@ import org.apache.camel.Producer; import org.apache.camel.component.kubernetes.AbstractKubernetesEndpoint; import org.apache.camel.component.kubernetes.KubernetesConfiguration; import org.apache.camel.component.kubernetes.KubernetesConstants; +import org.apache.camel.spi.BodyType; +import org.apache.camel.spi.BodyType.Carrier; +import org.apache.camel.spi.BodyTypes; import org.apache.camel.spi.UriEndpoint; import static org.apache.camel.component.kubernetes.KubernetesConstants.SCHEME_DEPLOYMENT_CONFIGS; @@ -33,6 +36,48 @@ import static org.apache.camel.component.kubernetes.KubernetesConstants.SCHEME_D @UriEndpoint(firstVersion = "3.18.0", scheme = SCHEME_DEPLOYMENT_CONFIGS, title = "OpenShift Deployment Configs", syntax = "openshift-deploymentconfigs:masterUrl", category = { Category.CONTAINER, Category.CLOUD }, headersClass = KubernetesConstants.class) +@BodyTypes(consumerOut = @BodyType(value = Carrier.POJO, javaType = "io.fabric8.openshift.api.model.DeploymentConfig", + description = "The DeploymentConfig that changed, one message per watch event, with the" + + " action (ADDED, MODIFIED, DELETED) in the CamelKubernetesEventAction" + + " header"), + producerIn = @BodyType(value = Carrier.ANY, + description = "Not used: the operation (the operation option, or else the" + + " CamelKubernetesOperation header) takes its input from headers: the" + + " namespace in CamelKubernetesNamespaceName, the name in" + + " CamelKubernetesDeploymentName, the labels in" + + " CamelKubernetesDeploymentsLabels, the DeploymentConfigSpec in" + + " CamelKubernetesDeploymentConfigSpec and the replicas in" + + " CamelKubernetesDeploymentReplicas. The list and get operations do not read the namespace" + + " header: they use the namespace of the client"), + producerOut = @BodyType(value = { Carrier.LIST, Carrier.POJO, Carrier.NULL, Carrier.VALUE }, + byOption = { + @BodyType.When(option = "operation", value = "listDeploymentConfigs", + carriers = Carrier.LIST, + javaType = "java.util.List<io.fabric8.openshift.api.model.DeploymentConfig>"), + @BodyType.When(option = "operation", value = "listDeploymentConfigsByLabels", + carriers = Carrier.LIST, + javaType = "java.util.List<io.fabric8.openshift.api.model.DeploymentConfig>"), + @BodyType.When(option = "operation", value = "getDeploymentConfig", + carriers = { Carrier.POJO, Carrier.NULL }, + javaType = "io.fabric8.openshift.api.model.DeploymentConfig"), + @BodyType.When(option = "operation", value = "createDeploymentConfig", + carriers = Carrier.POJO, + javaType = "io.fabric8.openshift.api.model.DeploymentConfig"), + @BodyType.When(option = "operation", value = "updateDeploymentConfig", + carriers = Carrier.POJO, + javaType = "io.fabric8.openshift.api.model.DeploymentConfig"), + @BodyType.When(option = "operation", value = "deleteDeploymentConfig", + carriers = Carrier.VALUE, + javaType = "java.lang.Boolean"), + @BodyType.When(option = "operation", value = "scaleDeploymentConfig", + carriers = Carrier.VALUE, + javaType = "java.lang.Integer") }, + description = "A List of DeploymentConfig for listDeploymentConfigs and" + + " listDeploymentConfigsByLabels; the DeploymentConfig for" + + " getDeploymentConfig (null when not found), createDeploymentConfig and" + + " updateDeploymentConfig; a Boolean for deleteDeploymentConfig, false when" + + " not found; for scaleDeploymentConfig the replicas of its status, as an" + + " Integer")) public class OpenshiftDeploymentConfigsEndpoint extends AbstractKubernetesEndpoint { public OpenshiftDeploymentConfigsEndpoint(String uri, OpenshiftDeploymentConfigsComponent component,
