This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch camel-4.14.x
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/camel-4.14.x by this push:
new 10349b61c5a1 CAMEL-22660: camel-jbang - Use --stub=all should only
stub components (#19821)
10349b61c5a1 is described below
commit 10349b61c5a14103cc6549dfa9694cb794d1c6fa
Author: Claus Ibsen <[email protected]>
AuthorDate: Thu Nov 6 07:16:31 2025 +0100
CAMEL-22660: camel-jbang - Use --stub=all should only stub components
(#19821)
CAMEL-22660: camel-jbang - Use --stub=all should only stub components
---
.../main/java/org/apache/camel/dsl/jbang/core/commands/Run.java | 7 ++++---
.../src/main/java/org/apache/camel/main/KameletMain.java | 2 +-
.../main/download/DependencyDownloaderComponentResolver.java | 8 +++++++-
.../main/download/DependencyDownloaderDataFormatResolver.java | 7 ++++++-
.../camel/main/download/DependencyDownloaderLanguageResolver.java | 7 ++++++-
.../camel/main/download/KameletAutowiredLifecycleStrategy.java | 2 +-
6 files changed, 25 insertions(+), 8 deletions(-)
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Run.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Run.java
index 7b6009a574bc..b9def79e0654 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Run.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Run.java
@@ -275,8 +275,8 @@ public class Run extends CamelCommand {
@Option(names = { "--prop", "--property" }, description = "Additional
properties (override existing)", arity = "0")
String[] property;
- @Option(names = { "--stub" }, description = "Stubs all the matching
endpoint with the given component name or pattern."
- + " Multiple names can be
separated by comma. (all = everything).")
+ @Option(names = { "--stub" }, description = "Stubs all the matching
endpoint uri with the given component name or pattern."
+ + " Multiple names can be
separated by comma. (all = stub all endpoints).")
String stub;
@Option(names = { "--jfr" }, defaultValue = "false",
@@ -587,7 +587,8 @@ public class Run extends CamelCommand {
if (stub != null) {
if ("all".equals(stub)) {
- stub = "*";
+ // stub all components only
+ stub = "component:*";
}
// we need to match by wildcard, to make it easier
StringJoiner sj = new StringJoiner(",");
diff --git
a/dsl/camel-kamelet-main/src/main/java/org/apache/camel/main/KameletMain.java
b/dsl/camel-kamelet-main/src/main/java/org/apache/camel/main/KameletMain.java
index 1995317569fc..fc9b5953dc70 100644
---
a/dsl/camel-kamelet-main/src/main/java/org/apache/camel/main/KameletMain.java
+++
b/dsl/camel-kamelet-main/src/main/java/org/apache/camel/main/KameletMain.java
@@ -498,7 +498,7 @@ public class KameletMain extends MainCommandLineSupport {
configure().httpManagementServer().withEnabled(false);
}
- if (silent || "*".equals(stubPattern)) {
+ if (silent || "*".equals(stubPattern) ||
"component:*".equals(stubPattern)) {
// turn off auto-wiring when running in silent mode (or stub = *)
mainConfigurationProperties.setAutowiredEnabled(false);
// and turn off fail fast as we stub components
diff --git
a/dsl/camel-kamelet-main/src/main/java/org/apache/camel/main/download/DependencyDownloaderComponentResolver.java
b/dsl/camel-kamelet-main/src/main/java/org/apache/camel/main/download/DependencyDownloaderComponentResolver.java
index 9fc30b8ebd43..5e51e5ba18b5 100644
---
a/dsl/camel-kamelet-main/src/main/java/org/apache/camel/main/download/DependencyDownloaderComponentResolver.java
+++
b/dsl/camel-kamelet-main/src/main/java/org/apache/camel/main/download/DependencyDownloaderComponentResolver.java
@@ -146,7 +146,13 @@ public final class DependencyDownloaderComponentResolver
extends DefaultComponen
return true;
}
- boolean stubbed = PatternHelper.matchPatterns(name,
stubPattern.split(","));
+ boolean stubbed = false;
+ for (String n : stubPattern.split(",")) {
+ if (n.startsWith("component:")) {
+ n = n.substring(10);
+ }
+ stubbed |= PatternHelper.matchPattern(name, n);
+ }
return !stubbed;
}
diff --git
a/dsl/camel-kamelet-main/src/main/java/org/apache/camel/main/download/DependencyDownloaderDataFormatResolver.java
b/dsl/camel-kamelet-main/src/main/java/org/apache/camel/main/download/DependencyDownloaderDataFormatResolver.java
index 7bdc85280ec0..dc26929ef710 100644
---
a/dsl/camel-kamelet-main/src/main/java/org/apache/camel/main/download/DependencyDownloaderDataFormatResolver.java
+++
b/dsl/camel-kamelet-main/src/main/java/org/apache/camel/main/download/DependencyDownloaderDataFormatResolver.java
@@ -80,7 +80,12 @@ public final class DependencyDownloaderDataFormatResolver
extends DefaultDataFor
return true;
}
- boolean stubbed = PatternHelper.matchPatterns(name,
stubPattern.split(","));
+ boolean stubbed = false;
+ for (String n : stubPattern.split(",")) {
+ if (n.startsWith("dataformat:")) {
+ stubbed |= PatternHelper.matchPattern(name, n.substring(11));
+ }
+ }
return !stubbed;
}
diff --git
a/dsl/camel-kamelet-main/src/main/java/org/apache/camel/main/download/DependencyDownloaderLanguageResolver.java
b/dsl/camel-kamelet-main/src/main/java/org/apache/camel/main/download/DependencyDownloaderLanguageResolver.java
index b15eaab6f94e..32ff45c41327 100644
---
a/dsl/camel-kamelet-main/src/main/java/org/apache/camel/main/download/DependencyDownloaderLanguageResolver.java
+++
b/dsl/camel-kamelet-main/src/main/java/org/apache/camel/main/download/DependencyDownloaderLanguageResolver.java
@@ -94,7 +94,12 @@ public final class DependencyDownloaderLanguageResolver
extends DefaultLanguageR
return true;
}
- boolean stubbed = PatternHelper.matchPatterns(name,
stubPattern.split(","));
+ boolean stubbed = false;
+ for (String n : stubPattern.split(",")) {
+ if (n.startsWith("language:")) {
+ stubbed |= PatternHelper.matchPattern(name, n.substring(9));
+ }
+ }
return !stubbed;
}
diff --git
a/dsl/camel-kamelet-main/src/main/java/org/apache/camel/main/download/KameletAutowiredLifecycleStrategy.java
b/dsl/camel-kamelet-main/src/main/java/org/apache/camel/main/download/KameletAutowiredLifecycleStrategy.java
index bc886a9f8137..5a6c898baefa 100644
---
a/dsl/camel-kamelet-main/src/main/java/org/apache/camel/main/download/KameletAutowiredLifecycleStrategy.java
+++
b/dsl/camel-kamelet-main/src/main/java/org/apache/camel/main/download/KameletAutowiredLifecycleStrategy.java
@@ -70,7 +70,7 @@ public class KameletAutowiredLifecycleStrategy extends
MainAutowiredLifecycleStr
}
if (stubPattern == null) {
return true;
- } else if (stubPattern.equals("*")) {
+ } else if (stubPattern.equals("*") ||
stubPattern.equals("component:*")) {
return false;
} else {
// is the component stubbed, then it should not autowire