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;