You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2020/08/12 11:28:21 UTC
[camel] branch master updated: CAMEL-15390: CollectionStringBuilder
- Use JDK util methods instead (#4085)
This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/master by this push:
new 9a7af71 CAMEL-15390: CollectionStringBuilder - Use JDK util methods instead (#4085)
9a7af71 is described below
commit 9a7af71ae489ce126c0a57c90c8b7e8ac5bb5185
Author: Zineb BENDHIBA <be...@gmail.com>
AuthorDate: Wed Aug 12 13:28:01 2020 +0200
CAMEL-15390: CollectionStringBuilder - Use JDK util methods instead (#4085)
* CAMEL-15390: CollectionStringBuilder - Use JDK util methods instead
* CAMEL-15390: remove duplicates toString
---
.../camel/openapi/OpenApiRestProducerFactory.java | 18 +++++-----
.../apache/camel/component/rest/RestProducer.java | 10 +++---
.../org/apache/camel/spring/SpringTestSupport.java | 8 ++---
.../sql/DefaultSqlPrepareStatementStrategy.java | 8 ++---
.../camel/swagger/SwaggerRestProducerFactory.java | 14 ++++----
.../spring/junit5/CamelAnnotationsHandler.java | 8 ++---
.../junit5/CamelSpringTestContextLoader.java | 21 ------------
.../camel/test/spring/CamelAnnotationsHandler.java | 8 ++---
.../test/spring/CamelSpringTestContextLoader.java | 21 ------------
.../camel/component/undertow/UndertowConsumer.java | 8 ++---
.../zookeeper/ZooKeeperConfiguration.java | 8 ++---
.../camel/impl/engine/DefaultShutdownStrategy.java | 8 ++---
.../org/apache/camel/builder/DataFormatClause.java | 10 +++---
.../java/org/apache/camel/impl/DefaultModel.java | 10 +++---
.../camel/model/dataformat/JsonDataFormat.java | 11 +++---
.../camel/model/dataformat/XStreamDataFormat.java | 10 +++---
.../camel/model/language/ExpressionDefinition.java | 6 ++--
.../camel/core/xml/CamelJMXAgentDefinition.java | 39 ++++++++++------------
.../converter/stream/CachedOutputStreamTest.java | 11 +++---
.../mbean/ManagedFailoverLoadBalancer.java | 8 ++---
20 files changed, 101 insertions(+), 144 deletions(-)
diff --git a/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/OpenApiRestProducerFactory.java b/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/OpenApiRestProducerFactory.java
index 2c43e58..a8c9aed 100644
--- a/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/OpenApiRestProducerFactory.java
+++ b/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/OpenApiRestProducerFactory.java
@@ -20,6 +20,7 @@ import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
+import java.util.StringJoiner;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
@@ -38,7 +39,6 @@ import org.apache.camel.Producer;
import org.apache.camel.spi.RestConfiguration;
import org.apache.camel.spi.RestProducerFactory;
import org.apache.camel.support.CamelContextHelper;
-import org.apache.camel.util.CollectionStringBuffer;
import org.apache.camel.util.IOHelper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -155,8 +155,8 @@ public class OpenApiRestProducerFactory implements RestProducerFactory {
LOG.debug("Using RestProducerFactory: {}", factory);
if (produces == null) {
- CollectionStringBuffer csb = new CollectionStringBuffer(",");
- List<String> list = new ArrayList<String>();
+ StringJoiner producesBuilder = new StringJoiner(",");
+ List<String> list = new ArrayList<>();
if (operation instanceof Oas20Operation) {
list = ((Oas20Operation)operation).produces;
} else if (operation instanceof Oas30Operation) {
@@ -176,14 +176,14 @@ public class OpenApiRestProducerFactory implements RestProducerFactory {
}
if (list != null) {
for (String s : list) {
- csb.append(s);
+ producesBuilder.add(s);
}
}
- produces = csb.isEmpty() ? null : csb.toString();
+ produces = producesBuilder.length() == 0 ? null : producesBuilder.toString();
}
if (consumes == null) {
- CollectionStringBuffer csb = new CollectionStringBuffer(",");
- List<String> list = new ArrayList<String>();
+ StringJoiner consumesBuilder = new StringJoiner(",");
+ List<String> list = new ArrayList<>();
if (operation instanceof Oas20Operation) {
list = ((Oas20Operation)operation).consumes;
} else if (operation instanceof Oas30Operation) {
@@ -203,10 +203,10 @@ public class OpenApiRestProducerFactory implements RestProducerFactory {
}
if (list != null) {
for (String s : list) {
- csb.append(s);
+ consumesBuilder.add(s);
}
}
- consumes = csb.isEmpty() ? null : csb.toString();
+ consumes = consumesBuilder.length() == 0 ? null : consumesBuilder.toString();
}
String basePath = null;
diff --git a/components/camel-rest/src/main/java/org/apache/camel/component/rest/RestProducer.java b/components/camel-rest/src/main/java/org/apache/camel/component/rest/RestProducer.java
index 1ae664a..46ac849 100644
--- a/components/camel-rest/src/main/java/org/apache/camel/component/rest/RestProducer.java
+++ b/components/camel-rest/src/main/java/org/apache/camel/component/rest/RestProducer.java
@@ -23,6 +23,7 @@ import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.Locale;
import java.util.Map;
+import java.util.StringJoiner;
import org.apache.camel.AsyncCallback;
import org.apache.camel.AsyncProcessor;
@@ -39,7 +40,6 @@ import org.apache.camel.support.AsyncProcessorConverterHelper;
import org.apache.camel.support.DefaultAsyncProducer;
import org.apache.camel.support.PropertyBindingSupport;
import org.apache.camel.support.service.ServiceHelper;
-import org.apache.camel.util.CollectionStringBuffer;
import org.apache.camel.util.FileUtil;
import org.apache.camel.util.ObjectHelper;
import org.apache.camel.util.URISupport;
@@ -152,7 +152,7 @@ public class RestProducer extends DefaultAsyncProducer {
// resolve template and replace {key} with the values form the exchange
// each {} is a parameter (url templating)
String[] arr = resolvedUriTemplate.split("\\/");
- CollectionStringBuffer csb = new CollectionStringBuffer("/");
+ StringJoiner uriTemplateBuilder = new StringJoiner("/");
for (String a : arr) {
String resolvedUriParam = resolveHeaderPlaceholders(a, inMessage);
@@ -162,12 +162,12 @@ public class RestProducer extends DefaultAsyncProducer {
&& !resolvedUriParam.contains("{")
&& !resolvedUriParam.contains("}")) {
hasPath = true;
- csb.append(resolvedUriParam);
+ uriTemplateBuilder.add(resolvedUriParam);
} else {
- csb.append(a);
+ uriTemplateBuilder.add(a);
}
}
- resolvedUriTemplate = csb.toString();
+ resolvedUriTemplate = uriTemplateBuilder.toString();
}
}
diff --git a/components/camel-spring/src/test/java/org/apache/camel/spring/SpringTestSupport.java b/components/camel-spring/src/test/java/org/apache/camel/spring/SpringTestSupport.java
index 1a94744..e07dc4f 100644
--- a/components/camel-spring/src/test/java/org/apache/camel/spring/SpringTestSupport.java
+++ b/components/camel-spring/src/test/java/org/apache/camel/spring/SpringTestSupport.java
@@ -21,6 +21,7 @@ import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
+import java.util.StringJoiner;
import org.apache.camel.CamelContext;
import org.apache.camel.ContextTestSupport;
@@ -28,7 +29,6 @@ import org.apache.camel.api.management.JmxSystemPropertyKeys;
import org.apache.camel.impl.engine.DefaultPackageScanClassResolver;
import org.apache.camel.impl.scan.AssignableToPackageScanFilter;
import org.apache.camel.impl.scan.InvertingPackageScanFilter;
-import org.apache.camel.util.CollectionStringBuffer;
import org.apache.camel.util.IOHelper;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
@@ -51,11 +51,11 @@ public abstract class SpringTestSupport extends ContextTestSupport {
System.setProperty(JmxSystemPropertyKeys.DISABLED, Boolean.toString(!useJmx()));
Class<?>[] excluded = excludeRoutes();
if (excluded != null && excluded.length > 0) {
- CollectionStringBuffer csb = new CollectionStringBuffer(",");
+ StringJoiner excludedRoutes = new StringJoiner(",");
for (Class<?> clazz : excluded) {
- csb.append(clazz.getName());
+ excludedRoutes.add(clazz.getName());
}
- System.setProperty(SpringCamelContext.EXCLUDE_ROUTES, csb.toString());
+ System.setProperty(SpringCamelContext.EXCLUDE_ROUTES, excludedRoutes.toString());
}
applicationContext = createApplicationContext();
diff --git a/components/camel-sql/src/main/java/org/apache/camel/component/sql/DefaultSqlPrepareStatementStrategy.java b/components/camel-sql/src/main/java/org/apache/camel/component/sql/DefaultSqlPrepareStatementStrategy.java
index e1fa323..ba3d70b 100644
--- a/components/camel-sql/src/main/java/org/apache/camel/component/sql/DefaultSqlPrepareStatementStrategy.java
+++ b/components/camel-sql/src/main/java/org/apache/camel/component/sql/DefaultSqlPrepareStatementStrategy.java
@@ -24,13 +24,13 @@ import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.NoSuchElementException;
+import java.util.StringJoiner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import org.apache.camel.Exchange;
import org.apache.camel.RuntimeExchangeException;
import org.apache.camel.support.ObjectHelper;
-import org.apache.camel.util.CollectionStringBuffer;
import org.apache.camel.util.StringQuoteHelper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -68,12 +68,12 @@ public class DefaultSqlPrepareStatementStrategy implements SqlPrepareStatementSt
Object parameter = lookupParameter(found, exchange, exchange.getIn().getBody());
if (parameter != null) {
Iterator it = createInParameterIterator(parameter);
- CollectionStringBuffer csb = new CollectionStringBuffer(",");
+ StringJoiner replaceBuilder = new StringJoiner(",");
while (it.hasNext()) {
it.next();
- csb.append("\\?");
+ replaceBuilder.add("\\?");
}
- String replace = csb.toString();
+ String replace = replaceBuilder.toString();
String foundEscaped = found.replace("$", "\\$").replace("{", "\\{").replace("}", "\\}");
Matcher paramMatcher = Pattern.compile("\\:\\?in\\:" + foundEscaped, Pattern.MULTILINE).matcher(query);
query = paramMatcher.replaceAll(replace);
diff --git a/components/camel-swagger-java/src/main/java/org/apache/camel/swagger/SwaggerRestProducerFactory.java b/components/camel-swagger-java/src/main/java/org/apache/camel/swagger/SwaggerRestProducerFactory.java
index 49a651a..99d7a27 100644
--- a/components/camel-swagger-java/src/main/java/org/apache/camel/swagger/SwaggerRestProducerFactory.java
+++ b/components/camel-swagger-java/src/main/java/org/apache/camel/swagger/SwaggerRestProducerFactory.java
@@ -19,6 +19,7 @@ package org.apache.camel.swagger;
import java.io.InputStream;
import java.util.List;
import java.util.Map;
+import java.util.StringJoiner;
import io.swagger.models.Operation;
import io.swagger.models.Path;
@@ -30,7 +31,6 @@ import org.apache.camel.Producer;
import org.apache.camel.spi.RestConfiguration;
import org.apache.camel.spi.RestProducerFactory;
import org.apache.camel.support.CamelContextHelper;
-import org.apache.camel.util.CollectionStringBuffer;
import org.apache.camel.util.IOHelper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -143,30 +143,30 @@ public class SwaggerRestProducerFactory implements RestProducerFactory {
LOG.debug("Using RestProducerFactory: {}", factory);
if (produces == null) {
- CollectionStringBuffer csb = new CollectionStringBuffer(",");
+ StringJoiner producesBuilder = new StringJoiner(",");
List<String> list = operation.getProduces();
if (list == null) {
list = swagger.getProduces();
}
if (list != null) {
for (String s : list) {
- csb.append(s);
+ producesBuilder.add(s);
}
}
- produces = csb.isEmpty() ? null : csb.toString();
+ produces = producesBuilder.length() == 0 ? null : producesBuilder.toString();
}
if (consumes == null) {
- CollectionStringBuffer csb = new CollectionStringBuffer(",");
+ StringJoiner consumesBuilder = new StringJoiner(",");
List<String> list = operation.getConsumes();
if (list == null) {
list = swagger.getConsumes();
}
if (list != null) {
for (String s : list) {
- csb.append(s);
+ consumesBuilder.add(s);
}
}
- consumes = csb.isEmpty() ? null : csb.toString();
+ consumes = consumesBuilder.length() == 0 ? null : consumesBuilder.toString();
}
String basePath;
diff --git a/components/camel-test-spring-junit5/src/main/java/org/apache/camel/test/spring/junit5/CamelAnnotationsHandler.java b/components/camel-test-spring-junit5/src/main/java/org/apache/camel/test/spring/junit5/CamelAnnotationsHandler.java
index 23e2b6c..dabdf14 100644
--- a/components/camel-test-spring-junit5/src/main/java/org/apache/camel/test/spring/junit5/CamelAnnotationsHandler.java
+++ b/components/camel-test-spring-junit5/src/main/java/org/apache/camel/test/spring/junit5/CamelAnnotationsHandler.java
@@ -22,6 +22,7 @@ import java.util.Collection;
import java.util.LinkedList;
import java.util.List;
import java.util.Properties;
+import java.util.StringJoiner;
import java.util.concurrent.TimeUnit;
import java.util.function.Function;
@@ -37,7 +38,6 @@ import org.apache.camel.spi.EventNotifier;
import org.apache.camel.spi.PropertiesComponent;
import org.apache.camel.spring.SpringCamelContext;
import org.apache.camel.test.junit5.CamelTestSupport;
-import org.apache.camel.util.CollectionStringBuffer;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.config.BeanPostProcessor;
@@ -86,12 +86,12 @@ public final class CamelAnnotationsHandler {
if (testClass.isAnnotationPresent(ExcludeRoutes.class)) {
Class[] routes = testClass.getAnnotation(ExcludeRoutes.class).value();
// need to setup this as a JVM system property
- CollectionStringBuffer csb = new CollectionStringBuffer(",");
+ StringJoiner routesBuilder = new StringJoiner(",");
for (Class clazz : routes) {
- csb.append(clazz.getName());
+ routesBuilder.add(clazz.getName());
}
String key = SpringCamelContext.EXCLUDE_ROUTES;
- String value = csb.toString();
+ String value = routesBuilder.toString();
String exists = System.getProperty(key);
if (exists != null) {
diff --git a/components/camel-test-spring-junit5/src/main/java/org/apache/camel/test/spring/junit5/CamelSpringTestContextLoader.java b/components/camel-test-spring-junit5/src/main/java/org/apache/camel/test/spring/junit5/CamelSpringTestContextLoader.java
index 2a62194..14345fe 100644
--- a/components/camel-test-spring-junit5/src/main/java/org/apache/camel/test/spring/junit5/CamelSpringTestContextLoader.java
+++ b/components/camel-test-spring-junit5/src/main/java/org/apache/camel/test/spring/junit5/CamelSpringTestContextLoader.java
@@ -17,47 +17,26 @@
package org.apache.camel.test.spring.junit5;
import java.lang.reflect.Method;
-import java.lang.reflect.Modifier;
import java.util.Arrays;
-import java.util.Collection;
import java.util.HashSet;
-import java.util.LinkedList;
import java.util.List;
-import java.util.Properties;
-import java.util.concurrent.TimeUnit;
-import org.apache.camel.ExtendedCamelContext;
-import org.apache.camel.api.management.JmxSystemPropertyKeys;
-import org.apache.camel.impl.engine.InterceptSendToMockEndpointStrategy;
-import org.apache.camel.processor.interceptor.DefaultDebugger;
-import org.apache.camel.spi.Breakpoint;
-import org.apache.camel.spi.Debugger;
-import org.apache.camel.spi.EventNotifier;
-import org.apache.camel.spi.PropertiesComponent;
import org.apache.camel.spring.SpringCamelContext;
import org.apache.camel.test.ExcludingPackageScanClassResolver;
-import org.apache.camel.test.junit5.CamelTestSupport;
-import org.apache.camel.test.spring.junit5.CamelSpringTestHelper.DoToSpringCamelContextsStrategy;
-import org.apache.camel.util.CollectionStringBuffer;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.config.BeanPostProcessor;
import org.springframework.beans.factory.support.RootBeanDefinition;
import org.springframework.beans.factory.xml.XmlBeanDefinitionReader;
import org.springframework.context.ApplicationContext;
-import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.annotation.AnnotatedBeanDefinitionReader;
import org.springframework.context.annotation.AnnotationConfigUtils;
import org.springframework.context.support.GenericApplicationContext;
-import org.springframework.core.annotation.AnnotationUtils;
import org.springframework.test.context.MergedContextConfiguration;
import org.springframework.test.context.support.AbstractContextLoader;
import org.springframework.test.context.support.AbstractGenericContextLoader;
import org.springframework.test.context.support.GenericXmlContextLoader;
import org.springframework.util.StringUtils;
-import static org.apache.camel.test.spring.junit5.CamelSpringTestHelper.getAllMethods;
-
/**
* Replacement for the default {@link GenericXmlContextLoader} that provides hooks for
* processing some class level Camel related test annotations.
diff --git a/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelAnnotationsHandler.java b/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelAnnotationsHandler.java
index faf1a3b..f787bc0 100644
--- a/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelAnnotationsHandler.java
+++ b/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelAnnotationsHandler.java
@@ -22,6 +22,7 @@ import java.util.Collection;
import java.util.LinkedList;
import java.util.List;
import java.util.Properties;
+import java.util.StringJoiner;
import java.util.concurrent.TimeUnit;
import java.util.function.Function;
@@ -37,7 +38,6 @@ import org.apache.camel.spi.EventNotifier;
import org.apache.camel.spi.PropertiesComponent;
import org.apache.camel.spring.SpringCamelContext;
import org.apache.camel.test.junit4.CamelTestSupport;
-import org.apache.camel.util.CollectionStringBuffer;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.config.BeanPostProcessor;
@@ -86,12 +86,12 @@ public final class CamelAnnotationsHandler {
if (testClass.isAnnotationPresent(ExcludeRoutes.class)) {
Class[] routes = testClass.getAnnotation(ExcludeRoutes.class).value();
// need to setup this as a JVM system property
- CollectionStringBuffer csb = new CollectionStringBuffer(",");
+ StringJoiner routesBuilder = new StringJoiner(",");
for (Class clazz : routes) {
- csb.append(clazz.getName());
+ routesBuilder.add(clazz.getName());
}
String key = SpringCamelContext.EXCLUDE_ROUTES;
- String value = csb.toString();
+ String value = routesBuilder.toString();
String exists = System.getProperty(key);
if (exists != null) {
diff --git a/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelSpringTestContextLoader.java b/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelSpringTestContextLoader.java
index 9ca04e3..7618745 100644
--- a/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelSpringTestContextLoader.java
+++ b/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelSpringTestContextLoader.java
@@ -17,47 +17,26 @@
package org.apache.camel.test.spring;
import java.lang.reflect.Method;
-import java.lang.reflect.Modifier;
import java.util.Arrays;
-import java.util.Collection;
import java.util.HashSet;
-import java.util.LinkedList;
import java.util.List;
-import java.util.Properties;
-import java.util.concurrent.TimeUnit;
-import org.apache.camel.ExtendedCamelContext;
-import org.apache.camel.api.management.JmxSystemPropertyKeys;
-import org.apache.camel.impl.engine.InterceptSendToMockEndpointStrategy;
-import org.apache.camel.processor.interceptor.DefaultDebugger;
-import org.apache.camel.spi.Breakpoint;
-import org.apache.camel.spi.Debugger;
-import org.apache.camel.spi.EventNotifier;
-import org.apache.camel.spi.PropertiesComponent;
import org.apache.camel.spring.SpringCamelContext;
import org.apache.camel.test.ExcludingPackageScanClassResolver;
-import org.apache.camel.test.junit4.CamelTestSupport;
-import org.apache.camel.test.spring.CamelSpringTestHelper.DoToSpringCamelContextsStrategy;
-import org.apache.camel.util.CollectionStringBuffer;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.config.BeanPostProcessor;
import org.springframework.beans.factory.support.RootBeanDefinition;
import org.springframework.beans.factory.xml.XmlBeanDefinitionReader;
import org.springframework.context.ApplicationContext;
-import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.annotation.AnnotatedBeanDefinitionReader;
import org.springframework.context.annotation.AnnotationConfigUtils;
import org.springframework.context.support.GenericApplicationContext;
-import org.springframework.core.annotation.AnnotationUtils;
import org.springframework.test.context.MergedContextConfiguration;
import org.springframework.test.context.support.AbstractContextLoader;
import org.springframework.test.context.support.AbstractGenericContextLoader;
import org.springframework.test.context.support.GenericXmlContextLoader;
import org.springframework.util.StringUtils;
-import static org.apache.camel.test.spring.CamelSpringTestHelper.getAllMethods;
-
/**
* Replacement for the default {@link GenericXmlContextLoader} that provides hooks for
* processing some class level Camel related test annotations.
diff --git a/components/camel-undertow/src/main/java/org/apache/camel/component/undertow/UndertowConsumer.java b/components/camel-undertow/src/main/java/org/apache/camel/component/undertow/UndertowConsumer.java
index 245b064..f66cb0e 100644
--- a/components/camel-undertow/src/main/java/org/apache/camel/component/undertow/UndertowConsumer.java
+++ b/components/camel-undertow/src/main/java/org/apache/camel/component/undertow/UndertowConsumer.java
@@ -24,6 +24,7 @@ import java.nio.ByteBuffer;
import java.util.Arrays;
import java.util.Collection;
import java.util.List;
+import java.util.StringJoiner;
import io.undertow.Handlers;
import io.undertow.server.HttpHandler;
@@ -51,7 +52,6 @@ import org.apache.camel.component.undertow.handlers.CamelWebSocketHandler;
import org.apache.camel.support.CamelContextHelper;
import org.apache.camel.support.DefaultConsumer;
import org.apache.camel.support.EndpointHelper;
-import org.apache.camel.util.CollectionStringBuffer;
import org.apache.camel.util.IOHelper;
import org.apache.camel.util.ObjectHelper;
import org.slf4j.Logger;
@@ -157,7 +157,7 @@ public class UndertowConsumer extends DefaultConsumer implements HttpHandler, Su
public void handleRequest(HttpServerExchange httpExchange) throws Exception {
HttpString requestMethod = httpExchange.getRequestMethod();
if (Methods.OPTIONS.equals(requestMethod) && !getEndpoint().isOptionsEnabled()) {
- CollectionStringBuffer csb = new CollectionStringBuffer(",");
+ StringJoiner methodsBuilder = new StringJoiner(",");
Collection<HttpHandlerRegistrationInfo> handlers = getEndpoint().getComponent().getHandlers();
for (HttpHandlerRegistrationInfo reg : handlers) {
@@ -168,10 +168,10 @@ public class UndertowConsumer extends DefaultConsumer implements HttpHandler, Su
if (restrict.endsWith(",OPTIONS")) {
restrict = restrict.substring(0, restrict.length() - 8);
}
- csb.append(restrict);
+ methodsBuilder.add(restrict);
}
}
- String allowedMethods = csb.toString();
+ String allowedMethods = methodsBuilder.toString();
if (ObjectHelper.isEmpty(allowedMethods)) {
allowedMethods = getEndpoint().getHttpMethodRestrict();
}
diff --git a/components/camel-zookeeper/src/main/java/org/apache/camel/component/zookeeper/ZooKeeperConfiguration.java b/components/camel-zookeeper/src/main/java/org/apache/camel/component/zookeeper/ZooKeeperConfiguration.java
index 287614c..77ec1ad 100644
--- a/components/camel-zookeeper/src/main/java/org/apache/camel/component/zookeeper/ZooKeeperConfiguration.java
+++ b/components/camel-zookeeper/src/main/java/org/apache/camel/component/zookeeper/ZooKeeperConfiguration.java
@@ -18,13 +18,13 @@ package org.apache.camel.component.zookeeper;
import java.util.ArrayList;
import java.util.List;
+import java.util.StringJoiner;
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;
-import org.apache.camel.util.CollectionStringBuffer;
/**
* <code>ZookeeperConfiguration</code> encapsulates the configuration used to
@@ -80,11 +80,11 @@ public class ZooKeeperConfiguration implements Cloneable {
*/
public String getServerUrls() {
if (servers != null) {
- CollectionStringBuffer csb = new CollectionStringBuffer(",");
+ StringJoiner serversBuilder = new StringJoiner(",");
for (String server : servers) {
- csb.append(server);
+ serversBuilder.add(server);
}
- return csb.toString();
+ return serversBuilder.toString();
}
return null;
}
diff --git a/core/camel-base/src/main/java/org/apache/camel/impl/engine/DefaultShutdownStrategy.java b/core/camel-base/src/main/java/org/apache/camel/impl/engine/DefaultShutdownStrategy.java
index 25597e8..af2b321 100644
--- a/core/camel-base/src/main/java/org/apache/camel/impl/engine/DefaultShutdownStrategy.java
+++ b/core/camel-base/src/main/java/org/apache/camel/impl/engine/DefaultShutdownStrategy.java
@@ -27,6 +27,7 @@ import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.util.Set;
+import java.util.StringJoiner;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Future;
@@ -51,7 +52,6 @@ import org.apache.camel.spi.ShutdownStrategy;
import org.apache.camel.support.EventHelper;
import org.apache.camel.support.service.ServiceHelper;
import org.apache.camel.support.service.ServiceSupport;
-import org.apache.camel.util.CollectionStringBuffer;
import org.apache.camel.util.ObjectHelper;
import org.apache.camel.util.StopWatch;
import org.apache.camel.util.URISupport;
@@ -647,15 +647,15 @@ public class DefaultShutdownStrategy extends ServiceSupport implements ShutdownS
if (size > 0) {
try {
// build a message with inflight per route
- CollectionStringBuffer csb = new CollectionStringBuffer();
+ StringJoiner inflightsBuilder = new StringJoiner(", ", " Inflights per route: [", "]");
for (Map.Entry<String, Integer> entry : routeInflight.entrySet()) {
String row = String.format("%s = %s", entry.getKey(), entry.getValue());
- csb.append(row);
+ inflightsBuilder.add(row);
}
String msg = "Waiting as there are still " + size + " inflight and pending exchanges to complete, timeout in "
+ (TimeUnit.SECONDS.convert(timeout, timeUnit) - (loopCount++ * loopDelaySeconds)) + " seconds.";
- msg += " Inflights per route: [" + csb.toString() + "]";
+ msg += inflightsBuilder.toString();
LOG.info(msg);
diff --git a/core/camel-core-engine/src/main/java/org/apache/camel/builder/DataFormatClause.java b/core/camel-core-engine/src/main/java/org/apache/camel/builder/DataFormatClause.java
index a0a59bd..e4e2388 100644
--- a/core/camel-core-engine/src/main/java/org/apache/camel/builder/DataFormatClause.java
+++ b/core/camel-core-engine/src/main/java/org/apache/camel/builder/DataFormatClause.java
@@ -19,6 +19,7 @@ package org.apache.camel.builder;
import java.nio.charset.Charset;
import java.util.List;
import java.util.Map;
+import java.util.StringJoiner;
import org.w3c.dom.Node;
@@ -63,7 +64,6 @@ import org.apache.camel.model.dataformat.YAMLLibrary;
import org.apache.camel.model.dataformat.ZipDeflaterDataFormat;
import org.apache.camel.model.dataformat.ZipFileDataFormat;
import org.apache.camel.support.jsse.KeyStoreParameters;
-import org.apache.camel.util.CollectionStringBuffer;
/**
* An expression for constructing the different possible
@@ -890,12 +890,12 @@ public class DataFormatClause<T extends ProcessorDefinition<?>> {
* @param type the pojo class(es) xstream should use as allowed permission
*/
public T xstream(String encoding, Class<?>... type) {
- CollectionStringBuffer csb = new CollectionStringBuffer(",");
+ StringJoiner stringBuilder = new StringJoiner(",");
for (Class<?> clazz : type) {
- csb.append("+");
- csb.append(clazz.getName());
+ stringBuilder.add("+");
+ stringBuilder.add(clazz.getName());
}
- return xstream(encoding, csb.toString());
+ return xstream(encoding, stringBuilder.toString());
}
/**
diff --git a/core/camel-core-engine/src/main/java/org/apache/camel/impl/DefaultModel.java b/core/camel-core-engine/src/main/java/org/apache/camel/impl/DefaultModel.java
index 72a300c..7f72564 100644
--- a/core/camel-core-engine/src/main/java/org/apache/camel/impl/DefaultModel.java
+++ b/core/camel-core-engine/src/main/java/org/apache/camel/impl/DefaultModel.java
@@ -23,6 +23,7 @@ import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
+import java.util.StringJoiner;
import java.util.concurrent.ConcurrentHashMap;
import java.util.function.Function;
@@ -45,7 +46,6 @@ import org.apache.camel.model.cloud.ServiceCallConfigurationDefinition;
import org.apache.camel.model.rest.RestDefinition;
import org.apache.camel.model.transformer.TransformerDefinition;
import org.apache.camel.model.validator.ValidatorDefinition;
-import org.apache.camel.util.CollectionStringBuffer;
public class DefaultModel implements Model {
@@ -206,7 +206,7 @@ public class DefaultModel implements Model {
throw new IllegalArgumentException("Cannot find RouteTemplate with id " + routeTemplateId);
}
- CollectionStringBuffer cbs = new CollectionStringBuffer();
+ StringJoiner templatesBuilder = new StringJoiner(", ");
final Map<String, Object> prop = new HashMap();
// include default values first from the template (and validate that we have inputs for all required parameters)
if (target.getTemplateParameters() != null) {
@@ -216,13 +216,13 @@ public class DefaultModel implements Model {
} else {
// this is a required parameter do we have that as input
if (!parameters.containsKey(temp.getName())) {
- cbs.append(temp.getName());
+ templatesBuilder.add(temp.getName());
}
}
}
}
- if (!cbs.isEmpty()) {
- throw new IllegalArgumentException("Route template " + routeTemplateId + " the following mandatory parameters must be provided: " + cbs.toString());
+ if (templatesBuilder.length() > 0) {
+ throw new IllegalArgumentException("Route template " + routeTemplateId + " the following mandatory parameters must be provided: " + templatesBuilder.toString());
}
// then override with user parameters
if (parameters != null) {
diff --git a/core/camel-core-engine/src/main/java/org/apache/camel/model/dataformat/JsonDataFormat.java b/core/camel-core-engine/src/main/java/org/apache/camel/model/dataformat/JsonDataFormat.java
index d2977e5..ba0fe41 100644
--- a/core/camel-core-engine/src/main/java/org/apache/camel/model/dataformat/JsonDataFormat.java
+++ b/core/camel-core-engine/src/main/java/org/apache/camel/model/dataformat/JsonDataFormat.java
@@ -16,6 +16,8 @@
*/
package org.apache.camel.model.dataformat;
+import java.util.StringJoiner;
+
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
@@ -24,7 +26,6 @@ import javax.xml.bind.annotation.XmlTransient;
import org.apache.camel.model.DataFormatDefinition;
import org.apache.camel.spi.Metadata;
-import org.apache.camel.util.CollectionStringBuffer;
/**
* Marshal POJOs to JSON and back.
@@ -326,12 +327,12 @@ public class JsonDataFormat extends DataFormatDefinition {
* @see #setPermissions(String)
*/
public void setPermissions(Class<?>... type) {
- CollectionStringBuffer csb = new CollectionStringBuffer(",");
+ StringJoiner permissionsBuilder = new StringJoiner(",");
for (Class<?> clazz : type) {
- csb.append("+");
- csb.append(clazz.getName());
+ permissionsBuilder.add("+");
+ permissionsBuilder.add(clazz.getName());
}
- setPermissions(csb.toString());
+ setPermissions(permissionsBuilder.toString());
}
public String getAllowUnmarshallType() {
diff --git a/core/camel-core-engine/src/main/java/org/apache/camel/model/dataformat/XStreamDataFormat.java b/core/camel-core-engine/src/main/java/org/apache/camel/model/dataformat/XStreamDataFormat.java
index e3026fe..4588cde 100644
--- a/core/camel-core-engine/src/main/java/org/apache/camel/model/dataformat/XStreamDataFormat.java
+++ b/core/camel-core-engine/src/main/java/org/apache/camel/model/dataformat/XStreamDataFormat.java
@@ -20,6 +20,7 @@ import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
+import java.util.StringJoiner;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
@@ -30,7 +31,6 @@ import javax.xml.bind.annotation.XmlRootElement;
import org.apache.camel.model.DataFormatDefinition;
import org.apache.camel.model.PropertyDefinition;
import org.apache.camel.spi.Metadata;
-import org.apache.camel.util.CollectionStringBuffer;
/**
* Marshal and unmarshal POJOs to/from XML using <a href="https://x-stream.github.io/">XStream</a> library.
@@ -271,12 +271,12 @@ public class XStreamDataFormat extends DataFormatDefinition {
* @see #setPermissions(String)
*/
public void setPermissions(Class<?>... type) {
- CollectionStringBuffer csb = new CollectionStringBuffer(",");
+ StringJoiner permissionsBuilder = new StringJoiner(",");
for (Class<?> clazz : type) {
- csb.append("+");
- csb.append(clazz.getName());
+ permissionsBuilder.add("+");
+ permissionsBuilder.add(clazz.getName());
}
- setPermissions(csb.toString());
+ setPermissions(permissionsBuilder.toString());
}
}
diff --git a/core/camel-core-engine/src/main/java/org/apache/camel/model/language/ExpressionDefinition.java b/core/camel-core-engine/src/main/java/org/apache/camel/model/language/ExpressionDefinition.java
index 0ea00ef..dedc663 100644
--- a/core/camel-core-engine/src/main/java/org/apache/camel/model/language/ExpressionDefinition.java
+++ b/core/camel-core-engine/src/main/java/org/apache/camel/model/language/ExpressionDefinition.java
@@ -17,6 +17,7 @@
package org.apache.camel.model.language;
import java.util.List;
+import java.util.StringJoiner;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
@@ -34,7 +35,6 @@ import org.apache.camel.ExpressionFactory;
import org.apache.camel.Predicate;
import org.apache.camel.model.ModelCamelContext;
import org.apache.camel.spi.Metadata;
-import org.apache.camel.util.CollectionStringBuffer;
import org.apache.camel.util.ObjectHelper;
/**
@@ -78,9 +78,9 @@ public class ExpressionDefinition implements Expression, Predicate, ExpressionFa
}
public static String getLabel(List<ExpressionDefinition> expressions) {
- CollectionStringBuffer buffer = new CollectionStringBuffer();
+ StringJoiner buffer = new StringJoiner(", ");
for (ExpressionDefinition expression : expressions) {
- buffer.append(expression.getLabel());
+ buffer.add(expression.getLabel());
}
return buffer.toString();
}
diff --git a/core/camel-core-xml/src/main/java/org/apache/camel/core/xml/CamelJMXAgentDefinition.java b/core/camel-core-xml/src/main/java/org/apache/camel/core/xml/CamelJMXAgentDefinition.java
index 6366491..bfef187 100644
--- a/core/camel-core-xml/src/main/java/org/apache/camel/core/xml/CamelJMXAgentDefinition.java
+++ b/core/camel-core-xml/src/main/java/org/apache/camel/core/xml/CamelJMXAgentDefinition.java
@@ -16,6 +16,8 @@
*/
package org.apache.camel.core.xml;
+import java.util.StringJoiner;
+
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
@@ -23,7 +25,6 @@ import javax.xml.bind.annotation.XmlRootElement;
import org.apache.camel.model.IdentifiedType;
import org.apache.camel.spi.Metadata;
-import org.apache.camel.util.CollectionStringBuffer;
/**
* JMX configuration.
@@ -205,53 +206,47 @@ public class CamelJMXAgentDefinition extends IdentifiedType {
@Override
public String toString() {
- StringBuilder sb = new StringBuilder();
- sb.append("CamelJMXAgent[");
-
- CollectionStringBuffer csb = new CollectionStringBuffer();
+ StringJoiner buffer = new StringJoiner(", ", "CamelJMXAgent[", "]");
if (disabled != null) {
- csb.append("disabled=" + disabled);
+ buffer.add("disabled=" + disabled);
}
if (usePlatformMBeanServer != null) {
- csb.append("usePlatformMBeanServer=" + usePlatformMBeanServer);
+ buffer.add("usePlatformMBeanServer=" + usePlatformMBeanServer);
}
if (mbeanServerDefaultDomain != null) {
- csb.append("mbeanServerDefaultDomain=" + mbeanServerDefaultDomain);
+ buffer.add("mbeanServerDefaultDomain=" + mbeanServerDefaultDomain);
}
if (mbeanObjectDomainName != null) {
- csb.append("mbeanObjectDomainName=" + mbeanObjectDomainName);
+ buffer.add("mbeanObjectDomainName=" + mbeanObjectDomainName);
}
if (statisticsLevel != null) {
- csb.append("statisticsLevel=" + statisticsLevel);
+ buffer.add("statisticsLevel=" + statisticsLevel);
}
if (loadStatisticsEnabled != null) {
- csb.append("loadStatisticsEnabled=" + loadStatisticsEnabled);
+ buffer.add("loadStatisticsEnabled=" + loadStatisticsEnabled);
}
if (endpointRuntimeStatisticsEnabled != null) {
- csb.append("endpointRuntimeStatisticsEnabled=" + endpointRuntimeStatisticsEnabled);
+ buffer.add("endpointRuntimeStatisticsEnabled=" + endpointRuntimeStatisticsEnabled);
}
if (onlyRegisterProcessorWithCustomId != null) {
- csb.append("onlyRegisterProcessorWithCustomId=" + onlyRegisterProcessorWithCustomId);
+ buffer.add("onlyRegisterProcessorWithCustomId=" + onlyRegisterProcessorWithCustomId);
}
if (registerAlways != null) {
- csb.append("registerAlways=" + registerAlways);
+ buffer.add("registerAlways=" + registerAlways);
}
if (registerNewRoutes != null) {
- csb.append("registerNewRoutes=" + registerNewRoutes);
+ buffer.add("registerNewRoutes=" + registerNewRoutes);
}
if (includeHostName != null) {
- csb.append("includeHostName=" + includeHostName);
+ buffer.add("includeHostName=" + includeHostName);
}
if (useHostIPAddress != null) {
- csb.append("useHostIPAddress=" + useHostIPAddress);
+ buffer.add("useHostIPAddress=" + useHostIPAddress);
}
if (mask != null) {
- csb.append("mask=" + mask);
+ buffer.add("mask=" + mask);
}
-
- sb.append(csb.toString());
- sb.append("]");
- return sb.toString();
+ return buffer.toString();
}
}
diff --git a/core/camel-core/src/test/java/org/apache/camel/converter/stream/CachedOutputStreamTest.java b/core/camel-core/src/test/java/org/apache/camel/converter/stream/CachedOutputStreamTest.java
index 1912c1b..66a98ba 100644
--- a/core/camel-core/src/test/java/org/apache/camel/converter/stream/CachedOutputStreamTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/converter/stream/CachedOutputStreamTest.java
@@ -22,6 +22,7 @@ import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
+import java.util.StringJoiner;
import org.apache.camel.CamelContext;
import org.apache.camel.ContextTestSupport;
@@ -32,12 +33,14 @@ import org.apache.camel.converter.IOConverter;
import org.apache.camel.impl.engine.DefaultUnitOfWork;
import org.apache.camel.spi.UnitOfWork;
import org.apache.camel.support.DefaultExchange;
-import org.apache.camel.util.CollectionStringBuffer;
import org.apache.camel.util.IOHelper;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
-import static org.junit.jupiter.api.Assertions.*;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
public class CachedOutputStreamTest extends ContextTestSupport {
private static final String TEST_STRING = "This is a test string and it has enough" + " aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa ";
@@ -73,13 +76,13 @@ public class CachedOutputStreamTest extends ContextTestSupport {
private static String toString(InputStream input) throws IOException {
BufferedReader reader = IOHelper.buffered(new InputStreamReader(input));
- CollectionStringBuffer builder = new CollectionStringBuffer();
+ StringJoiner builder = new StringJoiner(", ");
while (true) {
String line = reader.readLine();
if (line == null) {
return builder.toString();
}
- builder.append(line);
+ builder.add(line);
}
}
diff --git a/core/camel-management/src/main/java/org/apache/camel/management/mbean/ManagedFailoverLoadBalancer.java b/core/camel-management/src/main/java/org/apache/camel/management/mbean/ManagedFailoverLoadBalancer.java
index 76cc6d0..a65cdef 100644
--- a/core/camel-management/src/main/java/org/apache/camel/management/mbean/ManagedFailoverLoadBalancer.java
+++ b/core/camel-management/src/main/java/org/apache/camel/management/mbean/ManagedFailoverLoadBalancer.java
@@ -18,6 +18,7 @@ package org.apache.camel.management.mbean;
import java.util.Iterator;
import java.util.List;
+import java.util.StringJoiner;
import javax.management.openmbean.CompositeData;
import javax.management.openmbean.CompositeDataSupport;
@@ -34,7 +35,6 @@ import org.apache.camel.model.LoadBalanceDefinition;
import org.apache.camel.model.ProcessorDefinition;
import org.apache.camel.processor.loadbalancer.ExceptionFailureStatistics;
import org.apache.camel.processor.loadbalancer.FailOverLoadBalancer;
-import org.apache.camel.util.CollectionStringBuffer;
import org.apache.camel.util.ObjectHelper;
@ManagedResource(description = "Managed Failover LoadBalancer")
@@ -93,11 +93,11 @@ public class ManagedFailoverLoadBalancer extends ManagedProcessor implements Man
if (classes == null || classes.isEmpty()) {
exceptions = "";
} else {
- CollectionStringBuffer csb = new CollectionStringBuffer(",");
+ StringJoiner exceptionsBuilder = new StringJoiner(",");
for (Class<?> clazz : classes) {
- csb.append(clazz.getCanonicalName());
+ exceptionsBuilder.add(clazz.getCanonicalName());
}
- exceptions = csb.toString();
+ exceptions = exceptionsBuilder.toString();
}
return exceptions;
}