You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ma...@apache.org on 2022/11/19 02:03:39 UTC
[camel-karavan] 07/12: Kamalets in projects
This is an automated email from the ASF dual-hosted git repository.
marat pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-karavan.git
commit dc1356fcf1881de4c4ebaedd39b946026bfc9b1f
Author: Marat Gubaidullin <ma...@gmail.com>
AuthorDate: Fri Nov 18 17:55:42 2022 -0500
Kamalets in projects
---
.../apache/camel/karavan/api/KameletResources.java | 10 ++++++----
.../org/apache/camel/karavan/model/Kamelet.java | 6 ------
.../apache/camel/karavan/service/ImportService.java | 21 ++++++++++++++-------
.../camel/karavan/service/InfinispanService.java | 19 -------------------
karavan-designer/src/designer/karavan.css | 5 +++++
5 files changed, 25 insertions(+), 36 deletions(-)
diff --git a/karavan-app/src/main/java/org/apache/camel/karavan/api/KameletResources.java b/karavan-app/src/main/java/org/apache/camel/karavan/api/KameletResources.java
index 30bcea3..d06f15d 100644
--- a/karavan-app/src/main/java/org/apache/camel/karavan/api/KameletResources.java
+++ b/karavan-app/src/main/java/org/apache/camel/karavan/api/KameletResources.java
@@ -16,6 +16,8 @@
*/
package org.apache.camel.karavan.api;
+import org.apache.camel.karavan.model.Project;
+import org.apache.camel.karavan.model.ProjectFile;
import org.apache.camel.karavan.service.CodeService;
import org.apache.camel.karavan.service.InfinispanService;
@@ -40,11 +42,11 @@ public class KameletResources {
@Produces(MediaType.TEXT_PLAIN)
public String getCustomYamls() {
StringBuilder kamelets = new StringBuilder(codeService.getResourceFile("/kamelets/kamelets.yaml"));
- List<String> customKameletNames = infinispanService.getKameletNames();
- if (customKameletNames.size() > 0) {
+ List<ProjectFile> custom = infinispanService.getProjectFiles(Project.NAME_KAMELETS);
+ if (custom.size() > 0) {
kamelets.append("\n---\n");
- kamelets.append(infinispanService.getKameletNames().stream()
- .map(name -> infinispanService.getKameletYaml(name))
+ kamelets.append(custom.stream()
+ .map(file -> file.getCode())
.collect(Collectors.joining("\n---\n")));
}
return kamelets.toString();
diff --git a/karavan-app/src/main/java/org/apache/camel/karavan/model/Kamelet.java b/karavan-app/src/main/java/org/apache/camel/karavan/model/Kamelet.java
deleted file mode 100644
index 7974390..0000000
--- a/karavan-app/src/main/java/org/apache/camel/karavan/model/Kamelet.java
+++ /dev/null
@@ -1,6 +0,0 @@
-package org.apache.camel.karavan.model;
-
-public abstract class Kamelet {
- public static final String CACHE = "kamelets";
-
-}
diff --git a/karavan-app/src/main/java/org/apache/camel/karavan/service/ImportService.java b/karavan-app/src/main/java/org/apache/camel/karavan/service/ImportService.java
index 12d153a..05cbe5d 100644
--- a/karavan-app/src/main/java/org/apache/camel/karavan/service/ImportService.java
+++ b/karavan-app/src/main/java/org/apache/camel/karavan/service/ImportService.java
@@ -83,7 +83,7 @@ public class ImportService {
try {
Project templates = infinispanService.getProject(Project.NAME_TEMPLATES);
if (templates == null) {
- templates = new Project("templates", "Templates", "Templates", "quarkus", "");
+ templates = new Project(Project.NAME_TEMPLATES, "Templates", "Templates", "quarkus", "");
infinispanService.saveProject(templates, true);
codeService.getApplicationPropertiesTemplates().forEach((name, value) -> {
@@ -100,12 +100,19 @@ public class ImportService {
void loadCustomKamelets(String data) {
LOGGER.info("Load custom Kamelets from Git");
try {
- List<Tuple2<String, String>> repo = gitService.readKameletsFromRepository();
- repo.forEach(p -> {
- String name = p.getItem1();
- String yaml = p.getItem2();
- infinispanService.saveKamelet(name, yaml);
- });
+ Project kamelets = infinispanService.getProject(Project.NAME_KAMELETS);
+ if (kamelets == null) {
+ kamelets = new Project(Project.NAME_KAMELETS, "Custom Kamelets", "Custom Kamelets", "quarkus", "");
+ infinispanService.saveProject(kamelets, true);
+
+ List<Tuple2<String, String>> repo = gitService.readKameletsFromRepository();
+ repo.forEach(p -> {
+ String name = p.getItem1();
+ String yaml = p.getItem2();
+ ProjectFile file = new ProjectFile(name, yaml, Project.NAME_KAMELETS);
+ infinispanService.saveProjectFile(file);
+ });
+ }
} catch (Exception e) {
LOGGER.error("Error during project import", e);
}
diff --git a/karavan-app/src/main/java/org/apache/camel/karavan/service/InfinispanService.java b/karavan-app/src/main/java/org/apache/camel/karavan/service/InfinispanService.java
index b8f44b1..b7ae729 100644
--- a/karavan-app/src/main/java/org/apache/camel/karavan/service/InfinispanService.java
+++ b/karavan-app/src/main/java/org/apache/camel/karavan/service/InfinispanService.java
@@ -20,13 +20,11 @@ import org.apache.camel.karavan.model.CamelStatus;
import org.apache.camel.karavan.model.DeploymentStatus;
import org.apache.camel.karavan.model.Environment;
import org.apache.camel.karavan.model.GroupedKey;
-import org.apache.camel.karavan.model.Kamelet;
import org.apache.camel.karavan.model.PipelineStatus;
import org.apache.camel.karavan.model.PodStatus;
import org.apache.camel.karavan.model.Project;
import org.apache.camel.karavan.model.ProjectFile;
import org.apache.camel.karavan.model.ServiceStatus;
-import org.eclipse.microprofile.config.inject.ConfigProperty;
import org.infinispan.client.hotrod.RemoteCache;
import org.infinispan.client.hotrod.RemoteCacheManager;
import org.infinispan.client.hotrod.Search;
@@ -37,7 +35,6 @@ import org.infinispan.configuration.cache.CacheMode;
import org.infinispan.configuration.cache.ConfigurationBuilder;
import org.infinispan.configuration.cache.SingleFileStoreConfigurationBuilder;
import org.infinispan.configuration.global.GlobalConfigurationBuilder;
-import org.infinispan.eviction.EvictionStrategy;
import org.infinispan.manager.DefaultCacheManager;
import org.infinispan.query.dsl.QueryFactory;
import org.jboss.logging.Logger;
@@ -58,7 +55,6 @@ public class InfinispanService {
BasicCache<GroupedKey, PodStatus> podStatuses;
BasicCache<GroupedKey, CamelStatus> camelStatuses;
BasicCache<GroupedKey, ServiceStatus> serviceStatuses;
- BasicCache<String, String> kamelets;
BasicCache<String, Environment> environments;
@Inject
@@ -96,7 +92,6 @@ public class InfinispanService {
podStatuses = cacheManager.administration().withFlags(CacheContainerAdmin.AdminFlag.VOLATILE).getOrCreateCache(PodStatus.CACHE, builder.build());
serviceStatuses = cacheManager.administration().withFlags(CacheContainerAdmin.AdminFlag.VOLATILE).getOrCreateCache(ServiceStatus.CACHE, builder.build());
camelStatuses = cacheManager.administration().withFlags(CacheContainerAdmin.AdminFlag.VOLATILE).getOrCreateCache(CamelStatus.CACHE, builder.build());
- kamelets = cacheManager.administration().withFlags(CacheContainerAdmin.AdminFlag.VOLATILE).getOrCreateCache(Kamelet.CACHE, builder.build());
cleanData();
} else {
@@ -109,9 +104,7 @@ public class InfinispanService {
podStatuses = cacheManager.administration().getOrCreateCache(PodStatus.CACHE, new XMLStringConfiguration(String.format(CACHE_CONFIG, PodStatus.CACHE)));
serviceStatuses = cacheManager.administration().getOrCreateCache(ServiceStatus.CACHE, new XMLStringConfiguration(String.format(CACHE_CONFIG, ServiceStatus.CACHE)));
camelStatuses = cacheManager.administration().getOrCreateCache(CamelStatus.CACHE, new XMLStringConfiguration(String.format(CACHE_CONFIG, CamelStatus.CACHE)));
- kamelets = cacheManager.administration().getOrCreateCache(Kamelet.CACHE, new XMLStringConfiguration(String.format(CACHE_CONFIG, Kamelet.CACHE)));
}
-// org.hibernate.search.engine.search.loading.spi.EntityLoader
}
private void cleanData() {
@@ -283,18 +276,6 @@ public class InfinispanService {
camelStatuses.remove(GroupedKey.create(name, env));
}
- public List<String> getKameletNames() {
- return kamelets.keySet().stream().collect(Collectors.toList());
- }
-
- public String getKameletYaml(String name) {
- return kamelets.get(name);
- }
-
- public void saveKamelet(String name, String yaml) {
- kamelets.put(name, yaml);
- }
-
public List<Environment> getEnvironments() {
return environments.values().stream().collect(Collectors.toList());
}
diff --git a/karavan-designer/src/designer/karavan.css b/karavan-designer/src/designer/karavan.css
index 77ff41e..ae823fb 100644
--- a/karavan-designer/src/designer/karavan.css
+++ b/karavan-designer/src/designer/karavan.css
@@ -128,6 +128,11 @@
padding-right: 6px;
}
+.kamelets-page .kamelet-card .pf-c-card__title {
+ font-size: 15px;
+ font-weight: 400;
+}
+
.kamelets-page .kamelet-card .pf-c-card__body {
overflow: hidden;
position: relative;