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 <anco...@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());
+    }
 }

Reply via email to