You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ac...@apache.org on 2021/02/24 14:23:11 UTC

[camel] 01/05: CAMEL-16115 - Remove Camel-AWS-* components - AWS-CW

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

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

commit a3571df66b36355b6f4019963c329f39e2b11010
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Wed Feb 24 14:51:05 2021 +0100

     CAMEL-16115 - Remove Camel-AWS-* components - AWS-CW
---
 components/camel-aws-cw/pom.xml                    |  77 --------
 .../component/aws/cw/CwComponentConfigurer.java    | 122 ------------
 .../component/aws/cw/CwEndpointConfigurer.java     | 106 ----------
 .../component/aws/cw/CwEndpointUriFactory.java     |  77 --------
 .../services/org/apache/camel/component.properties |   7 -
 .../services/org/apache/camel/component/aws-cw     |   2 -
 .../org/apache/camel/configurer/aws-cw-component   |   2 -
 .../org/apache/camel/configurer/aws-cw-endpoint    |   2 -
 .../org/apache/camel/urifactory/aws-cw-endpoint    |   2 -
 .../org/apache/camel/component/aws/cw/aws-cw.json  |  58 ------
 .../src/main/docs/aws-cw-component.adoc            | 200 -------------------
 .../camel-aws-cw/src/main/docs/aws-summary.adoc    |  14 --
 .../apache/camel/component/aws/cw/CwComponent.java |  84 --------
 .../aws/cw/CwComponentVerifierExtension.java       |  91 ---------
 .../camel/component/aws/cw/CwConfiguration.java    | 216 ---------------------
 .../apache/camel/component/aws/cw/CwConstants.java |  31 ---
 .../apache/camel/component/aws/cw/CwEndpoint.java  | 131 -------------
 .../apache/camel/component/aws/cw/CwProducer.java  | 157 ---------------
 .../aws/cw/CwComponentConfigurationTest.java       | 117 -----------
 .../aws/cw/CwComponentRegistryClientTest.java      |  82 --------
 .../camel/component/aws/cw/CwComponentTest.java    | 140 -------------
 .../aws/cw/CwComponentVerifierExtensionTest.java   |  74 -------
 .../cw/integration/CwComponentIntegrationTest.java |  62 ------
 .../src/test/resources/log4j2.properties           |  28 ---
 components/pom.xml                                 |   1 -
 25 files changed, 1883 deletions(-)

diff --git a/components/camel-aws-cw/pom.xml b/components/camel-aws-cw/pom.xml
deleted file mode 100644
index b2ccb4f..0000000
--- a/components/camel-aws-cw/pom.xml
+++ /dev/null
@@ -1,77 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-
-         http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
-
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-    <modelVersion>4.0.0</modelVersion>
-
-    <parent>
-        <groupId>org.apache.camel</groupId>
-        <artifactId>components</artifactId>
-        <version>3.9.0-SNAPSHOT</version>
-    </parent>
-
-    <artifactId>camel-aws-cw</artifactId>
-    <packaging>jar</packaging>
-
-    <name>Camel :: AWS CW (deprecated)</name>
-    <description>A Camel Amazon CW Web Service Component</description>
-
-    <properties>
-        <deprecatedSince>3.8.0</deprecatedSince>
-    </properties>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.apache.camel</groupId>
-            <artifactId>camel-support</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>com.amazonaws</groupId>
-            <artifactId>aws-java-sdk-cloudwatch</artifactId>
-            <version>${aws-java-sdk-version}</version>
-        </dependency>
-
-        <!-- for testing -->
-        <dependency>
-            <groupId>org.junit.jupiter</groupId>
-            <artifactId>junit-jupiter</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.camel</groupId>
-            <artifactId>camel-test-spring-junit5</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.camel</groupId>
-            <artifactId>camel-core-catalog</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.logging.log4j</groupId>
-            <artifactId>log4j-slf4j-impl</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.mockito</groupId>
-            <artifactId>mockito-junit-jupiter</artifactId>
-            <scope>test</scope>
-        </dependency>
-    </dependencies>
-</project>
diff --git a/components/camel-aws-cw/src/generated/java/org/apache/camel/component/aws/cw/CwComponentConfigurer.java b/components/camel-aws-cw/src/generated/java/org/apache/camel/component/aws/cw/CwComponentConfigurer.java
deleted file mode 100644
index c4ead0a..0000000
--- a/components/camel-aws-cw/src/generated/java/org/apache/camel/component/aws/cw/CwComponentConfigurer.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/* Generated by camel build tools - do NOT edit this file! */
-package org.apache.camel.component.aws.cw;
-
-import java.util.Map;
-
-import org.apache.camel.CamelContext;
-import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
-import org.apache.camel.spi.PropertyConfigurerGetter;
-import org.apache.camel.spi.ConfigurerStrategy;
-import org.apache.camel.spi.GeneratedPropertyConfigurer;
-import org.apache.camel.util.CaseInsensitiveMap;
-import org.apache.camel.support.component.PropertyConfigurerSupport;
-
-/**
- * Generated by camel build tools - do NOT edit this file!
- */
-@SuppressWarnings("unchecked")
-public class CwComponentConfigurer extends PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter {
-
-    private org.apache.camel.component.aws.cw.CwConfiguration getOrCreateConfiguration(CwComponent target) {
-        if (target.getConfiguration() == null) {
-            target.setConfiguration(new org.apache.camel.component.aws.cw.CwConfiguration());
-        }
-        return target.getConfiguration();
-    }
-
-    @Override
-    public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) {
-        CwComponent target = (CwComponent) obj;
-        switch (ignoreCase ? name.toLowerCase() : name) {
-        case "accesskey":
-        case "accessKey": getOrCreateConfiguration(target).setAccessKey(property(camelContext, java.lang.String.class, value)); return true;
-        case "amazoncwclient":
-        case "amazonCwClient": getOrCreateConfiguration(target).setAmazonCwClient(property(camelContext, com.amazonaws.services.cloudwatch.AmazonCloudWatch.class, value)); return true;
-        case "autodiscoverclient":
-        case "autoDiscoverClient": getOrCreateConfiguration(target).setAutoDiscoverClient(property(camelContext, boolean.class, value)); return true;
-        case "autowiredenabled":
-        case "autowiredEnabled": target.setAutowiredEnabled(property(camelContext, boolean.class, value)); return true;
-        case "configuration": target.setConfiguration(property(camelContext, org.apache.camel.component.aws.cw.CwConfiguration.class, value)); return true;
-        case "lazystartproducer":
-        case "lazyStartProducer": target.setLazyStartProducer(property(camelContext, boolean.class, value)); return true;
-        case "name": getOrCreateConfiguration(target).setName(property(camelContext, java.lang.String.class, value)); return true;
-        case "proxyhost":
-        case "proxyHost": getOrCreateConfiguration(target).setProxyHost(property(camelContext, java.lang.String.class, value)); return true;
-        case "proxyport":
-        case "proxyPort": getOrCreateConfiguration(target).setProxyPort(property(camelContext, java.lang.Integer.class, value)); return true;
-        case "proxyprotocol":
-        case "proxyProtocol": getOrCreateConfiguration(target).setProxyProtocol(property(camelContext, com.amazonaws.Protocol.class, value)); return true;
-        case "region": getOrCreateConfiguration(target).setRegion(property(camelContext, java.lang.String.class, value)); return true;
-        case "secretkey":
-        case "secretKey": getOrCreateConfiguration(target).setSecretKey(property(camelContext, java.lang.String.class, value)); return true;
-        case "timestamp": getOrCreateConfiguration(target).setTimestamp(property(camelContext, java.util.Date.class, value)); return true;
-        case "unit": getOrCreateConfiguration(target).setUnit(property(camelContext, java.lang.String.class, value)); return true;
-        case "value": getOrCreateConfiguration(target).setValue(property(camelContext, java.lang.Double.class, value)); return true;
-        default: return false;
-        }
-    }
-
-    @Override
-    public Class<?> getOptionType(String name, boolean ignoreCase) {
-        switch (ignoreCase ? name.toLowerCase() : name) {
-        case "accesskey":
-        case "accessKey": return java.lang.String.class;
-        case "amazoncwclient":
-        case "amazonCwClient": return com.amazonaws.services.cloudwatch.AmazonCloudWatch.class;
-        case "autodiscoverclient":
-        case "autoDiscoverClient": return boolean.class;
-        case "autowiredenabled":
-        case "autowiredEnabled": return boolean.class;
-        case "configuration": return org.apache.camel.component.aws.cw.CwConfiguration.class;
-        case "lazystartproducer":
-        case "lazyStartProducer": return boolean.class;
-        case "name": return java.lang.String.class;
-        case "proxyhost":
-        case "proxyHost": return java.lang.String.class;
-        case "proxyport":
-        case "proxyPort": return java.lang.Integer.class;
-        case "proxyprotocol":
-        case "proxyProtocol": return com.amazonaws.Protocol.class;
-        case "region": return java.lang.String.class;
-        case "secretkey":
-        case "secretKey": return java.lang.String.class;
-        case "timestamp": return java.util.Date.class;
-        case "unit": return java.lang.String.class;
-        case "value": return java.lang.Double.class;
-        default: return null;
-        }
-    }
-
-    @Override
-    public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
-        CwComponent target = (CwComponent) obj;
-        switch (ignoreCase ? name.toLowerCase() : name) {
-        case "accesskey":
-        case "accessKey": return getOrCreateConfiguration(target).getAccessKey();
-        case "amazoncwclient":
-        case "amazonCwClient": return getOrCreateConfiguration(target).getAmazonCwClient();
-        case "autodiscoverclient":
-        case "autoDiscoverClient": return getOrCreateConfiguration(target).isAutoDiscoverClient();
-        case "autowiredenabled":
-        case "autowiredEnabled": return target.isAutowiredEnabled();
-        case "configuration": return target.getConfiguration();
-        case "lazystartproducer":
-        case "lazyStartProducer": return target.isLazyStartProducer();
-        case "name": return getOrCreateConfiguration(target).getName();
-        case "proxyhost":
-        case "proxyHost": return getOrCreateConfiguration(target).getProxyHost();
-        case "proxyport":
-        case "proxyPort": return getOrCreateConfiguration(target).getProxyPort();
-        case "proxyprotocol":
-        case "proxyProtocol": return getOrCreateConfiguration(target).getProxyProtocol();
-        case "region": return getOrCreateConfiguration(target).getRegion();
-        case "secretkey":
-        case "secretKey": return getOrCreateConfiguration(target).getSecretKey();
-        case "timestamp": return getOrCreateConfiguration(target).getTimestamp();
-        case "unit": return getOrCreateConfiguration(target).getUnit();
-        case "value": return getOrCreateConfiguration(target).getValue();
-        default: return null;
-        }
-    }
-}
-
diff --git a/components/camel-aws-cw/src/generated/java/org/apache/camel/component/aws/cw/CwEndpointConfigurer.java b/components/camel-aws-cw/src/generated/java/org/apache/camel/component/aws/cw/CwEndpointConfigurer.java
deleted file mode 100644
index 01986a7..0000000
--- a/components/camel-aws-cw/src/generated/java/org/apache/camel/component/aws/cw/CwEndpointConfigurer.java
+++ /dev/null
@@ -1,106 +0,0 @@
-/* Generated by camel build tools - do NOT edit this file! */
-package org.apache.camel.component.aws.cw;
-
-import java.util.Map;
-
-import org.apache.camel.CamelContext;
-import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
-import org.apache.camel.spi.PropertyConfigurerGetter;
-import org.apache.camel.spi.ConfigurerStrategy;
-import org.apache.camel.spi.GeneratedPropertyConfigurer;
-import org.apache.camel.util.CaseInsensitiveMap;
-import org.apache.camel.support.component.PropertyConfigurerSupport;
-
-/**
- * Generated by camel build tools - do NOT edit this file!
- */
-@SuppressWarnings("unchecked")
-public class CwEndpointConfigurer extends PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter {
-
-    @Override
-    public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) {
-        CwEndpoint target = (CwEndpoint) obj;
-        switch (ignoreCase ? name.toLowerCase() : name) {
-        case "accesskey":
-        case "accessKey": target.getConfiguration().setAccessKey(property(camelContext, java.lang.String.class, value)); return true;
-        case "amazoncwclient":
-        case "amazonCwClient": target.getConfiguration().setAmazonCwClient(property(camelContext, com.amazonaws.services.cloudwatch.AmazonCloudWatch.class, value)); return true;
-        case "autodiscoverclient":
-        case "autoDiscoverClient": target.getConfiguration().setAutoDiscoverClient(property(camelContext, boolean.class, value)); return true;
-        case "lazystartproducer":
-        case "lazyStartProducer": target.setLazyStartProducer(property(camelContext, boolean.class, value)); return true;
-        case "name": target.getConfiguration().setName(property(camelContext, java.lang.String.class, value)); return true;
-        case "proxyhost":
-        case "proxyHost": target.getConfiguration().setProxyHost(property(camelContext, java.lang.String.class, value)); return true;
-        case "proxyport":
-        case "proxyPort": target.getConfiguration().setProxyPort(property(camelContext, java.lang.Integer.class, value)); return true;
-        case "proxyprotocol":
-        case "proxyProtocol": target.getConfiguration().setProxyProtocol(property(camelContext, com.amazonaws.Protocol.class, value)); return true;
-        case "region": target.getConfiguration().setRegion(property(camelContext, java.lang.String.class, value)); return true;
-        case "secretkey":
-        case "secretKey": target.getConfiguration().setSecretKey(property(camelContext, java.lang.String.class, value)); return true;
-        case "timestamp": target.getConfiguration().setTimestamp(property(camelContext, java.util.Date.class, value)); return true;
-        case "unit": target.getConfiguration().setUnit(property(camelContext, java.lang.String.class, value)); return true;
-        case "value": target.getConfiguration().setValue(property(camelContext, java.lang.Double.class, value)); return true;
-        default: return false;
-        }
-    }
-
-    @Override
-    public Class<?> getOptionType(String name, boolean ignoreCase) {
-        switch (ignoreCase ? name.toLowerCase() : name) {
-        case "accesskey":
-        case "accessKey": return java.lang.String.class;
-        case "amazoncwclient":
-        case "amazonCwClient": return com.amazonaws.services.cloudwatch.AmazonCloudWatch.class;
-        case "autodiscoverclient":
-        case "autoDiscoverClient": return boolean.class;
-        case "lazystartproducer":
-        case "lazyStartProducer": return boolean.class;
-        case "name": return java.lang.String.class;
-        case "proxyhost":
-        case "proxyHost": return java.lang.String.class;
-        case "proxyport":
-        case "proxyPort": return java.lang.Integer.class;
-        case "proxyprotocol":
-        case "proxyProtocol": return com.amazonaws.Protocol.class;
-        case "region": return java.lang.String.class;
-        case "secretkey":
-        case "secretKey": return java.lang.String.class;
-        case "timestamp": return java.util.Date.class;
-        case "unit": return java.lang.String.class;
-        case "value": return java.lang.Double.class;
-        default: return null;
-        }
-    }
-
-    @Override
-    public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
-        CwEndpoint target = (CwEndpoint) obj;
-        switch (ignoreCase ? name.toLowerCase() : name) {
-        case "accesskey":
-        case "accessKey": return target.getConfiguration().getAccessKey();
-        case "amazoncwclient":
-        case "amazonCwClient": return target.getConfiguration().getAmazonCwClient();
-        case "autodiscoverclient":
-        case "autoDiscoverClient": return target.getConfiguration().isAutoDiscoverClient();
-        case "lazystartproducer":
-        case "lazyStartProducer": return target.isLazyStartProducer();
-        case "name": return target.getConfiguration().getName();
-        case "proxyhost":
-        case "proxyHost": return target.getConfiguration().getProxyHost();
-        case "proxyport":
-        case "proxyPort": return target.getConfiguration().getProxyPort();
-        case "proxyprotocol":
-        case "proxyProtocol": return target.getConfiguration().getProxyProtocol();
-        case "region": return target.getConfiguration().getRegion();
-        case "secretkey":
-        case "secretKey": return target.getConfiguration().getSecretKey();
-        case "timestamp": return target.getConfiguration().getTimestamp();
-        case "unit": return target.getConfiguration().getUnit();
-        case "value": return target.getConfiguration().getValue();
-        default: return null;
-        }
-    }
-}
-
diff --git a/components/camel-aws-cw/src/generated/java/org/apache/camel/component/aws/cw/CwEndpointUriFactory.java b/components/camel-aws-cw/src/generated/java/org/apache/camel/component/aws/cw/CwEndpointUriFactory.java
deleted file mode 100644
index c66bf6b..0000000
--- a/components/camel-aws-cw/src/generated/java/org/apache/camel/component/aws/cw/CwEndpointUriFactory.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/* Generated by camel build tools - do NOT edit this file! */
-package org.apache.camel.component.aws.cw;
-
-import java.net.URISyntaxException;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
-import org.apache.camel.spi.EndpointUriFactory;
-
-/**
- * Generated by camel build tools - do NOT edit this file!
- */
-public class CwEndpointUriFactory extends org.apache.camel.support.component.EndpointUriFactorySupport implements EndpointUriFactory {
-
-    private static final String BASE = ":namespace";
-
-    private static final Set<String> PROPERTY_NAMES;
-    private static final Set<String> SECRET_PROPERTY_NAMES;
-    static {
-        Set<String> props = new HashSet<>(14);
-        props.add("autoDiscoverClient");
-        props.add("proxyProtocol");
-        props.add("secretKey");
-        props.add("amazonCwClient");
-        props.add("proxyHost");
-        props.add("proxyPort");
-        props.add("lazyStartProducer");
-        props.add("unit");
-        props.add("accessKey");
-        props.add("namespace");
-        props.add("name");
-        props.add("region");
-        props.add("value");
-        props.add("timestamp");
-        PROPERTY_NAMES = Collections.unmodifiableSet(props);
-        Set<String> secretProps = new HashSet<>(2);
-        secretProps.add("secretKey");
-        secretProps.add("accessKey");
-        SECRET_PROPERTY_NAMES = Collections.unmodifiableSet(secretProps);
-    }
-
-    @Override
-    public boolean isEnabled(String scheme) {
-        return "aws-cw".equals(scheme);
-    }
-
-    @Override
-    public String buildUri(String scheme, Map<String, Object> properties, boolean encode) throws URISyntaxException {
-        String syntax = scheme + BASE;
-        String uri = syntax;
-
-        Map<String, Object> copy = new HashMap<>(properties);
-
-        uri = buildPathParameter(syntax, uri, "namespace", null, true, copy);
-        uri = buildQueryParameters(uri, copy, encode);
-        return uri;
-    }
-
-    @Override
-    public Set<String> propertyNames() {
-        return PROPERTY_NAMES;
-    }
-
-    @Override
-    public Set<String> secretPropertyNames() {
-        return SECRET_PROPERTY_NAMES;
-    }
-
-    @Override
-    public boolean isLenientProperties() {
-        return false;
-    }
-}
-
diff --git a/components/camel-aws-cw/src/generated/resources/META-INF/services/org/apache/camel/component.properties b/components/camel-aws-cw/src/generated/resources/META-INF/services/org/apache/camel/component.properties
deleted file mode 100644
index 4252777..0000000
--- a/components/camel-aws-cw/src/generated/resources/META-INF/services/org/apache/camel/component.properties
+++ /dev/null
@@ -1,7 +0,0 @@
-# Generated by camel build tools - do NOT edit this file!
-components=aws-cw
-groupId=org.apache.camel
-artifactId=camel-aws-cw
-version=3.9.0-SNAPSHOT
-projectName=Camel :: AWS CW (deprecated)
-projectDescription=A Camel Amazon CW Web Service Component
diff --git a/components/camel-aws-cw/src/generated/resources/META-INF/services/org/apache/camel/component/aws-cw b/components/camel-aws-cw/src/generated/resources/META-INF/services/org/apache/camel/component/aws-cw
deleted file mode 100644
index b6084c2..0000000
--- a/components/camel-aws-cw/src/generated/resources/META-INF/services/org/apache/camel/component/aws-cw
+++ /dev/null
@@ -1,2 +0,0 @@
-# Generated by camel build tools - do NOT edit this file!
-class=org.apache.camel.component.aws.cw.CwComponent
diff --git a/components/camel-aws-cw/src/generated/resources/META-INF/services/org/apache/camel/configurer/aws-cw-component b/components/camel-aws-cw/src/generated/resources/META-INF/services/org/apache/camel/configurer/aws-cw-component
deleted file mode 100644
index 39894df..0000000
--- a/components/camel-aws-cw/src/generated/resources/META-INF/services/org/apache/camel/configurer/aws-cw-component
+++ /dev/null
@@ -1,2 +0,0 @@
-# Generated by camel build tools - do NOT edit this file!
-class=org.apache.camel.component.aws.cw.CwComponentConfigurer
diff --git a/components/camel-aws-cw/src/generated/resources/META-INF/services/org/apache/camel/configurer/aws-cw-endpoint b/components/camel-aws-cw/src/generated/resources/META-INF/services/org/apache/camel/configurer/aws-cw-endpoint
deleted file mode 100644
index a42cd28..0000000
--- a/components/camel-aws-cw/src/generated/resources/META-INF/services/org/apache/camel/configurer/aws-cw-endpoint
+++ /dev/null
@@ -1,2 +0,0 @@
-# Generated by camel build tools - do NOT edit this file!
-class=org.apache.camel.component.aws.cw.CwEndpointConfigurer
diff --git a/components/camel-aws-cw/src/generated/resources/META-INF/services/org/apache/camel/urifactory/aws-cw-endpoint b/components/camel-aws-cw/src/generated/resources/META-INF/services/org/apache/camel/urifactory/aws-cw-endpoint
deleted file mode 100644
index 1419747..0000000
--- a/components/camel-aws-cw/src/generated/resources/META-INF/services/org/apache/camel/urifactory/aws-cw-endpoint
+++ /dev/null
@@ -1,2 +0,0 @@
-# Generated by camel build tools - do NOT edit this file!
-class=org.apache.camel.component.aws.cw.CwEndpointUriFactory
diff --git a/components/camel-aws-cw/src/generated/resources/org/apache/camel/component/aws/cw/aws-cw.json b/components/camel-aws-cw/src/generated/resources/org/apache/camel/component/aws/cw/aws-cw.json
deleted file mode 100644
index 4730c89..0000000
--- a/components/camel-aws-cw/src/generated/resources/org/apache/camel/component/aws/cw/aws-cw.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
-  "component": {
-    "kind": "component",
-    "name": "aws-cw",
-    "title": "AWS CloudWatch",
-    "description": "Send metrics to AWS CloudWatch.",
-    "deprecated": true,
-    "deprecatedSince": "3.8.0",
-    "firstVersion": "2.11.0",
-    "label": "cloud,monitoring",
-    "javaType": "org.apache.camel.component.aws.cw.CwComponent",
-    "supportLevel": "Stable",
-    "groupId": "org.apache.camel",
-    "artifactId": "camel-aws-cw",
-    "version": "3.9.0-SNAPSHOT",
-    "scheme": "aws-cw",
-    "extendsScheme": "",
-    "syntax": "aws-cw:namespace",
-    "async": false,
-    "api": false,
-    "consumerOnly": false,
-    "producerOnly": true,
-    "lenientProperties": false
-  },
-  "componentProperties": {
-    "amazonCwClient": { "kind": "property", "displayName": "Amazon Cw Client", "group": "producer", "label": "", "required": false, "type": "object", "javaType": "com.amazonaws.services.cloudwatch.AmazonCloudWatch", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.aws.cw.CwConfiguration", "configurationField": "configuration", "description": "To use the AmazonCloudWatch as the client" },
-    "autoDiscoverClient": { "kind": "property", "displayName": "Auto Discover Client", "group": "common", "label": "common", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.aws.cw.CwConfiguration", "configurationField": "configuration", "description": "Setting the autoDiscoverClient mechanism, if true, the component will look for a client instance [...]
-    "configuration": { "kind": "property", "displayName": "Configuration", "group": "producer", "label": "", "required": false, "type": "object", "javaType": "org.apache.camel.component.aws.cw.CwConfiguration", "deprecated": false, "autowired": false, "secret": false, "description": "The component configuration" },
-    "lazyStartProducer": { "kind": "property", "displayName": "Lazy Start Producer", "group": "producer", "label": "producer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during star [...]
-    "name": { "kind": "property", "displayName": "Name", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.aws.cw.CwConfiguration", "configurationField": "configuration", "description": "The metric name" },
-    "proxyHost": { "kind": "property", "displayName": "Proxy Host", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.aws.cw.CwConfiguration", "configurationField": "configuration", "description": "To define a proxy host when instantiating the CW client" },
-    "proxyPort": { "kind": "property", "displayName": "Proxy Port", "group": "producer", "label": "", "required": false, "type": "integer", "javaType": "java.lang.Integer", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.aws.cw.CwConfiguration", "configurationField": "configuration", "description": "To define a proxy port when instantiating the CW client" },
-    "proxyProtocol": { "kind": "property", "displayName": "Proxy Protocol", "group": "producer", "label": "", "required": false, "type": "object", "javaType": "com.amazonaws.Protocol", "enum": [ "HTTP", "HTTPS" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "HTTPS", "configurationClass": "org.apache.camel.component.aws.cw.CwConfiguration", "configurationField": "configuration", "description": "To define a proxy protocol when instantiating the CW client" },
-    "region": { "kind": "property", "displayName": "Region", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.aws.cw.CwConfiguration", "configurationField": "configuration", "description": "The region in which CW client needs to work. When using this parameter, the configuration will expect the capitalized name of the region (fo [...]
-    "timestamp": { "kind": "property", "displayName": "Timestamp", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.util.Date", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.aws.cw.CwConfiguration", "configurationField": "configuration", "description": "The metric timestamp" },
-    "unit": { "kind": "property", "displayName": "Unit", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.aws.cw.CwConfiguration", "configurationField": "configuration", "description": "The metric unit" },
-    "value": { "kind": "property", "displayName": "Value", "group": "producer", "label": "", "required": false, "type": "number", "javaType": "java.lang.Double", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.aws.cw.CwConfiguration", "configurationField": "configuration", "description": "The metric value" },
-    "autowiredEnabled": { "kind": "property", "displayName": "Autowired Enabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Whether autowiring is enabled. This is used for automatic autowiring options (the option must be marked as autowired) by looking up in the registry to find if there is a single instance of matching type, which t [...]
-    "accessKey": { "kind": "property", "displayName": "Access Key", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.aws.cw.CwConfiguration", "configurationField": "configuration", "description": "Amazon AWS Access Key" },
-    "secretKey": { "kind": "property", "displayName": "Secret Key", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.aws.cw.CwConfiguration", "configurationField": "configuration", "description": "Amazon AWS Secret Key" }
-  },
-  "properties": {
-    "namespace": { "kind": "path", "displayName": "Namespace", "group": "producer", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.aws.cw.CwConfiguration", "configurationField": "configuration", "description": "The metric namespace" },
-    "amazonCwClient": { "kind": "parameter", "displayName": "Amazon Cw Client", "group": "producer", "label": "", "required": false, "type": "object", "javaType": "com.amazonaws.services.cloudwatch.AmazonCloudWatch", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.aws.cw.CwConfiguration", "configurationField": "configuration", "description": "To use the AmazonCloudWatch as the client" },
-    "autoDiscoverClient": { "kind": "parameter", "displayName": "Auto Discover Client", "group": "common", "label": "common", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.aws.cw.CwConfiguration", "configurationField": "configuration", "description": "Setting the autoDiscoverClient mechanism, if true, the component will look for a client instanc [...]
-    "lazyStartProducer": { "kind": "parameter", "displayName": "Lazy Start Producer", "group": "producer", "label": "producer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during sta [...]
-    "name": { "kind": "parameter", "displayName": "Name", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.aws.cw.CwConfiguration", "configurationField": "configuration", "description": "The metric name" },
-    "proxyHost": { "kind": "parameter", "displayName": "Proxy Host", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.aws.cw.CwConfiguration", "configurationField": "configuration", "description": "To define a proxy host when instantiating the CW client" },
-    "proxyPort": { "kind": "parameter", "displayName": "Proxy Port", "group": "producer", "label": "", "required": false, "type": "integer", "javaType": "java.lang.Integer", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.aws.cw.CwConfiguration", "configurationField": "configuration", "description": "To define a proxy port when instantiating the CW client" },
-    "proxyProtocol": { "kind": "parameter", "displayName": "Proxy Protocol", "group": "producer", "label": "", "required": false, "type": "object", "javaType": "com.amazonaws.Protocol", "enum": [ "HTTP", "HTTPS" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "HTTPS", "configurationClass": "org.apache.camel.component.aws.cw.CwConfiguration", "configurationField": "configuration", "description": "To define a proxy protocol when instantiating the CW client" },
-    "region": { "kind": "parameter", "displayName": "Region", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.aws.cw.CwConfiguration", "configurationField": "configuration", "description": "The region in which CW client needs to work. When using this parameter, the configuration will expect the capitalized name of the region (f [...]
-    "timestamp": { "kind": "parameter", "displayName": "Timestamp", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.util.Date", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.aws.cw.CwConfiguration", "configurationField": "configuration", "description": "The metric timestamp" },
-    "unit": { "kind": "parameter", "displayName": "Unit", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.aws.cw.CwConfiguration", "configurationField": "configuration", "description": "The metric unit" },
-    "value": { "kind": "parameter", "displayName": "Value", "group": "producer", "label": "", "required": false, "type": "number", "javaType": "java.lang.Double", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.aws.cw.CwConfiguration", "configurationField": "configuration", "description": "The metric value" },
-    "accessKey": { "kind": "parameter", "displayName": "Access Key", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.aws.cw.CwConfiguration", "configurationField": "configuration", "description": "Amazon AWS Access Key" },
-    "secretKey": { "kind": "parameter", "displayName": "Secret Key", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.aws.cw.CwConfiguration", "configurationField": "configuration", "description": "Amazon AWS Secret Key" }
-  }
-}
diff --git a/components/camel-aws-cw/src/main/docs/aws-cw-component.adoc b/components/camel-aws-cw/src/main/docs/aws-cw-component.adoc
deleted file mode 100644
index b377cbf..0000000
--- a/components/camel-aws-cw/src/main/docs/aws-cw-component.adoc
+++ /dev/null
@@ -1,200 +0,0 @@
-[[aws-cw-component]]
-= AWS CloudWatch Component (deprecated)
-:docTitle: AWS CloudWatch
-:artifactId: camel-aws-cw
-:description: Send metrics to AWS CloudWatch.
-:since: 2.11
-:supportLevel: Stable-deprecated
-:deprecated: *deprecated*
-:component-header: Only producer is supported
-include::{cq-version}@camel-quarkus:ROOT:partial$reference/components/aws-cw.adoc[opts=optional]
-//Manually maintained attributes
-:group: AWS
-
-*Since Camel {since}*
-
-*{component-header}*
-
-The CW component allows messages to be sent to an
-https://aws.amazon.com/cloudwatch/[Amazon CloudWatch] metrics. The
-implementation of the Amazon API is provided by
-the https://aws.amazon.com/sdkforjava/[AWS SDK].
-
-Prerequisites
-
-You must have a valid Amazon Web Services developer account, and be
-signed up to use Amazon CloudWatch. More information is available at
-https://aws.amazon.com/cloudwatch/[Amazon CloudWatch].
-
-== URI Format
-
-[source,java]
-----------------------------
-aws-cw://namespace[?options]
-----------------------------
-
-The metrics will be created if they don't already exists. +
- You can append query options to the URI in the following format,
-`?options=value&option2=value&...`
-
-== URI Options
-
-
-// component options: START
-The AWS CloudWatch component supports 15 options, which are listed below.
-
-
-
-[width="100%",cols="2,5,^1,2",options="header"]
-|===
-| Name | Description | Default | Type
-| *amazonCwClient* (producer) | To use the AmazonCloudWatch as the client |  | AmazonCloudWatch
-| *autoDiscoverClient* (common) | Setting the autoDiscoverClient mechanism, if true, the component will look for a client instance in the registry automatically otherwise it will skip that checking. | true | boolean
-| *configuration* (producer) | The component configuration |  | CwConfiguration
-| *lazyStartProducer* (producer) | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then creating and [...]
-| *name* (producer) | The metric name |  | String
-| *proxyHost* (producer) | To define a proxy host when instantiating the CW client |  | String
-| *proxyPort* (producer) | To define a proxy port when instantiating the CW client |  | Integer
-| *proxyProtocol* (producer) | To define a proxy protocol when instantiating the CW client. There are 2 enums and the value can be one of: HTTP, HTTPS | HTTPS | Protocol
-| *region* (producer) | The region in which CW client needs to work. When using this parameter, the configuration will expect the capitalized name of the region (for example AP_EAST_1) You'll need to use the name Regions.EU_WEST_1.name() |  | String
-| *timestamp* (producer) | The metric timestamp |  | Date
-| *unit* (producer) | The metric unit |  | String
-| *value* (producer) | The metric value |  | Double
-| *autowiredEnabled* (advanced) | Whether autowiring is enabled. This is used for automatic autowiring options (the option must be marked as autowired) by looking up in the registry to find if there is a single instance of matching type, which then gets configured on the component. This can be used for automatic configuring JDBC data sources, JMS connection factories, AWS Clients, etc. | true | boolean
-| *accessKey* (security) | Amazon AWS Access Key |  | String
-| *secretKey* (security) | Amazon AWS Secret Key |  | String
-|===
-// component options: END
-
-
-
-
-// endpoint options: START
-The AWS CloudWatch endpoint is configured using URI syntax:
-
-----
-aws-cw:namespace
-----
-
-with the following path and query parameters:
-
-=== Path Parameters (1 parameters):
-
-
-[width="100%",cols="2,5,^1,2",options="header"]
-|===
-| Name | Description | Default | Type
-| *namespace* | *Required* The metric namespace |  | String
-|===
-
-
-=== Query Parameters (13 parameters):
-
-
-[width="100%",cols="2,5,^1,2",options="header"]
-|===
-| Name | Description | Default | Type
-| *amazonCwClient* (producer) | To use the AmazonCloudWatch as the client |  | AmazonCloudWatch
-| *autoDiscoverClient* (common) | Setting the autoDiscoverClient mechanism, if true, the component will look for a client instance in the registry automatically otherwise it will skip that checking. | true | boolean
-| *lazyStartProducer* (producer) | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then creating and [...]
-| *name* (producer) | The metric name |  | String
-| *proxyHost* (producer) | To define a proxy host when instantiating the CW client |  | String
-| *proxyPort* (producer) | To define a proxy port when instantiating the CW client |  | Integer
-| *proxyProtocol* (producer) | To define a proxy protocol when instantiating the CW client. There are 2 enums and the value can be one of: HTTP, HTTPS | HTTPS | Protocol
-| *region* (producer) | The region in which CW client needs to work. When using this parameter, the configuration will expect the capitalized name of the region (for example AP_EAST_1) You'll need to use the name Regions.EU_WEST_1.name() |  | String
-| *timestamp* (producer) | The metric timestamp |  | Date
-| *unit* (producer) | The metric unit |  | String
-| *value* (producer) | The metric value |  | Double
-| *accessKey* (security) | Amazon AWS Access Key |  | String
-| *secretKey* (security) | Amazon AWS Secret Key |  | String
-|===
-// endpoint options: END
-
-
-
-
-Required CW component options
-
-You have to provide the amazonCwClient in the
-Registry or your accessKey and secretKey to access
-the https://aws.amazon.com/cloudwatch/[Amazon's CloudWatch].
-
-== Usage
-
-=== Message headers evaluated by the CW producer
-
-[width="100%",cols="10%,10%,80%",options="header",]
-|=======================================================================
-|Header |Type |Description
-
-|`CamelAwsCwMetricName` |`String` |The Amazon CW metric name.
-
-|`CamelAwsCwMetricValue` |`Double` |The Amazon CW metric value.
-
-|`CamelAwsCwMetricUnit` |`String` |The Amazon CW metric unit.
-
-|`CamelAwsCwMetricNamespace` |`String` |The Amazon CW metric namespace.
-
-|`CamelAwsCwMetricTimestamp` |`Date` |The Amazon CW metric timestamp.
-
-|`CamelAwsCwMetricDimensionName` |`String` |The Amazon CW metric dimension name.
-
-|`CamelAwsCwMetricDimensionValue` |`String` |The Amazon CW metric dimension value.
-
-|`CamelAwsCwMetricDimensions` |`Map<String, String>` |A map of dimension names and dimension values.
-|=======================================================================
-
-=== Advanced AmazonCloudWatch configuration
-
-If you need more control over the `AmazonCloudWatch` instance
-configuration you can create your own instance and refer to it from the
-URI:
-
-[source,java]
--------------------------------------------------
-from("direct:start")
-.to("aws-cw://namespace?amazonCwClient=#client");
--------------------------------------------------
-
-The `#client` refers to a `AmazonCloudWatch` in the
-Registry.
-
-For example if your Camel Application is running behind a firewall:
-
-[source,java]
-------------------------------------------------------------------------------------------
-AWSCredentials awsCredentials = new BasicAWSCredentials("myAccessKey", "mySecretKey");
-ClientConfiguration clientConfiguration = new ClientConfiguration();
-clientConfiguration.setProxyHost("http://myProxyHost");
-clientConfiguration.setProxyPort(8080);
-
-AmazonCloudWatch client = new AmazonCloudWatchClient(awsCredentials, clientConfiguration);
-
-registry.bind("client", client);
-------------------------------------------------------------------------------------------
-
-== Automatic detection of AmazonCloudWatch client in registry
-
-The component is capable of detecting the presence of an AmazonCloudWatch bean into the registry.
-If it's the only instance of that type it will be used as client and you won't have to define it as uri parameter.
-This may be really useful for smarter configuration of the endpoint.
-
-== Dependencies
-
-Maven users will need to add the following dependency to their pom.xml.
-
-*pom.xml*
-
-[source,xml]
----------------------------------------
-<dependency>
-    <groupId>org.apache.camel</groupId>
-    <artifactId>camel-aws-cw</artifactId>
-    <version>${camel-version}</version>
-</dependency>
----------------------------------------
-
-where `${camel-version`} must be replaced by the actual version of Camel.
-
-
-include::camel-spring-boot::page$aws-cw-starter.adoc[]
diff --git a/components/camel-aws-cw/src/main/docs/aws-summary.adoc b/components/camel-aws-cw/src/main/docs/aws-summary.adoc
deleted file mode 100644
index 40927dd..0000000
--- a/components/camel-aws-cw/src/main/docs/aws-summary.adoc
+++ /dev/null
@@ -1,14 +0,0 @@
-= AWS Component
-:docTitle: AWS
-
-The *aws-* component allows you to work with the
-https://aws.amazon.com/[AWS].
-AWS offers a great palette of different components like elastic, email and queue services. It also 
-provides streaming for Apache Kafka and more. The main reason to use AWS is its cloud computing platform.
-
-
-== {docTitle} components
-
-See the following for usage of each component:
-
-indexDescriptionList::[attributes='group={docTitle}',descAttribute=description]
diff --git a/components/camel-aws-cw/src/main/java/org/apache/camel/component/aws/cw/CwComponent.java b/components/camel-aws-cw/src/main/java/org/apache/camel/component/aws/cw/CwComponent.java
deleted file mode 100644
index e1d1eb1..0000000
--- a/components/camel-aws-cw/src/main/java/org/apache/camel/component/aws/cw/CwComponent.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.component.aws.cw;
-
-import java.util.Map;
-import java.util.Set;
-
-import com.amazonaws.services.cloudwatch.AmazonCloudWatch;
-import org.apache.camel.CamelContext;
-import org.apache.camel.Endpoint;
-import org.apache.camel.spi.Metadata;
-import org.apache.camel.spi.annotations.Component;
-import org.apache.camel.support.DefaultComponent;
-
-@Component("aws-cw")
-public class CwComponent extends DefaultComponent {
-
-    @Metadata
-    private CwConfiguration configuration = new CwConfiguration();
-
-    public CwComponent() {
-        this(null);
-    }
-
-    public CwComponent(CamelContext context) {
-        super(context);
-        registerExtension(new CwComponentVerifierExtension());
-    }
-
-    @Override
-    protected Endpoint createEndpoint(String uri, String remaining, Map<String, Object> parameters) throws Exception {
-        if (remaining == null || remaining.trim().length() == 0) {
-            throw new IllegalArgumentException("Metric namespace must be specified.");
-        }
-
-        CwConfiguration configuration = this.configuration != null ? this.configuration.copy() : new CwConfiguration();
-        configuration.setNamespace(remaining);
-
-        CwEndpoint endpoint = new CwEndpoint(uri, this, configuration);
-        setProperties(endpoint, parameters);
-
-        if (endpoint.getConfiguration().isAutoDiscoverClient()) {
-            checkAndSetRegistryClient(configuration);
-        }
-        if (configuration.getAmazonCwClient() == null
-                && (configuration.getAccessKey() == null || configuration.getSecretKey() == null)) {
-            throw new IllegalArgumentException("AmazonCwClient or accessKey and secretKey must be specified");
-        }
-
-        return endpoint;
-    }
-
-    public CwConfiguration getConfiguration() {
-        return configuration;
-    }
-
-    /**
-     * The component configuration
-     */
-    public void setConfiguration(CwConfiguration configuration) {
-        this.configuration = configuration;
-    }
-
-    private void checkAndSetRegistryClient(CwConfiguration configuration) {
-        Set<AmazonCloudWatch> clients = getCamelContext().getRegistry().findByType(AmazonCloudWatch.class);
-        if (clients.size() == 1) {
-            configuration.setAmazonCwClient(clients.stream().findFirst().get());
-        }
-    }
-}
diff --git a/components/camel-aws-cw/src/main/java/org/apache/camel/component/aws/cw/CwComponentVerifierExtension.java b/components/camel-aws-cw/src/main/java/org/apache/camel/component/aws/cw/CwComponentVerifierExtension.java
deleted file mode 100644
index 031ccf3..0000000
--- a/components/camel-aws-cw/src/main/java/org/apache/camel/component/aws/cw/CwComponentVerifierExtension.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.component.aws.cw;
-
-import java.util.Map;
-
-import com.amazonaws.SdkClientException;
-import com.amazonaws.auth.AWSCredentials;
-import com.amazonaws.auth.AWSCredentialsProvider;
-import com.amazonaws.auth.AWSStaticCredentialsProvider;
-import com.amazonaws.auth.BasicAWSCredentials;
-import com.amazonaws.regions.Regions;
-import com.amazonaws.services.cloudwatch.AmazonCloudWatch;
-import com.amazonaws.services.cloudwatch.AmazonCloudWatchClientBuilder;
-import org.apache.camel.component.extension.verifier.DefaultComponentVerifierExtension;
-import org.apache.camel.component.extension.verifier.ResultBuilder;
-import org.apache.camel.component.extension.verifier.ResultErrorBuilder;
-import org.apache.camel.component.extension.verifier.ResultErrorHelper;
-
-public class CwComponentVerifierExtension extends DefaultComponentVerifierExtension {
-
-    public CwComponentVerifierExtension() {
-        this("aws-cw");
-    }
-
-    public CwComponentVerifierExtension(String scheme) {
-        super(scheme);
-    }
-
-    // *********************************
-    // Parameters validation
-    // *********************************
-
-    @Override
-    protected Result verifyParameters(Map<String, Object> parameters) {
-
-        ResultBuilder builder = ResultBuilder.withStatusAndScope(Result.Status.OK, Scope.PARAMETERS)
-                .error(ResultErrorHelper.requiresOption("accessKey", parameters))
-                .error(ResultErrorHelper.requiresOption("secretKey", parameters))
-                .error(ResultErrorHelper.requiresOption("region", parameters));
-
-        // Validate using the catalog
-
-        super.verifyParametersAgainstCatalog(builder, parameters);
-
-        return builder.build();
-    }
-
-    // *********************************
-    // Connectivity validation
-    // *********************************
-
-    @Override
-    protected Result verifyConnectivity(Map<String, Object> parameters) {
-        ResultBuilder builder = ResultBuilder.withStatusAndScope(Result.Status.OK, Scope.CONNECTIVITY);
-
-        try {
-            CwConfiguration configuration = setProperties(new CwConfiguration(), parameters);
-            AWSCredentials credentials = new BasicAWSCredentials(configuration.getAccessKey(), configuration.getSecretKey());
-            AWSCredentialsProvider credentialsProvider = new AWSStaticCredentialsProvider(credentials);
-            AmazonCloudWatch client = AmazonCloudWatchClientBuilder.standard().withCredentials(credentialsProvider)
-                    .withRegion(Regions.valueOf(configuration.getRegion())).build();
-            client.listMetrics();
-        } catch (SdkClientException e) {
-            ResultErrorBuilder errorBuilder
-                    = ResultErrorBuilder.withCodeAndDescription(VerificationError.StandardCode.AUTHENTICATION, e.getMessage())
-                            .detail("aws_cw_exception_message", e.getMessage())
-                            .detail(VerificationError.ExceptionAttribute.EXCEPTION_CLASS, e.getClass().getName())
-                            .detail(VerificationError.ExceptionAttribute.EXCEPTION_INSTANCE, e);
-
-            builder.error(errorBuilder.build());
-        } catch (Exception e) {
-            builder.error(ResultErrorBuilder.withException(e).build());
-        }
-        return builder.build();
-    }
-}
diff --git a/components/camel-aws-cw/src/main/java/org/apache/camel/component/aws/cw/CwConfiguration.java b/components/camel-aws-cw/src/main/java/org/apache/camel/component/aws/cw/CwConfiguration.java
deleted file mode 100644
index bea152e..0000000
--- a/components/camel-aws-cw/src/main/java/org/apache/camel/component/aws/cw/CwConfiguration.java
+++ /dev/null
@@ -1,216 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.component.aws.cw;
-
-import java.util.Date;
-
-import com.amazonaws.Protocol;
-import com.amazonaws.services.cloudwatch.AmazonCloudWatch;
-import org.apache.camel.RuntimeCamelException;
-import org.apache.camel.spi.Metadata;
-import org.apache.camel.spi.UriParam;
-import org.apache.camel.spi.UriParams;
-import org.apache.camel.spi.UriPath;
-
-@UriParams
-public class CwConfiguration implements Cloneable {
-
-    @UriPath
-    @Metadata(required = true)
-    private String namespace;
-    @UriParam
-    private AmazonCloudWatch amazonCwClient;
-    @UriParam(label = "security", secret = true)
-    private String accessKey;
-    @UriParam(label = "security", secret = true)
-    private String secretKey;
-    @UriParam
-    private String name;
-    @UriParam
-    private Double value;
-    @UriParam
-    private String unit;
-    @UriParam
-    private Date timestamp;
-    @UriParam(enums = "HTTP,HTTPS", defaultValue = "HTTPS")
-    private Protocol proxyProtocol = Protocol.HTTPS;
-    @UriParam
-    private String proxyHost;
-    @UriParam
-    private Integer proxyPort;
-    @UriParam
-    private String region;
-    @UriParam(label = "common", defaultValue = "true")
-    private boolean autoDiscoverClient = true;
-
-    public String getAccessKey() {
-        return accessKey;
-    }
-
-    /**
-     * Amazon AWS Access Key
-     */
-    public void setAccessKey(String accessKey) {
-        this.accessKey = accessKey;
-    }
-
-    public String getSecretKey() {
-        return secretKey;
-    }
-
-    /**
-     * Amazon AWS Secret Key
-     */
-    public void setSecretKey(String secretKey) {
-        this.secretKey = secretKey;
-    }
-
-    public String getName() {
-        return name;
-    }
-
-    /**
-     * The metric name
-     */
-    public void setName(String name) {
-        this.name = name;
-    }
-
-    public Double getValue() {
-        return value;
-    }
-
-    /**
-     * The metric value
-     */
-    public void setValue(Double value) {
-        this.value = value;
-    }
-
-    public String getUnit() {
-        return unit;
-    }
-
-    /**
-     * The metric unit
-     */
-    public void setUnit(String unit) {
-        this.unit = unit;
-    }
-
-    public String getNamespace() {
-        return namespace;
-    }
-
-    /**
-     * The metric namespace
-     */
-    public void setNamespace(String namespace) {
-        this.namespace = namespace;
-    }
-
-    /**
-     * The metric timestamp
-     */
-    public void setTimestamp(Date timestamp) {
-        this.timestamp = timestamp;
-    }
-
-    public Date getTimestamp() {
-        return timestamp;
-    }
-
-    public AmazonCloudWatch getAmazonCwClient() {
-        return amazonCwClient;
-    }
-
-    /**
-     * To use the AmazonCloudWatch as the client
-     */
-    public void setAmazonCwClient(AmazonCloudWatch amazonCwClient) {
-        this.amazonCwClient = amazonCwClient;
-    }
-
-    public Protocol getProxyProtocol() {
-        return proxyProtocol;
-    }
-
-    /**
-     * To define a proxy protocol when instantiating the CW client
-     */
-    public void setProxyProtocol(Protocol proxyProtocol) {
-        this.proxyProtocol = proxyProtocol;
-    }
-
-    public String getProxyHost() {
-        return proxyHost;
-    }
-
-    /**
-     * To define a proxy host when instantiating the CW client
-     */
-    public void setProxyHost(String proxyHost) {
-        this.proxyHost = proxyHost;
-    }
-
-    public Integer getProxyPort() {
-        return proxyPort;
-    }
-
-    /**
-     * To define a proxy port when instantiating the CW client
-     */
-    public void setProxyPort(Integer proxyPort) {
-        this.proxyPort = proxyPort;
-    }
-
-    public String getRegion() {
-        return region;
-    }
-
-    /**
-     * The region in which CW client needs to work. When using this parameter, the configuration will expect the
-     * capitalized name of the region (for example AP_EAST_1) You'll need to use the name Regions.EU_WEST_1.name()
-     */
-    public void setRegion(String region) {
-        this.region = region;
-    }
-
-    public boolean isAutoDiscoverClient() {
-        return autoDiscoverClient;
-    }
-
-    /**
-     * Setting the autoDiscoverClient mechanism, if true, the component will look for a client instance in the registry
-     * automatically otherwise it will skip that checking.
-     */
-    public void setAutoDiscoverClient(boolean autoDiscoverClient) {
-        this.autoDiscoverClient = autoDiscoverClient;
-    }
-
-    // *************************************************
-    //
-    // *************************************************
-
-    public CwConfiguration copy() {
-        try {
-            return (CwConfiguration) super.clone();
-        } catch (CloneNotSupportedException e) {
-            throw new RuntimeCamelException(e);
-        }
-    }
-}
diff --git a/components/camel-aws-cw/src/main/java/org/apache/camel/component/aws/cw/CwConstants.java b/components/camel-aws-cw/src/main/java/org/apache/camel/component/aws/cw/CwConstants.java
deleted file mode 100644
index 7d4cb3d..0000000
--- a/components/camel-aws-cw/src/main/java/org/apache/camel/component/aws/cw/CwConstants.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.component.aws.cw;
-
-/**
- * Constants used in Camel AWS CW module
- */
-public interface CwConstants {
-    String METRIC_NAMESPACE = "CamelAwsCwMetricNamespace";
-    String METRIC_NAME = "CamelAwsCwMetricName";
-    String METRIC_VALUE = "CamelAwsCwMetricValue";
-    String METRIC_UNIT = "CamelAwsCwMetricUnit";
-    String METRIC_TIMESTAMP = "CamelAwsCwMetricTimestamp";
-    String METRIC_DIMENSIONS = "CamelAwsCwMetricDimensions";
-    String METRIC_DIMENSION_NAME = "CamelAwsCwMetricDimensionName";
-    String METRIC_DIMENSION_VALUE = "CamelAwsCwMetricDimensionValue";
-}
diff --git a/components/camel-aws-cw/src/main/java/org/apache/camel/component/aws/cw/CwEndpoint.java b/components/camel-aws-cw/src/main/java/org/apache/camel/component/aws/cw/CwEndpoint.java
deleted file mode 100644
index 5faaa1a..0000000
--- a/components/camel-aws-cw/src/main/java/org/apache/camel/component/aws/cw/CwEndpoint.java
+++ /dev/null
@@ -1,131 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.component.aws.cw;
-
-import com.amazonaws.ClientConfiguration;
-import com.amazonaws.auth.AWSCredentials;
-import com.amazonaws.auth.AWSCredentialsProvider;
-import com.amazonaws.auth.AWSStaticCredentialsProvider;
-import com.amazonaws.auth.BasicAWSCredentials;
-import com.amazonaws.regions.Regions;
-import com.amazonaws.services.cloudwatch.AmazonCloudWatch;
-import com.amazonaws.services.cloudwatch.AmazonCloudWatchClientBuilder;
-import org.apache.camel.Category;
-import org.apache.camel.Component;
-import org.apache.camel.Consumer;
-import org.apache.camel.Processor;
-import org.apache.camel.Producer;
-import org.apache.camel.spi.UriEndpoint;
-import org.apache.camel.spi.UriParam;
-import org.apache.camel.support.DefaultEndpoint;
-import org.apache.camel.util.ObjectHelper;
-
-/**
- * Send metrics to AWS CloudWatch.
- */
-@UriEndpoint(firstVersion = "2.11.0", scheme = "aws-cw", title = "AWS CloudWatch", syntax = "aws-cw:namespace",
-             producerOnly = true, category = { Category.CLOUD, Category.MONITORING })
-public class CwEndpoint extends DefaultEndpoint {
-
-    @UriParam
-    private CwConfiguration configuration;
-    private AmazonCloudWatch cloudWatchClient;
-
-    public CwEndpoint(String uri, Component component, CwConfiguration configuration) {
-        super(uri, component);
-        this.configuration = configuration;
-    }
-
-    @Override
-    public Consumer createConsumer(Processor processor) throws Exception {
-        throw new UnsupportedOperationException("You cannot receive messages from this endpoint");
-    }
-
-    @Override
-    public Producer createProducer() throws Exception {
-        return new CwProducer(this);
-    }
-
-    @Override
-    public void doInit() throws Exception {
-        super.doInit();
-
-        cloudWatchClient
-                = configuration.getAmazonCwClient() != null ? configuration.getAmazonCwClient() : createCloudWatchClient();
-    }
-
-    @Override
-    public void doStop() throws Exception {
-        if (ObjectHelper.isEmpty(configuration.getAmazonCwClient())) {
-            if (cloudWatchClient != null) {
-                cloudWatchClient.shutdown();
-            }
-        }
-        super.doStop();
-    }
-
-    public CwConfiguration getConfiguration() {
-        return configuration;
-    }
-
-    public void setConfiguration(CwConfiguration configuration) {
-        this.configuration = configuration;
-    }
-
-    public void setCloudWatchClient(AmazonCloudWatch cloudWatchClient) {
-        this.cloudWatchClient = cloudWatchClient;
-    }
-
-    public AmazonCloudWatch getCloudWatchClient() {
-        return cloudWatchClient;
-    }
-
-    AmazonCloudWatch createCloudWatchClient() {
-        AmazonCloudWatch client = null;
-        AmazonCloudWatchClientBuilder clientBuilder = null;
-        ClientConfiguration clientConfiguration = null;
-        boolean isClientConfigFound = false;
-        if (ObjectHelper.isNotEmpty(configuration.getProxyHost()) && ObjectHelper.isNotEmpty(configuration.getProxyPort())) {
-            clientConfiguration = new ClientConfiguration();
-            clientConfiguration.setProxyProtocol(configuration.getProxyProtocol());
-            clientConfiguration.setProxyHost(configuration.getProxyHost());
-            clientConfiguration.setProxyPort(configuration.getProxyPort());
-            isClientConfigFound = true;
-        }
-        if (configuration.getAccessKey() != null && configuration.getSecretKey() != null) {
-            AWSCredentials credentials = new BasicAWSCredentials(configuration.getAccessKey(), configuration.getSecretKey());
-            AWSCredentialsProvider credentialsProvider = new AWSStaticCredentialsProvider(credentials);
-            if (isClientConfigFound) {
-                clientBuilder = AmazonCloudWatchClientBuilder.standard().withClientConfiguration(clientConfiguration)
-                        .withCredentials(credentialsProvider);
-            } else {
-                clientBuilder = AmazonCloudWatchClientBuilder.standard().withCredentials(credentialsProvider);
-            }
-        } else {
-            if (isClientConfigFound) {
-                clientBuilder = AmazonCloudWatchClientBuilder.standard();
-            } else {
-                clientBuilder = AmazonCloudWatchClientBuilder.standard().withClientConfiguration(clientConfiguration);
-            }
-        }
-        if (ObjectHelper.isNotEmpty(configuration.getRegion())) {
-            clientBuilder = clientBuilder.withRegion(Regions.valueOf(configuration.getRegion()));
-        }
-        client = clientBuilder.build();
-        return client;
-    }
-}
diff --git a/components/camel-aws-cw/src/main/java/org/apache/camel/component/aws/cw/CwProducer.java b/components/camel-aws-cw/src/main/java/org/apache/camel/component/aws/cw/CwProducer.java
deleted file mode 100644
index 42b503e..0000000
--- a/components/camel-aws-cw/src/main/java/org/apache/camel/component/aws/cw/CwProducer.java
+++ /dev/null
@@ -1,157 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.component.aws.cw;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-import com.amazonaws.services.cloudwatch.model.Dimension;
-import com.amazonaws.services.cloudwatch.model.MetricDatum;
-import com.amazonaws.services.cloudwatch.model.PutMetricDataRequest;
-import com.amazonaws.services.cloudwatch.model.StandardUnit;
-import org.apache.camel.Endpoint;
-import org.apache.camel.Exchange;
-import org.apache.camel.support.DefaultProducer;
-import org.apache.camel.util.CastUtils;
-import org.apache.camel.util.URISupport;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * A Producer which sends messages to the AWS CloudWatch Service
- */
-public class CwProducer extends DefaultProducer {
-
-    private static final Logger LOG = LoggerFactory.getLogger(CwProducer.class);
-
-    private transient String cwProducerToString;
-
-    public CwProducer(Endpoint endpoint) {
-        super(endpoint);
-    }
-
-    @Override
-    public void process(Exchange exchange) throws Exception {
-        List<MetricDatum> metricData = getMetricData(exchange);
-
-        PutMetricDataRequest request = new PutMetricDataRequest()
-                .withMetricData(metricData)
-                .withNamespace(determineNameSpace(exchange));
-
-        LOG.info("Sending request [{}] from exchange [{}]...", request, exchange);
-        getEndpoint().getCloudWatchClient().putMetricData(request);
-    }
-
-    private List<MetricDatum> getMetricData(Exchange exchange) {
-        Object body = exchange.getIn().getBody();
-        if (body instanceof List) {
-            return CastUtils.cast((List<?>) body);
-        }
-
-        if (body instanceof MetricDatum) {
-            return Arrays.asList((MetricDatum) body);
-        }
-
-        MetricDatum metricDatum = new MetricDatum()
-                .withMetricName(determineName(exchange))
-                .withValue(determineValue(exchange))
-                .withUnit(determineUnit(exchange))
-                .withTimestamp(determineTimestamp(exchange));
-        setDimension(metricDatum, exchange);
-        return Arrays.asList(metricDatum);
-    }
-
-    private void setDimension(MetricDatum metricDatum, Exchange exchange) {
-        String name = exchange.getIn().getHeader(CwConstants.METRIC_DIMENSION_NAME, String.class);
-        String value = exchange.getIn().getHeader(CwConstants.METRIC_DIMENSION_VALUE, String.class);
-        if (name != null && value != null) {
-            metricDatum.withDimensions(new Dimension().withName(name).withValue(value));
-        } else {
-            Map<String, String> dimensions = exchange.getIn().getHeader(CwConstants.METRIC_DIMENSIONS, Map.class);
-            if (dimensions != null) {
-                Collection<Dimension> dimensionCollection = new ArrayList<>();
-                for (Map.Entry<String, String> dimensionEntry : dimensions.entrySet()) {
-                    Dimension dimension
-                            = new Dimension().withName(dimensionEntry.getKey()).withValue(dimensionEntry.getValue());
-                    dimensionCollection.add(dimension);
-                }
-                metricDatum.withDimensions(dimensionCollection);
-            }
-        }
-    }
-
-    private Date determineTimestamp(Exchange exchange) {
-        Date timestamp = exchange.getIn().getHeader(CwConstants.METRIC_TIMESTAMP, Date.class);
-        if (timestamp == null) {
-            timestamp = getConfiguration().getTimestamp();
-        }
-        return timestamp;
-    }
-
-    private String determineNameSpace(Exchange exchange) {
-        String namespace = exchange.getIn().getHeader(CwConstants.METRIC_NAMESPACE, String.class);
-        if (namespace == null) {
-            namespace = getConfiguration().getNamespace();
-        }
-        return namespace;
-    }
-
-    private String determineName(Exchange exchange) {
-        String name = exchange.getIn().getHeader(CwConstants.METRIC_NAME, String.class);
-        if (name == null) {
-            name = getConfiguration().getName();
-        }
-        return name;
-    }
-
-    private Double determineValue(Exchange exchange) {
-        Double value = exchange.getIn().getHeader(CwConstants.METRIC_VALUE, Double.class);
-        if (value == null) {
-            value = getConfiguration().getValue();
-        }
-        return value != null ? value : Double.valueOf(1);
-    }
-
-    private StandardUnit determineUnit(Exchange exchange) {
-        String unit = exchange.getIn().getHeader(CwConstants.METRIC_UNIT, String.class);
-        if (unit == null) {
-            unit = getConfiguration().getUnit();
-        }
-        return unit != null ? StandardUnit.valueOf(unit) : StandardUnit.Count;
-    }
-
-    protected CwConfiguration getConfiguration() {
-        return getEndpoint().getConfiguration();
-    }
-
-    @Override
-    public String toString() {
-        if (cwProducerToString == null) {
-            cwProducerToString = "CwProducer[" + URISupport.sanitizeUri(getEndpoint().getEndpointUri()) + "]";
-        }
-        return cwProducerToString;
-    }
-
-    @Override
-    public CwEndpoint getEndpoint() {
-        return (CwEndpoint) super.getEndpoint();
-    }
-}
diff --git a/components/camel-aws-cw/src/test/java/org/apache/camel/component/aws/cw/CwComponentConfigurationTest.java b/components/camel-aws-cw/src/test/java/org/apache/camel/component/aws/cw/CwComponentConfigurationTest.java
deleted file mode 100644
index a6a54e8..0000000
--- a/components/camel-aws-cw/src/test/java/org/apache/camel/component/aws/cw/CwComponentConfigurationTest.java
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.component.aws.cw;
-
-import java.util.Date;
-
-import com.amazonaws.Protocol;
-import com.amazonaws.regions.Regions;
-import com.amazonaws.services.cloudwatch.AmazonCloudWatchClient;
-import org.apache.camel.BindToRegistry;
-import org.apache.camel.test.junit5.CamelTestSupport;
-import org.junit.jupiter.api.Test;
-
-import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.assertThrows;
-import static org.mockito.Mockito.mock;
-
-public class CwComponentConfigurationTest extends CamelTestSupport {
-
-    @BindToRegistry("now")
-    private static final Date NOW = new Date();
-
-    @Test
-    public void createEndpointWithAllOptions() throws Exception {
-        AmazonCloudWatchClient cloudWatchClient = mock(AmazonCloudWatchClient.class);
-        context.getRegistry().bind("amazonCwClient", cloudWatchClient);
-        CwComponent component = context.getComponent("aws-cw", CwComponent.class);
-        CwEndpoint endpoint = (CwEndpoint) component.createEndpoint(
-                "aws-cw://camel.apache.org/test?amazonCwClient=#amazonCwClient&name=testMetric&value=2&unit=Count&timestamp=#now");
-
-        assertEquals("camel.apache.org/test", endpoint.getConfiguration().getNamespace());
-        assertEquals("testMetric", endpoint.getConfiguration().getName());
-        assertEquals(Double.valueOf(2), endpoint.getConfiguration().getValue());
-        assertEquals("Count", endpoint.getConfiguration().getUnit());
-        assertEquals(NOW, endpoint.getConfiguration().getTimestamp());
-    }
-
-    @Test
-    public void createEndpointWithoutAccessKeyConfiguration() throws Exception {
-        CwComponent component = context.getComponent("aws-cw", CwComponent.class);
-        assertThrows(IllegalArgumentException.class,
-                () -> component.createEndpoint("aws-cw://camel.apache.org/test?secretKey=yyy"));
-    }
-
-    @Test
-    public void createEndpointWithoutSecretKeyConfiguration() throws Exception {
-        CwComponent component = context.getComponent("aws-cw", CwComponent.class);
-        assertThrows(IllegalArgumentException.class,
-                () -> component.createEndpoint("aws-cw://camel.apache.org/test?accessKey=xxx"));
-    }
-
-    @Test
-    public void createEndpointWithoutSecretKeyAndAccessKeyConfiguration() throws Exception {
-        CwComponent component = context.getComponent("aws-cw", CwComponent.class);
-        assertThrows(IllegalArgumentException.class,
-                () -> component.createEndpoint("aws-cw://camel.apache.org/test"));
-    }
-
-    @Test
-    public void createEndpointWithComponentElements() throws Exception {
-        CwComponent component = context.getComponent("aws-cw", CwComponent.class);
-        component.getConfiguration().setAccessKey("XXX");
-        component.getConfiguration().setSecretKey("YYY");
-        CwEndpoint endpoint = (CwEndpoint) component.createEndpoint("aws-cw://camel.apache.org/test");
-
-        assertEquals("camel.apache.org/test", endpoint.getConfiguration().getNamespace());
-        assertEquals("XXX", endpoint.getConfiguration().getAccessKey());
-        assertEquals("YYY", endpoint.getConfiguration().getSecretKey());
-    }
-
-    @Test
-    public void createEndpointWithComponentAndEndpointElements() throws Exception {
-        CwComponent component = context.getComponent("aws-cw", CwComponent.class);
-        component.getConfiguration().setAccessKey("XXX");
-        component.getConfiguration().setSecretKey("YYY");
-        component.getConfiguration().setRegion(Regions.US_WEST_1.toString());
-        CwEndpoint endpoint = (CwEndpoint) component
-                .createEndpoint("aws-cw://camel.apache.org/test?accessKey=xxxxxx&secretKey=yyyyy&region=US_EAST_1");
-
-        assertEquals("camel.apache.org/test", endpoint.getConfiguration().getNamespace());
-        assertEquals("xxxxxx", endpoint.getConfiguration().getAccessKey());
-        assertEquals("yyyyy", endpoint.getConfiguration().getSecretKey());
-        assertEquals("US_EAST_1", endpoint.getConfiguration().getRegion());
-    }
-
-    @Test
-    public void createEndpointWithComponentEndpointOptionsAndProxy() throws Exception {
-        CwComponent component = context.getComponent("aws-cw", CwComponent.class);
-        component.getConfiguration().setAccessKey("XXX");
-        component.getConfiguration().setSecretKey("YYY");
-        component.getConfiguration().setRegion(Regions.US_WEST_1.toString());
-        CwEndpoint endpoint = (CwEndpoint) component.createEndpoint(
-                "aws-cw://camel.apache.org/test?accessKey=xxxxxx&secretKey=yyyyy&region=US_EAST_1&proxyHost=localhost&proxyPort=9000");
-
-        assertEquals("camel.apache.org/test", endpoint.getConfiguration().getNamespace());
-        assertEquals("xxxxxx", endpoint.getConfiguration().getAccessKey());
-        assertEquals("yyyyy", endpoint.getConfiguration().getSecretKey());
-        assertEquals("US_EAST_1", endpoint.getConfiguration().getRegion());
-        assertEquals("localhost", endpoint.getConfiguration().getProxyHost());
-        assertEquals(Integer.valueOf(9000), endpoint.getConfiguration().getProxyPort());
-        assertEquals(Protocol.HTTPS, endpoint.getConfiguration().getProxyProtocol());
-    }
-}
diff --git a/components/camel-aws-cw/src/test/java/org/apache/camel/component/aws/cw/CwComponentRegistryClientTest.java b/components/camel-aws-cw/src/test/java/org/apache/camel/component/aws/cw/CwComponentRegistryClientTest.java
deleted file mode 100644
index bc72833..0000000
--- a/components/camel-aws-cw/src/test/java/org/apache/camel/component/aws/cw/CwComponentRegistryClientTest.java
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.component.aws.cw;
-
-import java.util.Date;
-
-import com.amazonaws.services.cloudwatch.AmazonCloudWatchClient;
-import org.apache.camel.BindToRegistry;
-import org.apache.camel.test.junit5.CamelTestSupport;
-import org.junit.jupiter.api.Test;
-
-import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.assertNotSame;
-import static org.junit.jupiter.api.Assertions.assertSame;
-import static org.junit.jupiter.api.Assertions.assertThrows;
-import static org.mockito.Mockito.mock;
-
-public class CwComponentRegistryClientTest extends CamelTestSupport {
-
-    @BindToRegistry("now")
-    private static final Date NOW = new Date();
-
-    @Test
-    public void createEndpointWithAllOptions() throws Exception {
-        AmazonCloudWatchClient cloudWatchClient = mock(AmazonCloudWatchClient.class);
-        context.getRegistry().bind("amazonCwClient", cloudWatchClient);
-        CwComponent component = context.getComponent("aws-cw", CwComponent.class);
-        CwEndpoint endpoint = (CwEndpoint) component
-                .createEndpoint("aws-cw://camel.apache.org/test?name=testMetric&value=2&unit=Count&timestamp=#now");
-
-        assertEquals("camel.apache.org/test", endpoint.getConfiguration().getNamespace());
-        assertEquals("testMetric", endpoint.getConfiguration().getName());
-        assertEquals(Double.valueOf(2), endpoint.getConfiguration().getValue());
-        assertEquals("Count", endpoint.getConfiguration().getUnit());
-        assertEquals(NOW, endpoint.getConfiguration().getTimestamp());
-    }
-
-    @Test
-    public void createEndpointWithMinimalS3ClientMisconfiguration() throws Exception {
-        CwComponent component = context.getComponent("aws-cw", CwComponent.class);
-        assertThrows(IllegalArgumentException.class,
-                () -> component.createEndpoint("aws-cw://camel.apache.org/test"));
-    }
-
-    @Test
-    public void createEndpointWithAutoDiscoverClientFalse() throws Exception {
-        AmazonCloudWatchClient cloudWatchClient = mock(AmazonCloudWatchClient.class);
-        context.getRegistry().bind("amazonCwClient", cloudWatchClient);
-        CwComponent component = context.getComponent("aws-cw", CwComponent.class);
-        CwEndpoint endpoint = (CwEndpoint) component
-                .createEndpoint("aws-cw://camel.apache.org/test?accessKey=xxx&secretKey=yyy&autoDiscoverClient=false");
-
-        assertEquals("camel.apache.org/test", endpoint.getConfiguration().getNamespace());
-        assertNotSame(cloudWatchClient, endpoint.getConfiguration().getAmazonCwClient());
-    }
-
-    @Test
-    public void createEndpointWithAutoDiscoverClientTrue() throws Exception {
-        AmazonCloudWatchClient cloudWatchClient = mock(AmazonCloudWatchClient.class);
-        context.getRegistry().bind("amazonCwClient", cloudWatchClient);
-        CwComponent component = context.getComponent("aws-cw", CwComponent.class);
-        CwEndpoint endpoint
-                = (CwEndpoint) component.createEndpoint("aws-cw://camel.apache.org/test?accessKey=xxx&secretKey=yyy");
-
-        assertEquals("camel.apache.org/test", endpoint.getConfiguration().getNamespace());
-        assertSame(cloudWatchClient, endpoint.getConfiguration().getAmazonCwClient());
-    }
-}
diff --git a/components/camel-aws-cw/src/test/java/org/apache/camel/component/aws/cw/CwComponentTest.java b/components/camel-aws-cw/src/test/java/org/apache/camel/component/aws/cw/CwComponentTest.java
deleted file mode 100644
index cf9e584..0000000
--- a/components/camel-aws-cw/src/test/java/org/apache/camel/component/aws/cw/CwComponentTest.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.component.aws.cw;
-
-import java.util.Date;
-import java.util.LinkedHashMap;
-import java.util.List;
-import java.util.Map;
-
-import com.amazonaws.services.cloudwatch.AmazonCloudWatchClient;
-import com.amazonaws.services.cloudwatch.model.Dimension;
-import com.amazonaws.services.cloudwatch.model.MetricDatum;
-import com.amazonaws.services.cloudwatch.model.PutMetricDataRequest;
-import com.amazonaws.services.cloudwatch.model.StandardUnit;
-import org.apache.camel.BindToRegistry;
-import org.apache.camel.Exchange;
-import org.apache.camel.ExchangePattern;
-import org.apache.camel.Processor;
-import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.test.junit5.CamelTestSupport;
-import org.junit.jupiter.api.Test;
-import org.mockito.ArgumentCaptor;
-
-import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.verify;
-
-public class CwComponentTest extends CamelTestSupport {
-
-    @BindToRegistry("now")
-    private static final Date NOW = new Date();
-
-    private static final Date LATER = new Date(NOW.getTime() + 1);
-
-    @BindToRegistry("amazonCwClient")
-    private AmazonCloudWatchClient cloudWatchClient = mock(AmazonCloudWatchClient.class);
-
-    @Test
-    public void sendMetricFromHeaderValues() throws Exception {
-        template.send("direct:start", ExchangePattern.InOnly, new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(CwConstants.METRIC_NAMESPACE, "camel.apache.org/overriden");
-                exchange.getIn().setHeader(CwConstants.METRIC_NAME, "OverridenMetric");
-                exchange.getIn().setHeader(CwConstants.METRIC_VALUE, Double.valueOf(3));
-                exchange.getIn().setHeader(CwConstants.METRIC_UNIT, StandardUnit.Bytes.toString());
-                exchange.getIn().setHeader(CwConstants.METRIC_TIMESTAMP, LATER);
-            }
-        });
-
-        ArgumentCaptor<PutMetricDataRequest> argument = ArgumentCaptor.forClass(PutMetricDataRequest.class);
-        verify(cloudWatchClient).putMetricData(argument.capture());
-
-        assertEquals("camel.apache.org/overriden", argument.getValue().getNamespace());
-        assertEquals("OverridenMetric", argument.getValue().getMetricData().get(0).getMetricName());
-        assertEquals(Double.valueOf(3), argument.getValue().getMetricData().get(0).getValue());
-        assertEquals(StandardUnit.Bytes.toString(), argument.getValue().getMetricData().get(0).getUnit());
-        assertEquals(LATER, argument.getValue().getMetricData().get(0).getTimestamp());
-    }
-
-    @Test
-    public void sendManuallyCreatedMetric() throws Exception {
-        template.send("direct:start", ExchangePattern.InOnly, new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                MetricDatum metricDatum = new MetricDatum()
-                        .withMetricName("errorCount")
-                        .withValue(Double.valueOf(0));
-                exchange.getIn().setBody(metricDatum);
-            }
-        });
-
-        ArgumentCaptor<PutMetricDataRequest> argument = ArgumentCaptor.forClass(PutMetricDataRequest.class);
-        verify(cloudWatchClient).putMetricData(argument.capture());
-
-        assertEquals("errorCount", argument.getValue().getMetricData().get(0).getMetricName());
-        assertEquals(Double.valueOf(0), argument.getValue().getMetricData().get(0).getValue());
-    }
-
-    @Test
-    public void useDefaultValuesForMetricUnitAndMetricValue() throws Exception {
-        template.send("direct:start", ExchangePattern.InOnly, new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(CwConstants.METRIC_NAME, "errorCount");
-            }
-        });
-
-        ArgumentCaptor<PutMetricDataRequest> argument = ArgumentCaptor.forClass(PutMetricDataRequest.class);
-        verify(cloudWatchClient).putMetricData(argument.capture());
-
-        assertEquals("errorCount", argument.getValue().getMetricData().get(0).getMetricName());
-        assertEquals(Double.valueOf(1), argument.getValue().getMetricData().get(0).getValue());
-        assertEquals(StandardUnit.Count.toString(), argument.getValue().getMetricData().get(0).getUnit());
-    }
-
-    @Test
-    public void setsMeticDimensions() throws Exception {
-        template.send("direct:start", ExchangePattern.InOnly, new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(CwConstants.METRIC_NAME, "errorCount");
-                Map<String, String> dimensionsMap = new LinkedHashMap<>();
-                dimensionsMap.put("keyOne", "valueOne");
-                dimensionsMap.put("keyTwo", "valueTwo");
-                exchange.getIn().setHeader(CwConstants.METRIC_DIMENSIONS, dimensionsMap);
-            }
-        });
-
-        ArgumentCaptor<PutMetricDataRequest> argument = ArgumentCaptor.forClass(PutMetricDataRequest.class);
-        verify(cloudWatchClient).putMetricData(argument.capture());
-
-        List<Dimension> dimensions = argument.getValue().getMetricData().get(0).getDimensions();
-        Dimension dimension = dimensions.get(0);
-        assertEquals(2, dimensions.size());
-        assertEquals("keyOne", dimension.getName());
-        assertEquals("valueOne", dimension.getValue());
-    }
-
-    @Override
-    protected RouteBuilder createRouteBuilder() throws Exception {
-        return new RouteBuilder() {
-            @Override
-            public void configure() throws Exception {
-                from("direct:start")
-                        .to("aws-cw://camel.apache.org/test?amazonCwClient=#amazonCwClient&name=testMetric&unit=Count&timestamp=#now");
-            }
-        };
-    }
-}
diff --git a/components/camel-aws-cw/src/test/java/org/apache/camel/component/aws/cw/CwComponentVerifierExtensionTest.java b/components/camel-aws-cw/src/test/java/org/apache/camel/component/aws/cw/CwComponentVerifierExtensionTest.java
deleted file mode 100644
index 071e017..0000000
--- a/components/camel-aws-cw/src/test/java/org/apache/camel/component/aws/cw/CwComponentVerifierExtensionTest.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.component.aws.cw;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.apache.camel.Component;
-import org.apache.camel.component.extension.ComponentVerifierExtension;
-import org.apache.camel.test.junit5.CamelTestSupport;
-import org.junit.jupiter.api.Test;
-
-import static org.junit.jupiter.api.Assertions.assertEquals;
-
-public class CwComponentVerifierExtensionTest extends CamelTestSupport {
-
-    // *************************************************
-    // Tests (parameters)
-    // *************************************************
-    @Override
-    public boolean isUseRouteBuilder() {
-        return false;
-    }
-
-    @Test
-    public void testParameters() throws Exception {
-        Component component = context().getComponent("aws-cw");
-
-        ComponentVerifierExtension verifier
-                = component.getExtension(ComponentVerifierExtension.class).orElseThrow(IllegalStateException::new);
-
-        Map<String, Object> parameters = new HashMap<>();
-        parameters.put("secretKey", "l");
-        parameters.put("accessKey", "k");
-        parameters.put("region", "l");
-        parameters.put("namespace", "test");
-
-        ComponentVerifierExtension.Result result = verifier.verify(ComponentVerifierExtension.Scope.PARAMETERS, parameters);
-
-        assertEquals(ComponentVerifierExtension.Result.Status.OK, result.getStatus());
-    }
-
-    @Test
-    public void testConnectivity() throws Exception {
-        Component component = context().getComponent("aws-cw");
-        ComponentVerifierExtension verifier
-                = component.getExtension(ComponentVerifierExtension.class).orElseThrow(IllegalStateException::new);
-
-        Map<String, Object> parameters = new HashMap<>();
-        parameters.put("secretKey", "l");
-        parameters.put("accessKey", "k");
-        parameters.put("region", "US_EAST_1");
-        parameters.put("namespace", "test");
-
-        ComponentVerifierExtension.Result result = verifier.verify(ComponentVerifierExtension.Scope.CONNECTIVITY, parameters);
-
-        assertEquals(ComponentVerifierExtension.Result.Status.ERROR, result.getStatus());
-    }
-
-}
diff --git a/components/camel-aws-cw/src/test/java/org/apache/camel/component/aws/cw/integration/CwComponentIntegrationTest.java b/components/camel-aws-cw/src/test/java/org/apache/camel/component/aws/cw/integration/CwComponentIntegrationTest.java
deleted file mode 100644
index ea65e64..0000000
--- a/components/camel-aws-cw/src/test/java/org/apache/camel/component/aws/cw/integration/CwComponentIntegrationTest.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.component.aws.cw.integration;
-
-import org.apache.camel.EndpointInject;
-import org.apache.camel.Exchange;
-import org.apache.camel.ExchangePattern;
-import org.apache.camel.Processor;
-import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.component.aws.cw.CwConstants;
-import org.apache.camel.component.mock.MockEndpoint;
-import org.apache.camel.test.junit5.CamelTestSupport;
-import org.junit.jupiter.api.Disabled;
-import org.junit.jupiter.api.Test;
-
-@Disabled("Must be manually tested. Provide your own accessKey and secretKey!")
-public class CwComponentIntegrationTest extends CamelTestSupport {
-
-    @EndpointInject("mock:result")
-    private MockEndpoint mock;
-
-    @Test
-    public void sendInOnly() throws Exception {
-        mock.expectedMessageCount(1);
-
-        template.send("direct:start", ExchangePattern.InOnly, new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(CwConstants.METRIC_NAME, "ExchangesCompleted");
-                exchange.getIn().setHeader(CwConstants.METRIC_VALUE, "2.0");
-                exchange.getIn().setHeader(CwConstants.METRIC_UNIT, "Count");
-            }
-        });
-
-        assertMockEndpointsSatisfied();
-    }
-
-    @Override
-    protected RouteBuilder createRouteBuilder() throws Exception {
-        return new RouteBuilder() {
-            @Override
-            public void configure() throws Exception {
-                from("direct:start")
-                        .to("aws-cw://http://camel.apache.org/aws-cw?accessKey=XXX&secretKey=XXX")
-                        .to("mock:result");
-            }
-        };
-    }
-}
diff --git a/components/camel-aws-cw/src/test/resources/log4j2.properties b/components/camel-aws-cw/src/test/resources/log4j2.properties
deleted file mode 100644
index 290d33e..0000000
--- a/components/camel-aws-cw/src/test/resources/log4j2.properties
+++ /dev/null
@@ -1,28 +0,0 @@
-## ---------------------------------------------------------------------------
-## Licensed to the Apache Software Foundation (ASF) under one or more
-## contributor license agreements.  See the NOTICE file distributed with
-## this work for additional information regarding copyright ownership.
-## The ASF licenses this file to You under the Apache License, Version 2.0
-## (the "License"); you may not use this file except in compliance with
-## the License.  You may obtain a copy of the License at
-##
-##      http://www.apache.org/licenses/LICENSE-2.0
-##
-## Unless required by applicable law or agreed to in writing, software
-## distributed under the License is distributed on an "AS IS" BASIS,
-## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-## See the License for the specific language governing permissions and
-## limitations under the License.
-## ---------------------------------------------------------------------------
-
-appender.file.type = File
-appender.file.name = file
-appender.file.fileName = target/camel-aws-cw-test.log
-appender.file.layout.type = PatternLayout
-appender.file.layout.pattern = %d [%-15.15t] %-5p %-30.30c{1} - %m%n
-appender.out.type = Console
-appender.out.name = out
-appender.out.layout.type = PatternLayout
-appender.out.layout.pattern = %d [%-15.15t] %-5p %-30.30c{1} - %m%n
-rootLogger.level = INFO
-rootLogger.appenderRef.file.ref = file
diff --git a/components/pom.xml b/components/pom.xml
index 832bab8..de751c7 100644
--- a/components/pom.xml
+++ b/components/pom.xml
@@ -107,7 +107,6 @@
         <module>camel-atomix</module>
         <module>camel-avro</module>
         <module>camel-avro-rpc</module>
-        <module>camel-aws-cw</module>
         <module>camel-aws-s3</module>
         <module>camel-aws-swf</module>
         <module>camel-aws2-athena</module>