You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ac...@apache.org on 2021/04/27 16:51:30 UTC
[camel-kamelets] 02/02: Added Camel-Kamelet-catalog getByProvider
method
This is an automated email from the ASF dual-hosted git repository.
acosentino pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-kamelets.git
commit be63a9fd10b3ab3b50dc61af3fd40a8191c80104
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Tue Apr 27 18:50:52 2021 +0200
Added Camel-Kamelet-catalog getByProvider method
---
.../org/apache/camel/kamelets/catalog/KameletsCatalog.java | 13 +++++++++++++
.../apache/camel/kamelets/catalog/KameletsCatalogTest.java | 9 +++++++++
2 files changed, 22 insertions(+)
diff --git a/camel-kamelets-catalog/src/main/java/org/apache/camel/kamelets/catalog/KameletsCatalog.java b/camel-kamelets-catalog/src/main/java/org/apache/camel/kamelets/catalog/KameletsCatalog.java
index 9671589..704ba09 100644
--- a/camel-kamelets-catalog/src/main/java/org/apache/camel/kamelets/catalog/KameletsCatalog.java
+++ b/camel-kamelets-catalog/src/main/java/org/apache/camel/kamelets/catalog/KameletsCatalog.java
@@ -29,6 +29,7 @@ import org.slf4j.LoggerFactory;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
+import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
@@ -108,4 +109,16 @@ public class KameletsCatalog {
return null;
}
}
+
+ public List<Kamelet> getKameletByProvider(String provider) {
+ List<Kamelet> collect = kameletModels.entrySet().stream()
+ .filter(x -> x.getValue().getMetadata().getAnnotations().get("camel.apache.org/provider").equalsIgnoreCase(provider))
+ .map(Map.Entry::getValue)
+ .collect(Collectors.toList());
+ if (!collect.isEmpty()) {
+ return collect;
+ } else {
+ return Collections.emptyList();
+ }
+ }
}
diff --git a/camel-kamelets-catalog/src/test/java/org/apache/camel/kamelets/catalog/KameletsCatalogTest.java b/camel-kamelets-catalog/src/test/java/org/apache/camel/kamelets/catalog/KameletsCatalogTest.java
index ff741c4..a334517 100644
--- a/camel-kamelets-catalog/src/test/java/org/apache/camel/kamelets/catalog/KameletsCatalogTest.java
+++ b/camel-kamelets-catalog/src/test/java/org/apache/camel/kamelets/catalog/KameletsCatalogTest.java
@@ -16,6 +16,7 @@
*/
package org.apache.camel.kamelets.catalog;
+import io.fabric8.camelk.v1alpha1.Kamelet;
import io.fabric8.kubernetes.api.model.apiextensions.v1.JSONSchemaProps;
import org.apache.camel.kamelets.catalog.model.KameletTypeEnum;
import org.junit.jupiter.api.BeforeAll;
@@ -75,4 +76,12 @@ public class KameletsCatalogTest {
JSONSchemaProps props = catalog.getKameletDefinition("word");
assertNull(props);
}
+
+ @Test
+ void testGetKameletsByProvider() throws Exception {
+ List<Kamelet> c = catalog.getKameletByProvider("Apache Software Foundation");
+ assertEquals(62, c.size());
+ c = catalog.getKameletByProvider("Eclipse");
+ assertEquals(0, c.size());
+ }
}