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 2023/12/04 19:10:47 UTC
(camel) branch main updated: CAMEL-20186: camel-jbang - dependency list to output in jbang style.
This is an automated email from the ASF dual-hosted git repository.
davsclaus 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 eccc0d6296a CAMEL-20186: camel-jbang - dependency list to output in jbang style.
eccc0d6296a is described below
commit eccc0d6296ace8b8323853c80d46729c105fb779
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Mon Dec 4 20:10:32 2023 +0100
CAMEL-20186: camel-jbang - dependency list to output in jbang style.
---
.../dsl/jbang/core/commands/DependencyCopy.java | 2 +-
.../dsl/jbang/core/commands/DependencyList.java | 21 ++++++++++++++++-----
2 files changed, 17 insertions(+), 6 deletions(-)
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/DependencyCopy.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/DependencyCopy.java
index 57f60553f09..e27ded4c1ff 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/DependencyCopy.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/DependencyCopy.java
@@ -66,7 +66,7 @@ public class DependencyCopy extends DependencyList {
}
@Override
- protected void outputGav(MavenGav gav) {
+ protected void outputGav(MavenGav gav, int index) {
try {
List<MavenArtifact> artifacts = getDownloader().resolveArtifacts(
List.of(gav.toString()), Set.of(), true, gav.getVersion().contains("SNAPSHOT"));
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/DependencyList.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/DependencyList.java
index a8d4512edcd..919c3eadd10 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/DependencyList.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/DependencyList.java
@@ -41,7 +41,7 @@ public class DependencyList extends Export {
protected static final String EXPORT_DIR = ".camel-jbang/export";
- @CommandLine.Option(names = { "--output" }, description = "Output format (gav or maven)", defaultValue = "gav")
+ @CommandLine.Option(names = { "--output" }, description = "Output format (gav, maven, jbang)", defaultValue = "gav")
protected String output;
public DependencyList(CamelJBangMain main) {
@@ -56,7 +56,7 @@ public class DependencyList extends Export {
@Override
protected Integer export() throws Exception {
- if (!"gav".equals(output) && !"maven".equals(output)) {
+ if (!"gav".equals(output) && !"maven".equals(output) && !"jbang".equals(output)) {
System.err.println("--output must be either gav or maven, was: " + output);
return 1;
}
@@ -143,8 +143,10 @@ public class DependencyList extends Export {
}
// sort GAVs
gavs.sort(mavenGavComparator());
+ int i = 0;
for (MavenGav gav : gavs) {
- outputGav(gav);
+ outputGav(gav, i);
+ i++;
}
}
// cleanup dir after complete
@@ -154,15 +156,24 @@ public class DependencyList extends Export {
return answer;
}
- protected void outputGav(MavenGav gav) {
+ protected void outputGav(MavenGav gav, int index) {
if ("gav".equals(output)) {
- System.out.println(gav.toString());
+ System.out.println(gav);
} else if ("maven".equals(output)) {
System.out.println("<dependency>");
System.out.printf(" <groupId>%s</groupId>%n", gav.getGroupId());
System.out.printf(" <artifactId>%s</artifactId>%n", gav.getArtifactId());
System.out.printf(" <version>%s</version>%n", gav.getVersion());
System.out.println("</dependency>");
+ } else if ("jbang".equals(output)) {
+ if (index == 0) {
+ System.out.println("//DEPS org.apache.camel:camel-bom:" + gav.getVersion() + "@pom");
+ }
+ if (gav.getGroupId().equals("org.apache.camel")) {
+ // jbang has version in @pom so we should remove this
+ gav.setVersion(null);
+ }
+ System.out.println("//DEPS " + gav);
}
}