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

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

commit 5672c957fb35bbb69e6845c00dce1a7119e3f56e
Author: Claus Ibsen <claus.ib...@gmail.com>
AuthorDate: Sat Feb 24 10:18:30 2024 +0100

    CAMEL-18858: camel-core - Mark route as created by Kamelet so we know this, 
so we can filter out in tooling and whereelse (kamelet is a blackbox)
---
 .../java/org/apache/camel/spi/ManagementAgent.java | 28 ++++++++++++++++++++++
 .../api/management/JmxSystemPropertyKeys.java      |  6 +++++
 .../camel/management/DefaultManagementAgent.java   | 26 ++++++++++++++++++++
 3 files changed, 60 insertions(+)

diff --git 
a/core/camel-api/src/main/java/org/apache/camel/spi/ManagementAgent.java 
b/core/camel-api/src/main/java/org/apache/camel/spi/ManagementAgent.java
index 4e1ee22dd01..01b1257e3d9 100644
--- a/core/camel-api/src/main/java/org/apache/camel/spi/ManagementAgent.java
+++ b/core/camel-api/src/main/java/org/apache/camel/spi/ManagementAgent.java
@@ -199,6 +199,34 @@ public interface ManagementAgent extends Service {
      */
     void setRegisterNewRoutes(Boolean registerNewRoutes);
 
+    /**
+     * Whether to register mbeans for routes created by a Kamelet
+     * <p/>
+     * This option is default <tt>true</tt>.
+     */
+    Boolean getRegisterRoutesCreateByKamelet();
+
+    /**
+     * Whether to register mbeans for routes created by a Kamelet
+     * <p/>
+     * This option is default <tt>true</tt>.
+     */
+    void setRegisterRoutesCreateByKamelet(Boolean 
registerRoutesCreateByKamelet);
+
+    /**
+     * Whether to register mbeans for routes created by a route templates (not 
Kamelets)
+     * <p/>
+     * This option is default <tt>true</tt>.
+     */
+    Boolean getRegisterRoutesCreateByTemplate();
+
+    /**
+     * Whether to register mbeans for routes created by a route templates (not 
Kamelets)
+     * <p/>
+     * This option is default <tt>true</tt>.
+     */
+    void setRegisterRoutesCreateByTemplate(Boolean 
registerRoutesCreateByTemplate);
+
     /**
      * Whether to remove detected sensitive information (such as passwords) 
from MBean names and attributes.
      * <p/>
diff --git 
a/core/camel-management-api/src/main/java/org/apache/camel/api/management/JmxSystemPropertyKeys.java
 
b/core/camel-management-api/src/main/java/org/apache/camel/api/management/JmxSystemPropertyKeys.java
index 51eafd2897f..dfe24f32a79 100644
--- 
a/core/camel-management-api/src/main/java/org/apache/camel/api/management/JmxSystemPropertyKeys.java
+++ 
b/core/camel-management-api/src/main/java/org/apache/camel/api/management/JmxSystemPropertyKeys.java
@@ -52,6 +52,12 @@ public final class JmxSystemPropertyKeys {
     // whether to register when starting new routes
     public static final String REGISTER_NEW_ROUTES = 
"org.apache.camel.jmx.registerNewRoutes";
 
+    // whether to register routes created by route templates (not kamelets)
+    public static final String REGISTER_ROUTES_CREATED_BY_TEMPLATE = 
"org.apache.camel.jmx.registerRoutesCreateByTemplate";
+
+    // whether to register routes created by Kamelets
+    public static final String REGISTER_ROUTES_CREATED_BY_KAMELET = 
"org.apache.camel.jmx.registerRoutesCreateByKamelet";
+
     // Whether to remove detected sensitive information (such as passwords) 
from MBean names and attributes.
     public static final String MASK = "org.apache.camel.jmx.mask";
 
diff --git 
a/core/camel-management/src/main/java/org/apache/camel/management/DefaultManagementAgent.java
 
b/core/camel-management/src/main/java/org/apache/camel/management/DefaultManagementAgent.java
index ae761567c8a..beef93e89f8 100644
--- 
a/core/camel-management/src/main/java/org/apache/camel/management/DefaultManagementAgent.java
+++ 
b/core/camel-management/src/main/java/org/apache/camel/management/DefaultManagementAgent.java
@@ -69,6 +69,8 @@ public class DefaultManagementAgent extends ServiceSupport 
implements Management
     private Boolean endpointRuntimeStatisticsEnabled;
     private Boolean registerAlways = false;
     private Boolean registerNewRoutes = true;
+    private Boolean registerRoutesCreateByKamelet = true;
+    private Boolean registerRoutesCreateByTemplate = true;
     private Boolean mask = true;
     private Boolean includeHostName = false;
     private Boolean useHostIPAddress = false;
@@ -113,6 +115,14 @@ public class DefaultManagementAgent extends ServiceSupport 
implements Management
             registerNewRoutes = 
Boolean.getBoolean(JmxSystemPropertyKeys.REGISTER_NEW_ROUTES);
             values.put(JmxSystemPropertyKeys.REGISTER_NEW_ROUTES, 
registerNewRoutes);
         }
+        if 
(System.getProperty(JmxSystemPropertyKeys.REGISTER_ROUTES_CREATED_BY_TEMPLATE) 
!= null) {
+            registerRoutesCreateByTemplate = 
Boolean.getBoolean(JmxSystemPropertyKeys.REGISTER_ROUTES_CREATED_BY_TEMPLATE);
+            
values.put(JmxSystemPropertyKeys.REGISTER_ROUTES_CREATED_BY_TEMPLATE, 
registerRoutesCreateByTemplate);
+        }
+        if 
(System.getProperty(JmxSystemPropertyKeys.REGISTER_ROUTES_CREATED_BY_KAMELET) 
!= null) {
+            registerRoutesCreateByKamelet = 
Boolean.getBoolean(JmxSystemPropertyKeys.REGISTER_ROUTES_CREATED_BY_KAMELET);
+            
values.put(JmxSystemPropertyKeys.REGISTER_ROUTES_CREATED_BY_KAMELET, 
registerRoutesCreateByKamelet);
+        }
         if (System.getProperty(JmxSystemPropertyKeys.MASK) != null) {
             mask = Boolean.getBoolean(JmxSystemPropertyKeys.MASK);
             values.put(JmxSystemPropertyKeys.MASK, mask);
@@ -222,6 +232,22 @@ public class DefaultManagementAgent extends ServiceSupport 
implements Management
         this.registerNewRoutes = registerNewRoutes;
     }
 
+    public Boolean getRegisterRoutesCreateByKamelet() {
+        return registerRoutesCreateByKamelet != null && 
registerRoutesCreateByKamelet;
+    }
+
+    public void setRegisterRoutesCreateByKamelet(Boolean 
registerRoutesCreateByKamelet) {
+        this.registerRoutesCreateByKamelet = registerRoutesCreateByKamelet;
+    }
+
+    public Boolean getRegisterRoutesCreateByTemplate() {
+        return registerRoutesCreateByTemplate != null && 
registerRoutesCreateByTemplate;
+    }
+
+    public void setRegisterRoutesCreateByTemplate(Boolean 
registerRoutesCreateByTemplate) {
+        this.registerRoutesCreateByTemplate = registerRoutesCreateByTemplate;
+    }
+
     @Override
     public Boolean getMask() {
         return mask != null && mask;

Reply via email to