This is an automated email from the ASF dual-hosted git repository.
gnodet pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push:
new 44cf73355a7 Replace j.u.Stack with j.u.ArrayDequeue (#14963)
44cf73355a7 is described below
commit 44cf73355a7043e18c02d2b86628db6ec1c42f4e
Author: Guillaume Nodet <[email protected]>
AuthorDate: Mon Jul 29 18:00:17 2024 +0200
Replace j.u.Stack with j.u.ArrayDequeue (#14963)
---
.../org/apache/camel/parser/helper/XmlLineNumberParser.java | 6 +++---
.../org/apache/camel/component/aws/xray/json/JsonParser.java | 9 ++++-----
.../apache/camel/component/aws/xray/json/JsonStructure.java | 2 +-
.../org/apache/camel/component/file/azure/FilesOperations.java | 9 ++++-----
.../apache/camel/component/github/consumer/CommitConsumer.java | 6 +++---
.../apache/camel/component/github/consumer/EventsConsumer.java | 4 +++-
.../component/github/consumer/PullRequestCommentConsumer.java | 10 ++++++----
.../camel/component/github/consumer/PullRequestConsumer.java | 10 ++++++----
.../apache/camel/component/github/consumer/TagConsumer.java | 10 ++++++----
.../camel/component/salesforce/codegen/GenerateExecution.java | 6 +++---
.../apache/camel/management/mbean/RouteCoverageXmlParser.java | 4 ++--
.../java/org/apache/camel/util/xml/XmlLineNumberParser.java | 4 ++--
.../src/main/java/org/apache/camel/yaml/io/YamlWriter.java | 4 ++--
13 files changed, 45 insertions(+), 39 deletions(-)
diff --git
a/catalog/camel-route-parser/src/main/java/org/apache/camel/parser/helper/XmlLineNumberParser.java
b/catalog/camel-route-parser/src/main/java/org/apache/camel/parser/helper/XmlLineNumberParser.java
index 0fe10c734fe..537c6d6f710 100644
---
a/catalog/camel-route-parser/src/main/java/org/apache/camel/parser/helper/XmlLineNumberParser.java
+++
b/catalog/camel-route-parser/src/main/java/org/apache/camel/parser/helper/XmlLineNumberParser.java
@@ -18,12 +18,12 @@ package org.apache.camel.parser.helper;
import java.io.InputStream;
import java.io.StringReader;
+import java.util.ArrayDeque;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
-import java.util.Stack;
import javax.xml.XMLConstants;
import javax.xml.parsers.DocumentBuilder;
@@ -121,7 +121,7 @@ public final class XmlLineNumberParser {
final DocumentBuilder docBuilder = dbf.newDocumentBuilder();
doc = docBuilder.newDocument();
- final Stack<Element> elementStack = new Stack<>();
+ final ArrayDeque<Element> elementStack = new ArrayDeque<>();
final StringBuilder textBuffer = new StringBuilder();
final DefaultHandler handler = getDefaultHandler(rootNames,
forceNamespace, doc, elementStack, textBuffer);
parser.parse(is, handler);
@@ -133,7 +133,7 @@ public final class XmlLineNumberParser {
}
private static DefaultHandler getDefaultHandler(
- String rootNames, String forceNamespace, Document doc,
Stack<Element> elementStack, StringBuilder textBuffer) {
+ String rootNames, String forceNamespace, Document doc,
ArrayDeque<Element> elementStack, StringBuilder textBuffer) {
return new DefaultHandler() {
private Locator locator;
private boolean found;
diff --git
a/components/camel-aws/camel-aws-xray/src/test/java/org/apache/camel/component/aws/xray/json/JsonParser.java
b/components/camel-aws/camel-aws-xray/src/test/java/org/apache/camel/component/aws/xray/json/JsonParser.java
index 363b21d5e80..8ef25156592 100644
---
a/components/camel-aws/camel-aws-xray/src/test/java/org/apache/camel/component/aws/xray/json/JsonParser.java
+++
b/components/camel-aws/camel-aws-xray/src/test/java/org/apache/camel/component/aws/xray/json/JsonParser.java
@@ -16,9 +16,9 @@
*/
package org.apache.camel.component.aws.xray.json;
+import java.util.ArrayDeque;
import java.util.Arrays;
import java.util.List;
-import java.util.Stack;
import org.apache.camel.util.ObjectHelper;
import org.apache.commons.lang3.StringUtils;
@@ -32,7 +32,7 @@ public final class JsonParser {
public static JsonStructure parse(final String jsonString) {
String json = jsonString.replace("\n", "");
- Stack<JsonStructure> stack = new Stack<>();
+ ArrayDeque<JsonStructure> stack = new ArrayDeque<>();
JsonStructure ret = null;
List<String> doNotIncludeSymbols = Arrays.asList(",", ":", "\"");
@@ -105,8 +105,7 @@ public final class JsonParser {
break;
}
default:
- if (('"' == c && curToken.isEmpty())
- || ('"' == c && !curToken.isEmpty() &&
curToken.charAt(curToken.length() - 1) != '\\')) {
+ if ('"' == c && (curToken.isEmpty() ||
curToken.charAt(curToken.length() - 1) != '\\')) {
inWord = !inWord;
}
if (!inWord &&
!doNotIncludeSymbols.contains(String.valueOf(c))) {
@@ -119,7 +118,7 @@ public final class JsonParser {
return ret;
}
- private static void addJson(JsonStructure element, String key,
Stack<JsonStructure> stack) {
+ private static void addJson(JsonStructure element, String key,
ArrayDeque<JsonStructure> stack) {
if (!stack.isEmpty()) {
JsonStructure json = stack.peek();
if (json instanceof JsonObject && key != null) {
diff --git
a/components/camel-aws/camel-aws-xray/src/test/java/org/apache/camel/component/aws/xray/json/JsonStructure.java
b/components/camel-aws/camel-aws-xray/src/test/java/org/apache/camel/component/aws/xray/json/JsonStructure.java
index 7a3af82e0c6..57c61a1b564 100644
---
a/components/camel-aws/camel-aws-xray/src/test/java/org/apache/camel/component/aws/xray/json/JsonStructure.java
+++
b/components/camel-aws/camel-aws-xray/src/test/java/org/apache/camel/component/aws/xray/json/JsonStructure.java
@@ -16,6 +16,6 @@
*/
package org.apache.camel.component.aws.xray.json;
-interface JsonStructure {
+public interface JsonStructure {
}
diff --git
a/components/camel-azure/camel-azure-files/src/main/java/org/apache/camel/component/file/azure/FilesOperations.java
b/components/camel-azure/camel-azure-files/src/main/java/org/apache/camel/component/file/azure/FilesOperations.java
index 44123e74248..ad4aeb5d437 100644
---
a/components/camel-azure/camel-azure-files/src/main/java/org/apache/camel/component/file/azure/FilesOperations.java
+++
b/components/camel-azure/camel-azure-files/src/main/java/org/apache/camel/component/file/azure/FilesOperations.java
@@ -24,8 +24,8 @@ import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.time.Duration;
+import java.util.ArrayDeque;
import java.util.EmptyStackException;
-import java.util.Stack;
import com.azure.core.util.Context;
import com.azure.identity.DefaultAzureCredentialBuilder;
@@ -79,7 +79,7 @@ public class FilesOperations extends NormalizedOperations {
private final FilesToken token;
private ShareServiceClient client;
private ShareDirectoryClient root;
- private Stack<ShareDirectoryClient> dirStack = new Stack<>();
+ private ArrayDeque<ShareDirectoryClient> dirStack = new ArrayDeque<>();
FilesOperations(FilesEndpoint endpoint) {
super(endpoint.getConfiguration());
@@ -129,7 +129,7 @@ public class FilesOperations extends NormalizedOperations {
var ms = configuration.getConnectTimeout();
root.forceCloseAllHandles(true, Duration.ofMillis(ms), Context.NONE);
root = null;
- dirStack = new Stack<>();
+ dirStack = new ArrayDeque<>();
}
@Override
@@ -157,7 +157,7 @@ public class FilesOperations extends NormalizedOperations {
@SuppressWarnings("unchecked")
void restore(Object backup) {
- dirStack = (Stack<ShareDirectoryClient>) backup;
+ dirStack = (ArrayDeque<ShareDirectoryClient>) backup;
}
Object backup() {
@@ -641,7 +641,6 @@ public class FilesOperations extends NormalizedOperations {
if (!isConnected()) {
throw new GenericFileOperationFailedException("Cannot cd to the
share root: not connected");
}
- dirStack.empty();
dirStack.push(root);
}
diff --git
a/components/camel-github/src/main/java/org/apache/camel/component/github/consumer/CommitConsumer.java
b/components/camel-github/src/main/java/org/apache/camel/component/github/consumer/CommitConsumer.java
index f13cb58e36c..0aa19ffe099 100644
---
a/components/camel-github/src/main/java/org/apache/camel/component/github/consumer/CommitConsumer.java
+++
b/components/camel-github/src/main/java/org/apache/camel/component/github/consumer/CommitConsumer.java
@@ -16,9 +16,9 @@
*/
package org.apache.camel.component.github.consumer;
+import java.util.ArrayDeque;
import java.util.List;
import java.util.Queue;
-import java.util.Stack;
import java.util.concurrent.LinkedBlockingQueue;
import org.apache.camel.Exchange;
@@ -134,7 +134,7 @@ public class CommitConsumer extends AbstractGitHubConsumer {
}
// In the end, we want tags oldest to newest.
- Stack<RepositoryCommit> newCommits = new Stack<>();
+ ArrayDeque<RepositoryCommit> newCommits = new ArrayDeque<>();
for (RepositoryCommit commit : commits) {
String sha = commit.getSha();
if (!commitHashes.contains(sha)) {
@@ -148,7 +148,7 @@ public class CommitConsumer extends AbstractGitHubConsumer {
}
int counter = 0;
- while (!newCommits.empty()) {
+ while (!newCommits.isEmpty()) {
RepositoryCommit newCommit = newCommits.pop();
lastSha = newCommit.getSha();
Exchange e = createExchange(true);
diff --git
a/components/camel-github/src/main/java/org/apache/camel/component/github/consumer/EventsConsumer.java
b/components/camel-github/src/main/java/org/apache/camel/component/github/consumer/EventsConsumer.java
index a47e763a860..e1b77776626 100644
---
a/components/camel-github/src/main/java/org/apache/camel/component/github/consumer/EventsConsumer.java
+++
b/components/camel-github/src/main/java/org/apache/camel/component/github/consumer/EventsConsumer.java
@@ -72,6 +72,7 @@ public class EventsConsumer extends AbstractGitHubConsumer {
}
}
+ int counter = 0;
if (!newEvents.isEmpty()) {
newEvents.sort((e1, e2) ->
Long.valueOf(e1.getId()).compareTo(Long.parseLong(e2.getId())));
Event latestEvent = newEvents.get(newEvents.size() - 1);
@@ -82,10 +83,11 @@ public class EventsConsumer extends AbstractGitHubConsumer {
exchange.getMessage().setBody(event.getType());
exchange.getMessage().setHeader(GitHubConstants.GITHUB_EVENT_PAYLOAD,
event.getPayload());
getProcessor().process(exchange);
+ counter++;
}
}
- return newEvents.size();
+ return counter;
}
/**
diff --git
a/components/camel-github/src/main/java/org/apache/camel/component/github/consumer/PullRequestCommentConsumer.java
b/components/camel-github/src/main/java/org/apache/camel/component/github/consumer/PullRequestCommentConsumer.java
index fc4fa035bb5..e6a4f16f24e 100644
---
a/components/camel-github/src/main/java/org/apache/camel/component/github/consumer/PullRequestCommentConsumer.java
+++
b/components/camel-github/src/main/java/org/apache/camel/component/github/consumer/PullRequestCommentConsumer.java
@@ -16,11 +16,11 @@
*/
package org.apache.camel.component.github.consumer;
+import java.util.ArrayDeque;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import java.util.Stack;
import org.apache.camel.Exchange;
import org.apache.camel.Processor;
@@ -88,7 +88,7 @@ public class PullRequestCommentConsumer extends
AbstractGitHubConsumer {
List<PullRequest> pullRequests =
pullRequestService.getPullRequests(getRepository(), "open");
// In the end, we want comments oldest to newest.
- Stack<Comment> newComments = new Stack<>();
+ ArrayDeque<Comment> newComments = new ArrayDeque<>();
for (PullRequest pullRequest : pullRequests) {
List<CommitComment> commitComments =
pullRequestService.getComments(getRepository(), pullRequest.getNumber());
for (Comment comment : commitComments) {
@@ -108,7 +108,8 @@ public class PullRequestCommentConsumer extends
AbstractGitHubConsumer {
}
}
- while (!newComments.empty()) {
+ int counter = 0;
+ while (!newComments.isEmpty()) {
Comment newComment = newComments.pop();
Exchange e = createExchange(true);
e.getIn().setBody(newComment);
@@ -117,7 +118,8 @@ public class PullRequestCommentConsumer extends
AbstractGitHubConsumer {
e.getIn().setHeader(GitHubConstants.GITHUB_PULLREQUEST,
commentIdToPullRequest.get(newComment.getId()));
getProcessor().process(e);
+ counter++;
}
- return newComments.size();
+ return counter;
}
}
diff --git
a/components/camel-github/src/main/java/org/apache/camel/component/github/consumer/PullRequestConsumer.java
b/components/camel-github/src/main/java/org/apache/camel/component/github/consumer/PullRequestConsumer.java
index 61d839c5f5f..a78aaf221c7 100644
---
a/components/camel-github/src/main/java/org/apache/camel/component/github/consumer/PullRequestConsumer.java
+++
b/components/camel-github/src/main/java/org/apache/camel/component/github/consumer/PullRequestConsumer.java
@@ -16,8 +16,8 @@
*/
package org.apache.camel.component.github.consumer;
+import java.util.ArrayDeque;
import java.util.List;
-import java.util.Stack;
import org.apache.camel.Exchange;
import org.apache.camel.Processor;
@@ -61,7 +61,7 @@ public class PullRequestConsumer extends
AbstractGitHubConsumer {
protected int poll() throws Exception {
List<PullRequest> openPullRequests =
pullRequestService.getPullRequests(getRepository(), "open");
// In the end, we want PRs oldest to newest.
- Stack<PullRequest> newPullRequests = new Stack<>();
+ ArrayDeque<PullRequest> newPullRequests = new ArrayDeque<>();
for (PullRequest pullRequest : openPullRequests) {
if (pullRequest.getNumber() > lastOpenPullRequest) {
newPullRequests.push(pullRequest);
@@ -74,7 +74,8 @@ public class PullRequestConsumer extends
AbstractGitHubConsumer {
lastOpenPullRequest = openPullRequests.get(0).getNumber();
}
- while (!newPullRequests.empty()) {
+ int counter = 0;
+ while (!newPullRequests.isEmpty()) {
PullRequest newPullRequest = newPullRequests.pop();
Exchange e = createExchange(true);
@@ -87,7 +88,8 @@ public class PullRequestConsumer extends
AbstractGitHubConsumer {
}
getProcessor().process(e);
+ counter++;
}
- return newPullRequests.size();
+ return counter;
}
}
diff --git
a/components/camel-github/src/main/java/org/apache/camel/component/github/consumer/TagConsumer.java
b/components/camel-github/src/main/java/org/apache/camel/component/github/consumer/TagConsumer.java
index 91a7107f75f..0d57505696c 100644
---
a/components/camel-github/src/main/java/org/apache/camel/component/github/consumer/TagConsumer.java
+++
b/components/camel-github/src/main/java/org/apache/camel/component/github/consumer/TagConsumer.java
@@ -16,9 +16,9 @@
*/
package org.apache.camel.component.github.consumer;
+import java.util.ArrayDeque;
import java.util.ArrayList;
import java.util.List;
-import java.util.Stack;
import org.apache.camel.Exchange;
import org.apache.camel.Processor;
@@ -46,7 +46,7 @@ public class TagConsumer extends AbstractGitHubConsumer {
protected int poll() throws Exception {
List<RepositoryTag> tags =
getRepositoryService().getTags(getRepository());
// In the end, we want tags oldest to newest.
- Stack<RepositoryTag> newTags = new Stack<>();
+ ArrayDeque<RepositoryTag> newTags = new ArrayDeque<>();
for (RepositoryTag tag : tags) {
if (!tagNames.contains(tag.getName())) {
newTags.push(tag);
@@ -54,12 +54,14 @@ public class TagConsumer extends AbstractGitHubConsumer {
}
}
- while (!newTags.empty()) {
+ int counter = 0;
+ while (!newTags.isEmpty()) {
RepositoryTag newTag = newTags.pop();
Exchange e = createExchange(true);
e.getIn().setBody(newTag);
getProcessor().process(e);
+ counter++;
}
- return newTags.size();
+ return counter;
}
}
diff --git
a/components/camel-salesforce/camel-salesforce-codegen/src/main/java/org/apache/camel/component/salesforce/codegen/GenerateExecution.java
b/components/camel-salesforce/camel-salesforce-codegen/src/main/java/org/apache/camel/component/salesforce/codegen/GenerateExecution.java
index 394fc420665..2939407eed0 100644
---
a/components/camel-salesforce/camel-salesforce-codegen/src/main/java/org/apache/camel/component/salesforce/codegen/GenerateExecution.java
+++
b/components/camel-salesforce/camel-salesforce-codegen/src/main/java/org/apache/camel/component/salesforce/codegen/GenerateExecution.java
@@ -23,6 +23,7 @@ import java.io.OutputStreamWriter;
import java.io.Writer;
import java.lang.reflect.Field;
import java.nio.charset.StandardCharsets;
+import java.util.ArrayDeque;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
@@ -33,7 +34,6 @@ import java.util.List;
import java.util.Map;
import java.util.Properties;
import java.util.Set;
-import java.util.Stack;
import java.util.TreeMap;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.function.BinaryOperator;
@@ -67,7 +67,7 @@ public class GenerateExecution extends
AbstractSalesforceExecution {
public class GeneratorUtility {
- private Stack<String> stack;
+ private ArrayDeque<String> stack;
private final Map<String, AtomicInteger> varNames = new HashMap<>();
private final BeanIntrospection bi = new DefaultBeanIntrospection();
@@ -277,7 +277,7 @@ public class GenerateExecution extends
AbstractSalesforceExecution {
}
public void start(final String initial) {
- stack = new Stack<>();
+ stack = new ArrayDeque<>();
stack.push(initial);
varNames.clear();
}
diff --git
a/core/camel-management/src/main/java/org/apache/camel/management/mbean/RouteCoverageXmlParser.java
b/core/camel-management/src/main/java/org/apache/camel/management/mbean/RouteCoverageXmlParser.java
index f13d4992871..4b3a3c2dbc8 100644
---
a/core/camel-management/src/main/java/org/apache/camel/management/mbean/RouteCoverageXmlParser.java
+++
b/core/camel-management/src/main/java/org/apache/camel/management/mbean/RouteCoverageXmlParser.java
@@ -17,7 +17,7 @@
package org.apache.camel.management.mbean;
import java.io.InputStream;
-import java.util.Stack;
+import java.util.ArrayDeque;
import javax.xml.XMLConstants;
import javax.xml.parsers.DocumentBuilder;
@@ -89,7 +89,7 @@ public final class RouteCoverageXmlParser {
final DocumentBuilder docBuilder = dbf.newDocumentBuilder();
final Document doc = docBuilder.newDocument();
- final Stack<Element> elementStack = new Stack<>();
+ final ArrayDeque<Element> elementStack = new ArrayDeque<>();
final StringBuilder textBuffer = new StringBuilder();
final DefaultHandler handler = new DefaultHandler() {
diff --git
a/core/camel-xml-jaxp/src/main/java/org/apache/camel/util/xml/XmlLineNumberParser.java
b/core/camel-xml-jaxp/src/main/java/org/apache/camel/util/xml/XmlLineNumberParser.java
index 3336c1066e2..47b45381965 100644
---
a/core/camel-xml-jaxp/src/main/java/org/apache/camel/util/xml/XmlLineNumberParser.java
+++
b/core/camel-xml-jaxp/src/main/java/org/apache/camel/util/xml/XmlLineNumberParser.java
@@ -19,7 +19,7 @@ package org.apache.camel.util.xml;
import java.io.IOException;
import java.io.InputStream;
import java.io.StringReader;
-import java.util.Stack;
+import java.util.ArrayDeque;
import javax.xml.XMLConstants;
import javax.xml.parsers.DocumentBuilder;
@@ -141,7 +141,7 @@ public final class XmlLineNumberParser {
final DocumentBuilder docBuilder = dbf.newDocumentBuilder();
doc = docBuilder.newDocument();
- final Stack<Element> elementStack = new Stack<>();
+ final ArrayDeque<Element> elementStack = new ArrayDeque<>();
final StringBuilder textBuffer = new StringBuilder();
final DefaultHandler handler = new DefaultHandler() {
private Locator locator;
diff --git
a/core/camel-yaml-io/src/main/java/org/apache/camel/yaml/io/YamlWriter.java
b/core/camel-yaml-io/src/main/java/org/apache/camel/yaml/io/YamlWriter.java
index c1eed71eeb2..7b35bfc17bb 100644
--- a/core/camel-yaml-io/src/main/java/org/apache/camel/yaml/io/YamlWriter.java
+++ b/core/camel-yaml-io/src/main/java/org/apache/camel/yaml/io/YamlWriter.java
@@ -18,11 +18,11 @@ package org.apache.camel.yaml.io;
import java.io.IOException;
import java.io.Writer;
+import java.util.ArrayDeque;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Map;
-import java.util.Stack;
import java.util.StringJoiner;
import com.fasterxml.jackson.databind.JsonNode;
@@ -61,7 +61,7 @@ public class YamlWriter extends ServiceSupport implements
CamelContextAware {
private final DefaultRuntimeCamelCatalog catalog;
private final List<EipModel> roots = new ArrayList<>();
private boolean routesIsRoot;
- private final Stack<EipModel> models = new Stack<>();
+ private final ArrayDeque<EipModel> models = new ArrayDeque<>();
private String expression;
private boolean uriAsParameters;