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/02/12 15:59:24 UTC

[camel] branch camel-3.x updated: camel-jbang - Add native column for quarkus

This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch camel-3.x
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/camel-3.x by this push:
     new 0f3ab978801 camel-jbang - Add native column for quarkus
0f3ab978801 is described below

commit 0f3ab9788010efc1ade8f4840a86ccea46ab5fb1
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Sun Feb 12 16:37:10 2023 +0100

    camel-jbang - Add native column for quarkus
---
 .../jbang/core/commands/catalog/CatalogBaseCommand.java    | 14 ++++++++++++++
 .../dsl/jbang/core/commands/catalog/CatalogComponent.java  |  3 ++-
 .../dsl/jbang/core/commands/catalog/CatalogDataFormat.java |  1 +
 .../camel/dsl/jbang/core/commands/catalog/CatalogDoc.java  |  6 ++++--
 .../dsl/jbang/core/commands/catalog/CatalogLanguage.java   |  1 +
 .../dsl/jbang/core/commands/catalog/CatalogOther.java      |  1 +
 6 files changed, 23 insertions(+), 3 deletions(-)

diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogBaseCommand.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogBaseCommand.java
index 0b1d2900e65..d8d735a81e2 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogBaseCommand.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogBaseCommand.java
@@ -133,6 +133,8 @@ public abstract class CatalogBaseCommand extends CamelCommand {
                     new Column().header("NAME").visible(!gav).dataAlign(HorizontalAlign.LEFT).maxWidth(30).with(r -> r.name),
                     new Column().header("ARTIFACT-ID").visible(gav).dataAlign(HorizontalAlign.LEFT).with(this::shortGav),
                     new Column().header("LEVEL").dataAlign(HorizontalAlign.LEFT).with(r -> r.level),
+                    new Column().header("NATIVE").dataAlign(HorizontalAlign.CENTER)
+                            .visible("quarkus".equals(runtime)).with(this::nativeSupported),
                     new Column().header("SINCE").dataAlign(HorizontalAlign.RIGHT).with(r -> r.since),
                     new Column().header("DESCRIPTION").dataAlign(HorizontalAlign.LEFT).with(this::shortDescription))));
         }
@@ -173,6 +175,10 @@ public abstract class CatalogBaseCommand extends CamelCommand {
         }
     }
 
+    String nativeSupported(Row r) {
+        return r.nativeSupported ? "x" : "";
+    }
+
     static String fixQuarkusSince(String since) {
         // quarkus-catalog may have 0.1 and 0.0.1 versions that are really 1.0
         if (since != null && since.startsWith("0")) {
@@ -181,11 +187,19 @@ public abstract class CatalogBaseCommand extends CamelCommand {
         return since;
     }
 
+    static List<String> findComponentNames(CamelCatalog catalog) {
+        List<String> answer = catalog.findComponentNames();
+        // remove empty (spring boot catalog has a bug)
+        answer.removeIf(String::isBlank);
+        return answer;
+    }
+
     static class Row {
         String name;
         String title;
         String level;
         String since;
+        boolean nativeSupported;
         String description;
         String label;
         String gav;
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogComponent.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogComponent.java
index 4da2893c545..0aa23f7b500 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogComponent.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogComponent.java
@@ -34,7 +34,7 @@ public class CatalogComponent extends CatalogBaseCommand {
     @Override
     List<CatalogBaseCommand.Row> collectRows() {
         List<Row> rows = new ArrayList<>();
-        for (String name : catalog.findComponentNames()) {
+        for (String name : findComponentNames(catalog)) {
             ComponentModel model = catalog.componentModel(name);
             Row row = new Row();
             row.name = model.getScheme();
@@ -44,6 +44,7 @@ public class CatalogComponent extends CatalogBaseCommand {
             row.description = model.getDescription();
             row.label = model.getLabel() != null ? model.getLabel() : "";
             row.deprecated = model.isDeprecated();
+            row.nativeSupported = model.isNativeSupported();
             row.gav = getGAV(model);
             rows.add(row);
         }
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogDataFormat.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogDataFormat.java
index 569595cf337..5b6cc1cbc44 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogDataFormat.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogDataFormat.java
@@ -44,6 +44,7 @@ public class CatalogDataFormat extends CatalogBaseCommand {
             row.description = model.getDescription();
             row.label = model.getLabel() != null ? model.getLabel() : "";
             row.deprecated = model.isDeprecated();
+            row.nativeSupported = model.isNativeSupported();
             row.gav = getGAV(model);
             rows.add(row);
         }
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogDoc.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogDoc.java
index d10715a6162..d0bbc9b3bbc 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogDoc.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogDoc.java
@@ -45,6 +45,8 @@ import org.apache.camel.tooling.model.OtherModel;
 import org.apache.camel.util.StringHelper;
 import picocli.CommandLine;
 
+import static org.apache.camel.dsl.jbang.core.commands.catalog.CatalogBaseCommand.findComponentNames;
+
 @CommandLine.Command(name = "doc",
                      description = "Shows documentation for kamelet, component, and other Camel resources")
 public class CatalogDoc extends CamelCommand {
@@ -171,7 +173,7 @@ public class CatalogDoc extends CamelCommand {
                 suggestions = SuggestSimilarHelper.didYouMean(KameletCatalogHelper.findKameletNames(kameletsVersion), name);
             } else {
                 // assume its a component
-                suggestions = SuggestSimilarHelper.didYouMean(catalog.findComponentNames(), name);
+                suggestions = SuggestSimilarHelper.didYouMean(findComponentNames(catalog), name);
             }
             if (suggestions != null) {
                 String type = kamelet ? "kamelet" : "component";
@@ -184,7 +186,7 @@ public class CatalogDoc extends CamelCommand {
             if ("kamelet".equals(prefix)) {
                 suggestions = SuggestSimilarHelper.didYouMean(KameletCatalogHelper.findKameletNames(kameletsVersion), name);
             } else if ("component".equals(prefix)) {
-                suggestions = SuggestSimilarHelper.didYouMean(catalog.findComponentNames(), name);
+                suggestions = SuggestSimilarHelper.didYouMean(findComponentNames(catalog), name);
             } else if ("dataformat".equals(prefix)) {
                 suggestions = SuggestSimilarHelper.didYouMean(catalog.findDataFormatNames(), name);
             } else if ("language".equals(prefix)) {
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogLanguage.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogLanguage.java
index b2128805c20..4c0faf51b80 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogLanguage.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogLanguage.java
@@ -44,6 +44,7 @@ public class CatalogLanguage extends CatalogBaseCommand {
             row.description = model.getDescription();
             row.label = model.getLabel() != null ? model.getLabel() : "";
             row.deprecated = model.isDeprecated();
+            row.nativeSupported = model.isNativeSupported();
             row.gav = getGAV(model);
             rows.add(row);
         }
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogOther.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogOther.java
index 8b3b4e8a448..c874a37f253 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogOther.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/catalog/CatalogOther.java
@@ -44,6 +44,7 @@ public class CatalogOther extends CatalogBaseCommand {
             row.description = model.getDescription();
             row.label = model.getLabel() != null ? model.getLabel() : "";
             row.deprecated = model.isDeprecated();
+            row.nativeSupported = model.isNativeSupported();
             row.gav = getGAV(model);
             rows.add(row);
         }