This is an automated email from the ASF dual-hosted git repository. orpiske pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/camel-spring-boot.git
commit b5bf6bdd2c878c0c91083687aa8e0a8809869c7a Author: Otavio Rodolfo Piske <[email protected]> AuthorDate: Mon Apr 4 11:51:22 2022 +0200 CAMEL-17879: remove deprecated component camel-ribbon --- .../camel/springboot/catalog/others.properties | 1 - .../camel-core-starter/src/main/docs/core.json | 56 +----- ...iceCallServiceDiscoveryConfigurationCommon.java | 6 +- ...iceCallServiceDiscoveryConfigurationCommon.java | 6 +- ...iceCallServiceDiscoveryConfigurationCommon.java | 6 +- ...iceCallServiceDiscoveryConfigurationCommon.java | 6 +- ...CallServiceLoadBalancerConfigurationCommon.java | 91 --------- ...ServiceLoadBalancerConfigurationProperties.java | 50 ----- components-starter/camel-ribbon-starter/pom.xml | 61 ------- .../camel-ribbon-starter/src/main/docs/ribbon.json | 3 - .../cloud/RibbonCloudAutoConfiguration.java | 108 ----------- .../src/main/resources/META-INF/LICENSE.txt | 203 --------------------- .../src/main/resources/META-INF/NOTICE.txt | 11 -- .../src/main/resources/META-INF/spring.factories | 18 -- .../src/main/resources/META-INF/spring.provides | 17 -- .../RibbonLoadBalancerAutoConfigurationTest.java | 63 ------- .../springboot/cloud/RibbonLoadBalancerTest.java | 128 ------------- .../src/test/resources/application.properties | 18 -- .../src/test/resources/logback.xml | 41 ----- components-starter/pom.xml | 1 - ...melCloudServiceCallGlobalConfigurationTest.java | 1 - .../CamelCloudServiceCallRefExpressionTest.java | 1 - .../CamelCloudServiceCallSimpleExpressionTest.java | 1 - .../boot/cloud/CamelCloudServiceCallTest.java | 1 - .../camel/itest/springboot/CamelRibbonTest.java | 48 ----- tooling/camel-spring-boot-bom/pom.xml | 5 - tooling/camel-spring-boot-dependencies/pom.xml | 10 - .../maven/SpringBootAutoConfigurationMojo.java | 12 -- 28 files changed, 16 insertions(+), 957 deletions(-) diff --git a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/others.properties b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/others.properties index 689b165d1ae..d8936473187 100644 --- a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/others.properties +++ b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/others.properties @@ -18,7 +18,6 @@ opentelemetry opentracing reactor resilience4j -ribbon rxjava shiro spring-security diff --git a/components-starter/camel-core-starter/src/main/docs/core.json b/components-starter/camel-core-starter/src/main/docs/core.json index 04f3cfc5a6e..9fb26a46292 100644 --- a/components-starter/camel-core-starter/src/main/docs/core.json +++ b/components-starter/camel-core-starter/src/main/docs/core.json @@ -20,11 +20,6 @@ "type": "org.apache.camel.model.cloud.springboot.KubernetesServiceCallServiceDiscoveryConfigurationProperties", "sourceType": "org.apache.camel.model.cloud.springboot.KubernetesServiceCallServiceDiscoveryConfigurationProperties" }, - { - "name": "camel.cloud.ribbon.load-balancer", - "type": "org.apache.camel.model.cloud.springboot.RibbonServiceCallServiceLoadBalancerConfigurationProperties", - "sourceType": "org.apache.camel.model.cloud.springboot.RibbonServiceCallServiceLoadBalancerConfigurationProperties" - }, { "name": "camel.hystrix", "type": "org.apache.camel.model.springboot.HystrixConfigurationDefinitionProperties", @@ -177,7 +172,7 @@ { "name": "camel.cloud.consul.service-discovery.properties", "type": "java.util.Map<java.lang.String,java.lang.String>", - "description": "Set client properties to use. These properties are specific to what service call implementation are in use. For example if using ribbon, then the client properties are define in com.netflix.client.config.CommonClientConfigKey.", + "description": "Set client properties to use. These properties are specific to what service call implementation are in use. For example if using a different one, then the client properties are defined according to the specific service in use.", "sourceType": "org.apache.camel.model.cloud.springboot.ConsulServiceCallServiceDiscoveryConfigurationProperties" }, { @@ -226,7 +221,7 @@ { "name": "camel.cloud.dns.service-discovery.properties", "type": "java.util.Map<java.lang.String,java.lang.String>", - "description": "Set client properties to use. These properties are specific to what service call implementation are in use. For example if using ribbon, then the client properties are define in com.netflix.client.config.CommonClientConfigKey.", + "description": "Set client properties to use. These properties are specific to what service call implementation are in use. For example if using a different one, then the client properties are defined according to the specific service in use.", "sourceType": "org.apache.camel.model.cloud.springboot.DnsServiceCallServiceDiscoveryConfigurationProperties" }, { @@ -258,7 +253,7 @@ { "name": "camel.cloud.etcd.service-discovery.properties", "type": "java.util.Map<java.lang.String,java.lang.String>", - "description": "Set client properties to use. These properties are specific to what service call implementation are in use. For example if using ribbon, then the client properties are define in com.netflix.client.config.CommonClientConfigKey.", + "description": "Set client properties to use. These properties are specific to what service call implementation are in use. For example if using a different one, then the client properties are defined according to the specific service in use.", "sourceType": "org.apache.camel.model.cloud.springboot.EtcdServiceCallServiceDiscoveryConfigurationProperties" }, { @@ -412,7 +407,7 @@ { "name": "camel.cloud.kubernetes.service-discovery.properties", "type": "java.util.Map<java.lang.String,java.lang.String>", - "description": "Set client properties to use. These properties are specific to what service call implementation are in use. For example if using ribbon, then the client properties are define in com.netflix.client.config.CommonClientConfigKey.", + "description": "Set client properties to use. These properties are specific to what service call implementation are in use. For example if using a different one, then the client properties are defined according to the specific service in use.", "sourceType": "org.apache.camel.model.cloud.springboot.KubernetesServiceCallServiceDiscoveryConfigurationProperties" }, { @@ -428,49 +423,6 @@ "description": "Sets the username for authentication when using client lookup", "sourceType": "org.apache.camel.model.cloud.springboot.KubernetesServiceCallServiceDiscoveryConfigurationProperties" }, - { - "name": "camel.cloud.ribbon.load-balancer.client-name", - "type": "java.lang.String", - "description": "Sets the Ribbon client name", - "sourceType": "org.apache.camel.model.cloud.springboot.RibbonServiceCallServiceLoadBalancerConfigurationProperties" - }, - { - "name": "camel.cloud.ribbon.load-balancer.configurations", - "type": "java.util.Map<java.lang.String,org.apache.camel.model.cloud.springboot.RibbonServiceCallServiceLoadBalancerConfigurationCommon>", - "description": "Define additional configuration definitions", - "sourceType": "org.apache.camel.model.cloud.springboot.RibbonServiceCallServiceLoadBalancerConfigurationProperties" - }, - { - "name": "camel.cloud.ribbon.load-balancer.enabled", - "type": "java.lang.Boolean", - "description": "Enable the component", - "sourceType": "org.apache.camel.model.cloud.springboot.RibbonServiceCallServiceLoadBalancerConfigurationProperties", - "defaultValue": true - }, - { - "name": "camel.cloud.ribbon.load-balancer.namespace", - "type": "java.lang.String", - "description": "The namespace", - "sourceType": "org.apache.camel.model.cloud.springboot.RibbonServiceCallServiceLoadBalancerConfigurationProperties" - }, - { - "name": "camel.cloud.ribbon.load-balancer.password", - "type": "java.lang.String", - "description": "The password", - "sourceType": "org.apache.camel.model.cloud.springboot.RibbonServiceCallServiceLoadBalancerConfigurationProperties" - }, - { - "name": "camel.cloud.ribbon.load-balancer.properties", - "type": "java.util.Map<java.lang.String,java.lang.String>", - "description": "Set client properties to use. These properties are specific to what service call implementation are in use. For example if using ribbon, then the client properties are define in com.netflix.client.config.CommonClientConfigKey.", - "sourceType": "org.apache.camel.model.cloud.springboot.RibbonServiceCallServiceLoadBalancerConfigurationProperties" - }, - { - "name": "camel.cloud.ribbon.load-balancer.username", - "type": "java.lang.String", - "description": "The username", - "sourceType": "org.apache.camel.model.cloud.springboot.RibbonServiceCallServiceLoadBalancerConfigurationProperties" - }, { "name": "camel.hystrix.allow-maximum-size-to-diverge-from-core-size", "type": "java.lang.Boolean", diff --git a/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/cloud/springboot/ConsulServiceCallServiceDiscoveryConfigurationCommon.java b/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/cloud/springboot/ConsulServiceCallServiceDiscoveryConfigurationCommon.java index c3b57a60f2a..ada61dc4744 100644 --- a/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/cloud/springboot/ConsulServiceCallServiceDiscoveryConfigurationCommon.java +++ b/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/cloud/springboot/ConsulServiceCallServiceDiscoveryConfigurationCommon.java @@ -63,9 +63,9 @@ public class ConsulServiceCallServiceDiscoveryConfigurationCommon { private Integer blockSeconds = 10; /** * Set client properties to use. These properties are specific to what - * service call implementation are in use. For example if using ribbon, then - * the client properties are define in - * com.netflix.client.config.CommonClientConfigKey. + * service call implementation are in use. For example if using a different + * one, then the client properties are defined according to the specific + * service in use. */ private Map<String, String> properties; diff --git a/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/cloud/springboot/DnsServiceCallServiceDiscoveryConfigurationCommon.java b/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/cloud/springboot/DnsServiceCallServiceDiscoveryConfigurationCommon.java index 6c1d2d85f11..eb95e506866 100644 --- a/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/cloud/springboot/DnsServiceCallServiceDiscoveryConfigurationCommon.java +++ b/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/cloud/springboot/DnsServiceCallServiceDiscoveryConfigurationCommon.java @@ -35,9 +35,9 @@ public class DnsServiceCallServiceDiscoveryConfigurationCommon { private String domain; /** * Set client properties to use. These properties are specific to what - * service call implementation are in use. For example if using ribbon, then - * the client properties are define in - * com.netflix.client.config.CommonClientConfigKey. + * service call implementation are in use. For example if using a different + * one, then the client properties are defined according to the specific + * service in use. */ private Map<String, String> properties; diff --git a/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/cloud/springboot/EtcdServiceCallServiceDiscoveryConfigurationCommon.java b/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/cloud/springboot/EtcdServiceCallServiceDiscoveryConfigurationCommon.java index 18424fb0bef..7d062c2796c 100644 --- a/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/cloud/springboot/EtcdServiceCallServiceDiscoveryConfigurationCommon.java +++ b/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/cloud/springboot/EtcdServiceCallServiceDiscoveryConfigurationCommon.java @@ -51,9 +51,9 @@ public class EtcdServiceCallServiceDiscoveryConfigurationCommon { private String type = "on-demand"; /** * Set client properties to use. These properties are specific to what - * service call implementation are in use. For example if using ribbon, then - * the client properties are define in - * com.netflix.client.config.CommonClientConfigKey. + * service call implementation are in use. For example if using a different + * one, then the client properties are defined according to the specific + * service in use. */ private Map<String, String> properties; diff --git a/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/cloud/springboot/KubernetesServiceCallServiceDiscoveryConfigurationCommon.java b/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/cloud/springboot/KubernetesServiceCallServiceDiscoveryConfigurationCommon.java index 066236c3392..a52f93172b1 100644 --- a/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/cloud/springboot/KubernetesServiceCallServiceDiscoveryConfigurationCommon.java +++ b/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/cloud/springboot/KubernetesServiceCallServiceDiscoveryConfigurationCommon.java @@ -115,9 +115,9 @@ public class KubernetesServiceCallServiceDiscoveryConfigurationCommon { private Boolean trustCerts = false; /** * Set client properties to use. These properties are specific to what - * service call implementation are in use. For example if using ribbon, then - * the client properties are define in - * com.netflix.client.config.CommonClientConfigKey. + * service call implementation are in use. For example if using a different + * one, then the client properties are defined according to the specific + * service in use. */ private Map<String, String> properties; diff --git a/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/cloud/springboot/RibbonServiceCallServiceLoadBalancerConfigurationCommon.java b/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/cloud/springboot/RibbonServiceCallServiceLoadBalancerConfigurationCommon.java deleted file mode 100644 index 72c25b2abd9..00000000000 --- a/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/cloud/springboot/RibbonServiceCallServiceLoadBalancerConfigurationCommon.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.model.cloud.springboot; - -import java.util.Map; -import javax.annotation.Generated; - -/** - * Generated by camel-package-maven-plugin - do not edit this file! - */ -@Generated("org.apache.camel.springboot.maven.SpringBootAutoConfigurationMojo") -public class RibbonServiceCallServiceLoadBalancerConfigurationCommon { - - /** - * The namespace - */ - private String namespace; - /** - * The username - */ - private String username; - /** - * The password - */ - private String password; - /** - * Sets the Ribbon client name - */ - private String clientName; - /** - * Set client properties to use. These properties are specific to what - * service call implementation are in use. For example if using ribbon, then - * the client properties are define in - * com.netflix.client.config.CommonClientConfigKey. - */ - private Map<String, String> properties; - - public String getNamespace() { - return namespace; - } - - public void setNamespace(String namespace) { - this.namespace = namespace; - } - - public String getUsername() { - return username; - } - - public void setUsername(String username) { - this.username = username; - } - - public String getPassword() { - return password; - } - - public void setPassword(String password) { - this.password = password; - } - - public String getClientName() { - return clientName; - } - - public void setClientName(String clientName) { - this.clientName = clientName; - } - - public Map<String, String> getProperties() { - return properties; - } - - public void setProperties(Map<String, String> properties) { - this.properties = properties; - } -} \ No newline at end of file diff --git a/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/cloud/springboot/RibbonServiceCallServiceLoadBalancerConfigurationProperties.java b/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/cloud/springboot/RibbonServiceCallServiceLoadBalancerConfigurationProperties.java deleted file mode 100644 index 04f2a4b3de4..00000000000 --- a/components-starter/camel-core-starter/src/main/java/org/apache/camel/model/cloud/springboot/RibbonServiceCallServiceLoadBalancerConfigurationProperties.java +++ /dev/null @@ -1,50 +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.model.cloud.springboot; - -import java.util.HashMap; -import java.util.Map; -import javax.annotation.Generated; -import org.springframework.boot.context.properties.ConfigurationProperties; - -@Generated("org.apache.camel.springboot.maven.SpringBootAutoConfigurationMojo") -@ConfigurationProperties(prefix = "camel.cloud.ribbon.load-balancer") -public class RibbonServiceCallServiceLoadBalancerConfigurationProperties - extends - RibbonServiceCallServiceLoadBalancerConfigurationCommon { - - /** - * Enable the component - */ - private boolean enabled = true; - /** - * Define additional configuration definitions - */ - private Map<String, RibbonServiceCallServiceLoadBalancerConfigurationCommon> configurations = new HashMap<>(); - - public Map<String, RibbonServiceCallServiceLoadBalancerConfigurationCommon> getConfigurations() { - return configurations; - } - - public boolean isEnabled() { - return enabled; - } - - public void setEnabled(boolean enabled) { - this.enabled = enabled; - } -} \ No newline at end of file diff --git a/components-starter/camel-ribbon-starter/pom.xml b/components-starter/camel-ribbon-starter/pom.xml deleted file mode 100644 index b522cad9f07..00000000000 --- a/components-starter/camel-ribbon-starter/pom.xml +++ /dev/null @@ -1,61 +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.springboot</groupId> - <artifactId>components-starter</artifactId> - <version>3.17.0-SNAPSHOT</version> - </parent> - <artifactId>camel-ribbon-starter</artifactId> - <packaging>jar</packaging> - <name>Camel SB Starters :: Ribbon</name> - <description>Spring-Boot Starter for Camel Components</description> - <dependencies> - <dependency> - <groupId>org.springframework.boot</groupId> - <artifactId>spring-boot-starter</artifactId> - <version>${spring-boot-version}</version> - </dependency> - <dependency> - <groupId>org.apache.camel</groupId> - <artifactId>camel-ribbon</artifactId> - <version>${camel-version}</version> - </dependency> - <dependency> - <groupId>org.apache.camel</groupId> - <artifactId>camel-jetty</artifactId> - <version>${camel-version}</version> - <scope>test</scope> - </dependency> - <dependency> - <groupId>org.apache.camel</groupId> - <artifactId>camel-http</artifactId> - <version>${camel-version}</version> - <scope>test</scope> - </dependency> - <!--START OF GENERATED CODE--> - <dependency> - <groupId>org.apache.camel.springboot</groupId> - <artifactId>camel-core-starter</artifactId> - </dependency> - <!--END OF GENERATED CODE--> - </dependencies> -</project> diff --git a/components-starter/camel-ribbon-starter/src/main/docs/ribbon.json b/components-starter/camel-ribbon-starter/src/main/docs/ribbon.json deleted file mode 100644 index da5f5f24116..00000000000 --- a/components-starter/camel-ribbon-starter/src/main/docs/ribbon.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "properties": [] -} \ No newline at end of file diff --git a/components-starter/camel-ribbon-starter/src/main/java/org/apache/camel/component/ribbon/springboot/cloud/RibbonCloudAutoConfiguration.java b/components-starter/camel-ribbon-starter/src/main/java/org/apache/camel/component/ribbon/springboot/cloud/RibbonCloudAutoConfiguration.java deleted file mode 100644 index ad91b3b774b..00000000000 --- a/components-starter/camel-ribbon-starter/src/main/java/org/apache/camel/component/ribbon/springboot/cloud/RibbonCloudAutoConfiguration.java +++ /dev/null @@ -1,108 +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.ribbon.springboot.cloud; - -import java.util.HashMap; -import java.util.Map; - -import javax.annotation.PostConstruct; - -import org.apache.camel.CamelContext; -import org.apache.camel.cloud.ServiceLoadBalancer; -import org.apache.camel.component.ribbon.cloud.RibbonServiceLoadBalancerFactory; -import org.apache.camel.model.cloud.springboot.RibbonServiceCallServiceLoadBalancerConfigurationCommon; -import org.apache.camel.model.cloud.springboot.RibbonServiceCallServiceLoadBalancerConfigurationProperties; -import org.apache.camel.spring.boot.CamelAutoConfiguration; -import org.apache.camel.spring.boot.util.GroupCondition; -import org.apache.camel.support.IntrospectionSupport; -import org.springframework.beans.factory.BeanCreationException; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.config.ConfigurableBeanFactory; -import org.springframework.boot.autoconfigure.AutoConfigureAfter; -import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; -import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; -import org.springframework.boot.context.properties.EnableConfigurationProperties; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Conditional; -import org.springframework.context.annotation.Configuration; -import org.springframework.context.annotation.Lazy; - -@Configuration(proxyBeanMethods = false) -@ConditionalOnBean(CamelAutoConfiguration.class) -@Conditional(RibbonCloudAutoConfiguration.Condition.class) -@AutoConfigureAfter(CamelAutoConfiguration.class) -@EnableConfigurationProperties(RibbonServiceCallServiceLoadBalancerConfigurationProperties.class) -public class RibbonCloudAutoConfiguration { - @Autowired - private CamelContext camelContext; - @Autowired - private RibbonServiceCallServiceLoadBalancerConfigurationProperties configuration; - @Autowired - private ConfigurableBeanFactory beanFactory; - - @Lazy - @Bean(name = "ribbon-load-balancer") - @ConditionalOnClass(CamelContext.class) - public ServiceLoadBalancer configureLoadBalancerFactory() throws Exception { - RibbonServiceLoadBalancerFactory factory = new RibbonServiceLoadBalancerFactory(); - - IntrospectionSupport.setProperties( - camelContext, - camelContext.getTypeConverter(), - factory, - IntrospectionSupport.getNonNullProperties(configuration)); - - return factory.newInstance(camelContext); - } - - @PostConstruct - public void postConstruct() { - if (beanFactory != null) { - Map<String, Object> parameters = new HashMap<>(); - - for (Map.Entry<String, RibbonServiceCallServiceLoadBalancerConfigurationCommon> entry : configuration.getConfigurations().entrySet()) { - // clean up params - parameters.clear(); - - // The instance factory - RibbonServiceLoadBalancerFactory factory = new RibbonServiceLoadBalancerFactory(); - - try { - IntrospectionSupport.getProperties(entry.getValue(), parameters, null, false); - IntrospectionSupport.setProperties(camelContext, camelContext.getTypeConverter(), factory, parameters); - - beanFactory.registerSingleton(entry.getKey(), factory.newInstance(camelContext)); - } catch (Exception e) { - throw new BeanCreationException(entry.getKey(), e.getMessage(), e); - } - } - } - } - - // ******************************* - // Condition - // ******************************* - - public static class Condition extends GroupCondition { - public Condition() { - super( - "camel.cloud.ribbon", - "camel.cloud.ribbon.load-balancer" - ); - } - } -} diff --git a/components-starter/camel-ribbon-starter/src/main/resources/META-INF/LICENSE.txt b/components-starter/camel-ribbon-starter/src/main/resources/META-INF/LICENSE.txt deleted file mode 100644 index 6b0b1270ff0..00000000000 --- a/components-starter/camel-ribbon-starter/src/main/resources/META-INF/LICENSE.txt +++ /dev/null @@ -1,203 +0,0 @@ - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed 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. - diff --git a/components-starter/camel-ribbon-starter/src/main/resources/META-INF/NOTICE.txt b/components-starter/camel-ribbon-starter/src/main/resources/META-INF/NOTICE.txt deleted file mode 100644 index 2e215bf2e6b..00000000000 --- a/components-starter/camel-ribbon-starter/src/main/resources/META-INF/NOTICE.txt +++ /dev/null @@ -1,11 +0,0 @@ - ========================================================================= - == NOTICE file corresponding to the section 4 d of == - == the Apache License, Version 2.0, == - == in this case for the Apache Camel distribution. == - ========================================================================= - - This product includes software developed by - The Apache Software Foundation (http://www.apache.org/). - - Please read the different LICENSE files present in the licenses directory of - this distribution. diff --git a/components-starter/camel-ribbon-starter/src/main/resources/META-INF/spring.factories b/components-starter/camel-ribbon-starter/src/main/resources/META-INF/spring.factories deleted file mode 100644 index 0bfb2aaea14..00000000000 --- a/components-starter/camel-ribbon-starter/src/main/resources/META-INF/spring.factories +++ /dev/null @@ -1,18 +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. -## --------------------------------------------------------------------------- -org.springframework.boot.autoconfigure.EnableAutoConfiguration=\ -org.apache.camel.component.ribbon.springboot.cloud.RibbonCloudAutoConfiguration \ No newline at end of file diff --git a/components-starter/camel-ribbon-starter/src/main/resources/META-INF/spring.provides b/components-starter/camel-ribbon-starter/src/main/resources/META-INF/spring.provides deleted file mode 100644 index a43ae53c458..00000000000 --- a/components-starter/camel-ribbon-starter/src/main/resources/META-INF/spring.provides +++ /dev/null @@ -1,17 +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. -## --------------------------------------------------------------------------- -provides: camel-ribbon diff --git a/components-starter/camel-ribbon-starter/src/test/java/org/apache/camel/component/ribbon/springboot/cloud/RibbonLoadBalancerAutoConfigurationTest.java b/components-starter/camel-ribbon-starter/src/test/java/org/apache/camel/component/ribbon/springboot/cloud/RibbonLoadBalancerAutoConfigurationTest.java deleted file mode 100644 index 063698807d2..00000000000 --- a/components-starter/camel-ribbon-starter/src/test/java/org/apache/camel/component/ribbon/springboot/cloud/RibbonLoadBalancerAutoConfigurationTest.java +++ /dev/null @@ -1,63 +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.ribbon.springboot.cloud; - -import org.apache.camel.cloud.ServiceLoadBalancer; -import org.apache.camel.model.cloud.springboot.RibbonServiceCallServiceLoadBalancerConfigurationProperties; -import org.junit.jupiter.api.Test; -import org.springframework.boot.autoconfigure.EnableAutoConfiguration; -import org.springframework.boot.test.context.runner.ApplicationContextRunner; -import org.springframework.context.annotation.Configuration; - -import static org.assertj.core.api.Assertions.assertThat; - -public class RibbonLoadBalancerAutoConfigurationTest { - @Test - public void testRibbonLoadBalancerDisabled() { - new ApplicationContextRunner() - .withUserConfiguration(TestConfiguration.class) - .withPropertyValues( - "spring.main.banner-mode=off", - "camel.cloud.ribbon.load-balancer.enabled=false") - .run( - context -> { - assertThat(context).doesNotHaveBean(RibbonServiceCallServiceLoadBalancerConfigurationProperties.class); - assertThat(context).getBeans(ServiceLoadBalancer.class).doesNotContainKeys("ribbon-load-balancer"); - } - ); - } - - @Test - public void testRibbonLoadBalancerEnabled() { - new ApplicationContextRunner() - .withUserConfiguration(TestConfiguration.class) - .withPropertyValues( - "spring.main.banner-mode=off", - "camel.cloud.ribbon.load-balancer.enabled=true") - .run( - context -> { - assertThat(context).hasSingleBean(RibbonServiceCallServiceLoadBalancerConfigurationProperties.class); - assertThat(context).getBeans(ServiceLoadBalancer.class).containsKeys("ribbon-load-balancer"); - } - ); - } - - @EnableAutoConfiguration - @Configuration - public static class TestConfiguration { - } -} diff --git a/components-starter/camel-ribbon-starter/src/test/java/org/apache/camel/component/ribbon/springboot/cloud/RibbonLoadBalancerTest.java b/components-starter/camel-ribbon-starter/src/test/java/org/apache/camel/component/ribbon/springboot/cloud/RibbonLoadBalancerTest.java deleted file mode 100644 index 3023b4c4109..00000000000 --- a/components-starter/camel-ribbon-starter/src/test/java/org/apache/camel/component/ribbon/springboot/cloud/RibbonLoadBalancerTest.java +++ /dev/null @@ -1,128 +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.ribbon.springboot.cloud; - -import java.util.Optional; - -import org.apache.camel.CamelContext; -import org.apache.camel.Navigate; -import org.apache.camel.Processor; -import org.apache.camel.ProducerTemplate; -import org.apache.camel.Route; -import org.apache.camel.RoutesBuilder; -import org.apache.camel.builder.RouteBuilder; -import org.apache.camel.component.ribbon.cloud.RibbonServiceLoadBalancer; -import org.apache.camel.impl.cloud.DefaultServiceCallProcessor; -import org.apache.camel.spring.boot.cloud.CamelCloudServiceDiscovery; -import org.apache.camel.spring.boot.cloud.CamelCloudServiceFilter; -import org.apache.camel.test.AvailablePortFinder; -import org.junit.jupiter.api.Assertions; -import org.junit.jupiter.api.Test; -import org.springframework.boot.autoconfigure.EnableAutoConfiguration; -import org.springframework.boot.test.context.runner.ApplicationContextRunner; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; - -import static org.assertj.core.api.Assertions.assertThat; - -public class RibbonLoadBalancerTest { - private static final int PORT1 = AvailablePortFinder.getNextAvailable(); - private static final int PORT2 = AvailablePortFinder.getNextAvailable(); - - @Test - public void testLoadBalancer() throws Exception { - new ApplicationContextRunner() - .withUserConfiguration(TestConfiguration.class) - .withPropertyValues( - "spring.main.banner-mode=off", - "camel.cloud.consul.service-discovery.enabled=false", - "debug=false", - "camel.cloud.service-discovery.services[myService]=localhost:" + PORT1 + ",localhost:" + PORT2, - "camel.cloud.ribbon.load-balancer.enabled=true") - .run( - context -> { - final CamelContext camelContext = context.getBean(CamelContext.class); - final ProducerTemplate template = camelContext.createProducerTemplate(); - - DefaultServiceCallProcessor processor = findServiceCallProcessor(camelContext); - assertThat(processor.getLoadBalancer()).isNotNull(); - assertThat(processor.getLoadBalancer()).isInstanceOf(RibbonServiceLoadBalancer.class); - - RibbonServiceLoadBalancer loadBalancer = (RibbonServiceLoadBalancer)processor.getLoadBalancer(); - assertThat(loadBalancer.getServiceDiscovery()).isInstanceOf(CamelCloudServiceDiscovery.class); - assertThat(loadBalancer.getServiceFilter()).isInstanceOf(CamelCloudServiceFilter.class); - - assertThat(template.requestBody("direct:start", null, String.class)).isEqualTo("" + PORT2); - assertThat(template.requestBody("direct:start", null, String.class)).isEqualTo("" + PORT1); - } - ); - } - - @EnableAutoConfiguration - @Configuration - public static class TestConfiguration { - @Bean - public RoutesBuilder routeBuilder() { - return new RouteBuilder() { - @Override - public void configure() throws Exception { - from("direct:start") - .routeId("scall") - .serviceCall() - .name("myService") - .uri("jetty:http://myService") - .end(); - fromF("jetty:http://localhost:%d", PORT1) - .routeId("" + PORT1) - .transform() - .constant("" + PORT1); - fromF("jetty:http://localhost:%d", PORT2) - .routeId("" + PORT2) - .transform() - .constant("" + PORT2); - } - }; - } - } - - // ************************************ - // Helpers - // ************************************ - - protected DefaultServiceCallProcessor findServiceCallProcessor(CamelContext context) { - Route route = context.getRoute("scall"); - - Assertions.assertNotNull(route, "ServiceCall Route should be present"); - - return findServiceCallProcessor(route.navigate()) - .orElseThrow(() -> new IllegalStateException("Unable to find a ServiceCallProcessor")); - } - - protected Optional<DefaultServiceCallProcessor> findServiceCallProcessor(Navigate<Processor> navigate) { - for (Processor processor : navigate.next()) { - if (processor instanceof DefaultServiceCallProcessor) { - return Optional.ofNullable((DefaultServiceCallProcessor)processor); - } - - if (processor instanceof Navigate) { - return findServiceCallProcessor((Navigate<Processor>)processor); - } - } - - return Optional.empty(); - } -} diff --git a/components-starter/camel-ribbon-starter/src/test/resources/application.properties b/components-starter/camel-ribbon-starter/src/test/resources/application.properties deleted file mode 100644 index 71e1678fa96..00000000000 --- a/components-starter/camel-ribbon-starter/src/test/resources/application.properties +++ /dev/null @@ -1,18 +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. -## --------------------------------------------------------------------------- - -spring.main.banner-mode=off diff --git a/components-starter/camel-ribbon-starter/src/test/resources/logback.xml b/components-starter/camel-ribbon-starter/src/test/resources/logback.xml deleted file mode 100644 index 9de159dd04a..00000000000 --- a/components-starter/camel-ribbon-starter/src/test/resources/logback.xml +++ /dev/null @@ -1,41 +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. - ---> -<configuration> - - <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> - <!-- encoders are assigned the type - ch.qos.logback.classic.encoder.PatternLayoutEncoder by default --> - <encoder> - <pattern>%d{HH:mm:ss.SSS} [%-15.15thread] %-5level %-30.30logger - %msg%n</pattern> - </encoder> - </appender> - - <appender name="FILE" class="ch.qos.logback.core.FileAppender"> - <encoder> - <pattern>%d{HH:mm:ss.SSS} [%-15.15thread] %-5level %-30.30logger - %msg%n</pattern> - </encoder> - <file>target/camel-ribbon-starter-test.log</file> - </appender> - - <root level="INFO"> - <appender-ref ref="FILE"/> - </root> - -</configuration> \ No newline at end of file diff --git a/components-starter/pom.xml b/components-starter/pom.xml index eaa09480b84..0e5d4fd9762 100644 --- a/components-starter/pom.xml +++ b/components-starter/pom.xml @@ -361,7 +361,6 @@ <module>camel-rest-starter</module> <module>camel-rest-swagger-starter</module> <module>camel-resteasy-starter</module> - <module>camel-ribbon-starter</module> <module>camel-robotframework-starter</module> <module>camel-rss-starter</module> <module>camel-rxjava-starter</module> diff --git a/core/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallGlobalConfigurationTest.java b/core/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallGlobalConfigurationTest.java index 01abe2204f2..a3de5b7ca29 100644 --- a/core/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallGlobalConfigurationTest.java +++ b/core/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallGlobalConfigurationTest.java @@ -98,7 +98,6 @@ public class CamelCloudServiceCallGlobalConfigurationTest { prop.put("camel.cloud.service-call.service-filter", "sf"); prop.put("camel.cloud.service-discovery.configurations[sd].services[custom-svc-list]", SpringBootPropertyUtil.getDiscoveryServices()); prop.put("camel.cloud.service-filter.configurations[sf].blacklist[custom-svc-list]", SpringBootPropertyUtil.getServiceFilterBlacklist()); - prop.put("ribbon.enabled", false); prop.put("debug", false); return prop; } diff --git a/core/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallRefExpressionTest.java b/core/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallRefExpressionTest.java index dd162011546..c75f0c1ac25 100644 --- a/core/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallRefExpressionTest.java +++ b/core/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallRefExpressionTest.java @@ -127,7 +127,6 @@ public class CamelCloudServiceCallRefExpressionTest { prop.put("camel.cloud.service-call.component", "http"); prop.put("camel.cloud.service-discovery.services[custom-svc-list]", SpringBootPropertyUtil.getDiscoveryServices()); prop.put("camel.cloud.service-filter.blacklist[custom-svc-list]", SpringBootPropertyUtil.getServiceFilterBlacklist()); - prop.put("ribbon.enabled", false); prop.put("debug", false); return prop; } diff --git a/core/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallSimpleExpressionTest.java b/core/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallSimpleExpressionTest.java index 4dd9df810b9..c25575e3c8f 100644 --- a/core/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallSimpleExpressionTest.java +++ b/core/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallSimpleExpressionTest.java @@ -97,7 +97,6 @@ public class CamelCloudServiceCallSimpleExpressionTest { prop.put("camel.cloud.service-call.expression-language", "simple"); prop.put("camel.cloud.service-discovery.services[custom-svc-list]", SpringBootPropertyUtil.getDiscoveryServices()); prop.put("camel.cloud.service-filter.blacklist[custom-svc-list]", SpringBootPropertyUtil.getServiceFilterBlacklist()); - prop.put("ribbon.enabled", false); prop.put("debug", false); return prop; } diff --git a/core/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallTest.java b/core/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallTest.java index 2985a25a587..75bbce9fcab 100644 --- a/core/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallTest.java +++ b/core/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallTest.java @@ -96,7 +96,6 @@ public class CamelCloudServiceCallTest { prop.put("camel.cloud.service-call.component", "http"); prop.put("camel.cloud.service-discovery.services[custom-svc-list]", SpringBootPropertyUtil.getDiscoveryServices()); prop.put("camel.cloud.service-filter.blacklist[custom-svc-list]", SpringBootPropertyUtil.getServiceFilterBlacklist()); - prop.put("ribbon.enabled", false); prop.put("debug", false); return prop; } diff --git a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelRibbonTest.java b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelRibbonTest.java deleted file mode 100644 index 999a65d46ec..00000000000 --- a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelRibbonTest.java +++ /dev/null @@ -1,48 +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.itest.springboot; - -import org.apache.camel.itest.springboot.util.ArquillianPackager; -import org.jboss.arquillian.container.test.api.Deployment; -import org.jboss.arquillian.junit5.ArquillianExtension; -import org.jboss.shrinkwrap.api.Archive; -import org.junit.jupiter.api.Test; -import org.junit.jupiter.api.extension.ExtendWith; - - -@ExtendWith(ArquillianExtension.class) -public class CamelRibbonTest extends AbstractSpringBootTestSupport { - - @Deployment - public static Archive<?> createSpringBootPackage() throws Exception { - return ArquillianPackager.springBootPackage(createTestConfig()); - } - - public static ITestConfig createTestConfig() { - return new ITestConfigBuilder() - .module(inferModuleName(CamelRibbonTest.class)) - .build(); - } - - @Test - public void componentTests() throws Exception { - // no components - this.runModuleUnitTestsIfEnabled(config); - } - - -} diff --git a/tooling/camel-spring-boot-bom/pom.xml b/tooling/camel-spring-boot-bom/pom.xml index fdb7f6321bf..0483dcf9975 100644 --- a/tooling/camel-spring-boot-bom/pom.xml +++ b/tooling/camel-spring-boot-bom/pom.xml @@ -1303,11 +1303,6 @@ <artifactId>camel-resteasy-starter</artifactId> <version>${project.version}</version> </dependency> - <dependency> - <groupId>org.apache.camel.springboot</groupId> - <artifactId>camel-ribbon-starter</artifactId> - <version>${project.version}</version> - </dependency> <dependency> <groupId>org.apache.camel.springboot</groupId> <artifactId>camel-robotframework-starter</artifactId> diff --git a/tooling/camel-spring-boot-dependencies/pom.xml b/tooling/camel-spring-boot-dependencies/pom.xml index 0db66854170..961c4e87397 100644 --- a/tooling/camel-spring-boot-dependencies/pom.xml +++ b/tooling/camel-spring-boot-dependencies/pom.xml @@ -1491,11 +1491,6 @@ <artifactId>camel-resteasy-starter</artifactId> <version>${project.version}</version> </dependency> - <dependency> - <groupId>org.apache.camel.springboot</groupId> - <artifactId>camel-ribbon-starter</artifactId> - <version>${project.version}</version> - </dependency> <dependency> <groupId>org.apache.camel.springboot</groupId> <artifactId>camel-robotframework-starter</artifactId> @@ -3622,11 +3617,6 @@ <artifactId>camel-resteasy</artifactId> <version>3.17.0-SNAPSHOT</version> </dependency> - <dependency> - <groupId>org.apache.camel</groupId> - <artifactId>camel-ribbon</artifactId> - <version>3.17.0-SNAPSHOT</version> - </dependency> <dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-robotframework</artifactId> diff --git a/tooling/camel-spring-boot-generator-maven-plugin/src/main/java/org/apache/camel/springboot/maven/SpringBootAutoConfigurationMojo.java b/tooling/camel-spring-boot-generator-maven-plugin/src/main/java/org/apache/camel/springboot/maven/SpringBootAutoConfigurationMojo.java index eb9cf69887b..81cf1f82560 100644 --- a/tooling/camel-spring-boot-generator-maven-plugin/src/main/java/org/apache/camel/springboot/maven/SpringBootAutoConfigurationMojo.java +++ b/tooling/camel-spring-boot-generator-maven-plugin/src/main/java/org/apache/camel/springboot/maven/SpringBootAutoConfigurationMojo.java @@ -236,18 +236,6 @@ public class SpringBootAutoConfigurationMojo extends AbstractSpringBootGenerator createEipModelConfigurationSource(pkg, model, "camel.cloud.kubernetes.service-discovery", true); } - // Ribbon - json = loadModelJson(files, "ribbonLoadBalancer"); - if (json != null) { - EipModel model = JsonMapper.generateEipModel(json); - - int pos = model.getJavaType().lastIndexOf("."); - String pkg = model.getJavaType().substring(0, pos) + ".springboot"; - - // Generate properties, auto-configuration for camel-core-starter - createEipModelConfigurationSource(pkg, model, "camel.cloud.ribbon.load-balancer", true); - } - // Rest json = loadModelJson(files, "restConfiguration"); if (json != null) {
