This is an automated email from the ASF dual-hosted git repository. davsclaus pushed a commit to branch feature/CAMEL-24514-devconsole-openapi-get in repository https://gitbox.apache.org/repos/asf/camel.git
commit 67f15ff0f0513daf6143c80a3b8aef67d4653aa7 Author: Claus Ibsen <[email protected]> AuthorDate: Sat Aug 29 13:04:19 2026 +0200 CAMEL-24514: camel-console - Surface readOnly flag in DevConsole catalog metadata Move the read-only/mutating classification from a per-class isReadOnly() override onto a new @DevConsole(readOnly=...) annotation attribute, so it is available both at runtime (AbstractDevConsole reads it reflectively) and at build time. GenerateDevConsoleMojo now emits "readOnly" into each console's generated dev-console/*.json, so the static catalog metadata already carries the safe/mutating classification ahead of a future release-time static OpenAPI doc generator, without needing a running CamelContext. Regenerated the dev-console JSON for every module with a @DevConsole class (core, camel-jfr, and ~24 component/dsl/catalog modules) to pick up the new field; no Java behavior changes outside camel-console and camel-jfr. Co-Authored-By: Claude Sonnet 5 <[email protected]> Signed-off-by: Claus Ibsen <[email protected]> --- .../META-INF/org/apache/camel/dev-console/catalog.json | 1 + .../META-INF/org/apache/camel/dev-console/aws-secrets.json | 1 + .../META-INF/org/apache/camel/dev-console/aws2-s3.json | 1 + .../META-INF/org/apache/camel/dev-console/azure-secrets.json | 1 + .../META-INF/org/apache/camel/dev-console/route-diagram.json | 1 + .../resources/META-INF/org/apache/camel/dev-console/sftp.json | 1 + .../META-INF/org/apache/camel/dev-console/gcp-secrets.json | 1 + .../META-INF/org/apache/camel/dev-console/groovy.json | 1 + .../org/apache/camel/dev-console/hashicorp-secrets.json | 1 + .../META-INF/org/apache/camel/dev-console/ibm-secrets.json | 1 + .../resources/META-INF/org/apache/camel/dev-console/jfr.json | 1 + .../java/org/apache/camel/runtime/jfr/CamelJfrDevConsole.java | 7 +------ .../META-INF/org/apache/camel/dev-console/kafka.json | 1 + .../org/apache/camel/dev-console/kubernetes-configmaps.json | 1 + .../org/apache/camel/dev-console/kubernetes-secrets.json | 1 + .../META-INF/org/apache/camel/dev-console/micrometer.json | 1 + .../org/apache/camel/dev-console/fault-tolerance.json | 1 + .../META-INF/org/apache/camel/dev-console/opentelemetry.json | 1 + .../org/apache/camel/dev-console/main-http-server.json | 1 + .../META-INF/org/apache/camel/dev-console/platform-http.json | 1 + .../META-INF/org/apache/camel/dev-console/quartz.json | 1 + .../META-INF/org/apache/camel/dev-console/resilience4j.json | 1 + .../resources/META-INF/org/apache/camel/dev-console/stub.json | 1 + .../org/apache/camel/dev-console/vertx-websocket.json | 1 + .../java/org/apache/camel/spi/annotations/DevConsole.java | 8 ++++++++ .../META-INF/org/apache/camel/dev-console/activity.json | 1 + .../resources/META-INF/org/apache/camel/dev-console/api.json | 1 + .../resources/META-INF/org/apache/camel/dev-console/bean.json | 1 + .../META-INF/org/apache/camel/dev-console/blocked.json | 1 + .../META-INF/org/apache/camel/dev-console/browse.json | 1 + .../org/apache/camel/dev-console/circuit-breaker.json | 1 + .../META-INF/org/apache/camel/dev-console/consumer.json | 1 + .../META-INF/org/apache/camel/dev-console/context.json | 1 + .../META-INF/org/apache/camel/dev-console/datasource.json | 1 + .../META-INF/org/apache/camel/dev-console/debug.json | 1 + .../META-INF/org/apache/camel/dev-console/endpoint.json | 1 + .../META-INF/org/apache/camel/dev-console/errors.json | 1 + .../META-INF/org/apache/camel/dev-console/eval-language.json | 1 + .../META-INF/org/apache/camel/dev-console/event.json | 1 + .../resources/META-INF/org/apache/camel/dev-console/gc.json | 1 + .../META-INF/org/apache/camel/dev-console/health.json | 1 + .../META-INF/org/apache/camel/dev-console/heap-dump.json | 1 + .../META-INF/org/apache/camel/dev-console/heap-histogram.json | 1 + .../META-INF/org/apache/camel/dev-console/inflight.json | 1 + .../META-INF/org/apache/camel/dev-console/internal-tasks.json | 1 + .../META-INF/org/apache/camel/dev-console/java-security.json | 1 + .../org/apache/camel/dev-console/jfr-memory-leak.json | 1 + .../resources/META-INF/org/apache/camel/dev-console/jvm.json | 1 + .../resources/META-INF/org/apache/camel/dev-console/log.json | 1 + .../META-INF/org/apache/camel/dev-console/memory.json | 1 + .../org/apache/camel/dev-console/message-history.json | 1 + .../org/apache/camel/dev-console/processor-detail.json | 1 + .../META-INF/org/apache/camel/dev-console/processor.json | 1 + .../META-INF/org/apache/camel/dev-console/producer.json | 1 + .../META-INF/org/apache/camel/dev-console/properties.json | 1 + .../META-INF/org/apache/camel/dev-console/receive.json | 1 + .../META-INF/org/apache/camel/dev-console/reload.json | 1 + .../META-INF/org/apache/camel/dev-console/rest-spec.json | 1 + .../resources/META-INF/org/apache/camel/dev-console/rest.json | 1 + .../org/apache/camel/dev-console/route-controller.json | 1 + .../META-INF/org/apache/camel/dev-console/route-dump.json | 1 + .../META-INF/org/apache/camel/dev-console/route-group.json | 1 + .../org/apache/camel/dev-console/route-structure.json | 1 + .../META-INF/org/apache/camel/dev-console/route-topology.json | 1 + .../META-INF/org/apache/camel/dev-console/route.json | 1 + .../resources/META-INF/org/apache/camel/dev-console/send.json | 1 + .../META-INF/org/apache/camel/dev-console/service.json | 1 + .../org/apache/camel/dev-console/simple-language.json | 1 + .../META-INF/org/apache/camel/dev-console/source.json | 1 + .../META-INF/org/apache/camel/dev-console/sql-query.json | 1 + .../META-INF/org/apache/camel/dev-console/sql-trace.json | 1 + .../org/apache/camel/dev-console/startup-recorder.json | 1 + .../org/apache/camel/dev-console/system-properties.json | 1 + .../META-INF/org/apache/camel/dev-console/thread.json | 1 + .../resources/META-INF/org/apache/camel/dev-console/top.json | 1 + .../META-INF/org/apache/camel/dev-console/trace.json | 1 + .../META-INF/org/apache/camel/dev-console/transformers.json | 1 + .../org/apache/camel/dev-console/type-converters.json | 1 + .../META-INF/org/apache/camel/dev-console/variables.json | 1 + .../java/org/apache/camel/impl/console/DebugDevConsole.java | 7 +------ .../org/apache/camel/impl/console/EvalLanguageDevConsole.java | 8 ++------ .../org/apache/camel/impl/console/HeapDumpDevConsole.java | 7 +------ .../apache/camel/impl/console/JfrMemoryLeakDevConsole.java | 7 +------ .../org/apache/camel/impl/console/ProcessorDevConsole.java | 7 +------ .../java/org/apache/camel/impl/console/ReceiveDevConsole.java | 8 ++------ .../java/org/apache/camel/impl/console/ReloadDevConsole.java | 7 +------ .../java/org/apache/camel/impl/console/RouteDevConsole.java | 7 +------ .../org/apache/camel/impl/console/RouteGroupDevConsole.java | 7 +------ .../java/org/apache/camel/impl/console/SendDevConsole.java | 7 +------ .../org/apache/camel/impl/console/SqlQueryDevConsole.java | 8 ++------ .../java/org/apache/camel/impl/console/TraceDevConsole.java | 7 +------ .../META-INF/org/apache/camel/dev-console/bean-model.json | 1 + .../org/apache/camel/dev-console/main-configuration.json | 1 + .../org/apache/camel/support/console/AbstractDevConsole.java | 7 +++++++ .../META-INF/org/apache/camel/dev-console/jbang.json | 1 + .../META-INF/org/apache/camel/dev-console/source-dir.json | 1 + .../org/apache/camel/dev-console/dependency-downloader.json | 1 + .../apache/camel/maven/packaging/GenerateDevConsoleMojo.java | 11 +++++++++++ .../java/org/apache/camel/spi/annotations/DevConsole.java | 8 ++++++++ 99 files changed, 132 insertions(+), 78 deletions(-) diff --git a/catalog/camel-catalog-console/src/generated/resources/META-INF/org/apache/camel/dev-console/catalog.json b/catalog/camel-catalog-console/src/generated/resources/META-INF/org/apache/camel/dev-console/catalog.json index e3831053d358..cf9b99383714 100644 --- a/catalog/camel-catalog-console/src/generated/resources/META-INF/org/apache/camel/dev-console/catalog.json +++ b/catalog/camel-catalog-console/src/generated/resources/META-INF/org/apache/camel/dev-console/catalog.json @@ -6,6 +6,7 @@ "title": "Catalog", "description": "Information about used Camel artifacts", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.catalog.console.CatalogConsole", "groupId": "org.apache.camel", "artifactId": "camel-catalog-console", diff --git a/components/camel-aws/camel-aws-secrets-manager/src/generated/resources/META-INF/org/apache/camel/dev-console/aws-secrets.json b/components/camel-aws/camel-aws-secrets-manager/src/generated/resources/META-INF/org/apache/camel/dev-console/aws-secrets.json index b97e902cc923..d0f70871f2a5 100644 --- a/components/camel-aws/camel-aws-secrets-manager/src/generated/resources/META-INF/org/apache/camel/dev-console/aws-secrets.json +++ b/components/camel-aws/camel-aws-secrets-manager/src/generated/resources/META-INF/org/apache/camel/dev-console/aws-secrets.json @@ -6,6 +6,7 @@ "title": "AWS Secrets", "description": "AWS Secrets Manager", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.component.aws.secretsmanager.SecretsDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-aws-secrets-manager", diff --git a/components/camel-aws/camel-aws2-s3/src/generated/resources/META-INF/org/apache/camel/dev-console/aws2-s3.json b/components/camel-aws/camel-aws2-s3/src/generated/resources/META-INF/org/apache/camel/dev-console/aws2-s3.json index e9be83caf8a8..ce0e95b664b0 100644 --- a/components/camel-aws/camel-aws2-s3/src/generated/resources/META-INF/org/apache/camel/dev-console/aws2-s3.json +++ b/components/camel-aws/camel-aws2-s3/src/generated/resources/META-INF/org/apache/camel/dev-console/aws2-s3.json @@ -6,6 +6,7 @@ "title": "AWS S3", "description": "AWS S3 Consumer", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.component.aws2.s3.AWS2S3Console", "groupId": "org.apache.camel", "artifactId": "camel-aws2-s3", diff --git a/components/camel-azure/camel-azure-key-vault/src/generated/resources/META-INF/org/apache/camel/dev-console/azure-secrets.json b/components/camel-azure/camel-azure-key-vault/src/generated/resources/META-INF/org/apache/camel/dev-console/azure-secrets.json index 628682ac5f97..a5054e19e5c4 100644 --- a/components/camel-azure/camel-azure-key-vault/src/generated/resources/META-INF/org/apache/camel/dev-console/azure-secrets.json +++ b/components/camel-azure/camel-azure-key-vault/src/generated/resources/META-INF/org/apache/camel/dev-console/azure-secrets.json @@ -6,6 +6,7 @@ "title": "Azure Key Vault Secrets", "description": "Azure Key Vault Secret Manager", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.component.azure.key.vault.AzureKeyVaultManagerDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-azure-key-vault", diff --git a/components/camel-diagram/src/generated/resources/META-INF/org/apache/camel/dev-console/route-diagram.json b/components/camel-diagram/src/generated/resources/META-INF/org/apache/camel/dev-console/route-diagram.json index 8b826a92455e..ead0c381c918 100644 --- a/components/camel-diagram/src/generated/resources/META-INF/org/apache/camel/dev-console/route-diagram.json +++ b/components/camel-diagram/src/generated/resources/META-INF/org/apache/camel/dev-console/route-diagram.json @@ -6,6 +6,7 @@ "title": "Route Diagram", "description": "Visual route diagrams", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.diagram.DiagramDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-diagram", diff --git a/components/camel-ftp/src/generated/resources/META-INF/org/apache/camel/dev-console/sftp.json b/components/camel-ftp/src/generated/resources/META-INF/org/apache/camel/dev-console/sftp.json index cba9575de6f1..655a877681b5 100644 --- a/components/camel-ftp/src/generated/resources/META-INF/org/apache/camel/dev-console/sftp.json +++ b/components/camel-ftp/src/generated/resources/META-INF/org/apache/camel/dev-console/sftp.json @@ -6,6 +6,7 @@ "title": "SFTP", "description": "Secure FTP using JSCH", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.component.file.remote.SftpDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-ftp", diff --git a/components/camel-google/camel-google-secret-manager/src/generated/resources/META-INF/org/apache/camel/dev-console/gcp-secrets.json b/components/camel-google/camel-google-secret-manager/src/generated/resources/META-INF/org/apache/camel/dev-console/gcp-secrets.json index 2db63f44d2db..6c705b200b9d 100644 --- a/components/camel-google/camel-google-secret-manager/src/generated/resources/META-INF/org/apache/camel/dev-console/gcp-secrets.json +++ b/components/camel-google/camel-google-secret-manager/src/generated/resources/META-INF/org/apache/camel/dev-console/gcp-secrets.json @@ -6,6 +6,7 @@ "title": "GCP Secrets", "description": "GCP Secret Manager", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.component.google.secret.manager.GoogleSecretManagerDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-google-secret-manager", diff --git a/components/camel-groovy/src/generated/resources/META-INF/org/apache/camel/dev-console/groovy.json b/components/camel-groovy/src/generated/resources/META-INF/org/apache/camel/dev-console/groovy.json index 513ef16d49cc..078f567341ee 100644 --- a/components/camel-groovy/src/generated/resources/META-INF/org/apache/camel/dev-console/groovy.json +++ b/components/camel-groovy/src/generated/resources/META-INF/org/apache/camel/dev-console/groovy.json @@ -6,6 +6,7 @@ "title": "Groovy", "description": "Groovy Language", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.language.groovy.GroovyDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-groovy", diff --git a/components/camel-hashicorp-vault/src/generated/resources/META-INF/org/apache/camel/dev-console/hashicorp-secrets.json b/components/camel-hashicorp-vault/src/generated/resources/META-INF/org/apache/camel/dev-console/hashicorp-secrets.json index 47e2800607a0..bc159fc67b39 100644 --- a/components/camel-hashicorp-vault/src/generated/resources/META-INF/org/apache/camel/dev-console/hashicorp-secrets.json +++ b/components/camel-hashicorp-vault/src/generated/resources/META-INF/org/apache/camel/dev-console/hashicorp-secrets.json @@ -6,6 +6,7 @@ "title": "HashiCorp Secrets", "description": "HashiCorp Vault Secrets", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.component.hashicorp.vault.SecretsDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-hashicorp-vault", diff --git a/components/camel-ibm/camel-ibm-secrets-manager/src/generated/resources/META-INF/org/apache/camel/dev-console/ibm-secrets.json b/components/camel-ibm/camel-ibm-secrets-manager/src/generated/resources/META-INF/org/apache/camel/dev-console/ibm-secrets.json index 33a3d8558138..5235512e6bbf 100644 --- a/components/camel-ibm/camel-ibm-secrets-manager/src/generated/resources/META-INF/org/apache/camel/dev-console/ibm-secrets.json +++ b/components/camel-ibm/camel-ibm-secrets-manager/src/generated/resources/META-INF/org/apache/camel/dev-console/ibm-secrets.json @@ -6,6 +6,7 @@ "title": "IBM Secrets", "description": "IBM Secrets Manager", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.component.ibm.secrets.manager.SecretsDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-ibm-secrets-manager", diff --git a/components/camel-jfr/src/generated/resources/META-INF/org/apache/camel/dev-console/jfr.json b/components/camel-jfr/src/generated/resources/META-INF/org/apache/camel/dev-console/jfr.json index 8fc43cff3864..fddf05f6a74b 100644 --- a/components/camel-jfr/src/generated/resources/META-INF/org/apache/camel/dev-console/jfr.json +++ b/components/camel-jfr/src/generated/resources/META-INF/org/apache/camel/dev-console/jfr.json @@ -6,6 +6,7 @@ "title": "JFR Runtime Instrumentation", "description": "Status and live control of camel-jfr runtime instrumentation", "deprecated": false, + "readOnly": false, "javaType": "org.apache.camel.runtime.jfr.CamelJfrDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-jfr", diff --git a/components/camel-jfr/src/main/java/org/apache/camel/runtime/jfr/CamelJfrDevConsole.java b/components/camel-jfr/src/main/java/org/apache/camel/runtime/jfr/CamelJfrDevConsole.java index 7b57a2cdc4ef..8dff129be7a7 100644 --- a/components/camel-jfr/src/main/java/org/apache/camel/runtime/jfr/CamelJfrDevConsole.java +++ b/components/camel-jfr/src/main/java/org/apache/camel/runtime/jfr/CamelJfrDevConsole.java @@ -49,7 +49,7 @@ import org.apache.camel.util.json.JsonObject; * @since 4.22 */ @DevConsole(name = "jfr", displayName = "JFR Runtime Instrumentation", - description = "Status and live control of camel-jfr runtime instrumentation") + description = "Status and live control of camel-jfr runtime instrumentation", readOnly = false) public class CamelJfrDevConsole extends AbstractDevConsole { @Metadata(label = "query", description = "Command to perform", javaType = "java.lang.String", @@ -83,11 +83,6 @@ public class CamelJfrDevConsole extends AbstractDevConsole { "Status and live control of camel-jfr runtime instrumentation"); } - @Override - public boolean isReadOnly() { - return false; - } - private boolean isInstrumentationRegistered() { CamelContext ctx = getCamelContext(); if (ctx == null) { diff --git a/components/camel-kafka/src/generated/resources/META-INF/org/apache/camel/dev-console/kafka.json b/components/camel-kafka/src/generated/resources/META-INF/org/apache/camel/dev-console/kafka.json index d00ed37bbd02..a62ec0cceef8 100644 --- a/components/camel-kafka/src/generated/resources/META-INF/org/apache/camel/dev-console/kafka.json +++ b/components/camel-kafka/src/generated/resources/META-INF/org/apache/camel/dev-console/kafka.json @@ -6,6 +6,7 @@ "title": "Kafka", "description": "Apache Kafka", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.component.kafka.KafkaDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-kafka", diff --git a/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/dev-console/kubernetes-configmaps.json b/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/dev-console/kubernetes-configmaps.json index a6aad11d4626..56d3db2e6a1d 100644 --- a/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/dev-console/kubernetes-configmaps.json +++ b/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/dev-console/kubernetes-configmaps.json @@ -6,6 +6,7 @@ "title": "Kubernetes Config Maps", "description": "Kubernetes Cluster Config Maps", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.component.kubernetes.config_maps.vault.ConfigmapsDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-kubernetes", diff --git a/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/dev-console/kubernetes-secrets.json b/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/dev-console/kubernetes-secrets.json index 6c054feee0c0..9bffab3a5997 100644 --- a/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/dev-console/kubernetes-secrets.json +++ b/components/camel-kubernetes/src/generated/resources/META-INF/org/apache/camel/dev-console/kubernetes-secrets.json @@ -6,6 +6,7 @@ "title": "Kubernetes Secrets", "description": "Kubernetes Cluster Secrets", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.component.kubernetes.secrets.vault.SecretsDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-kubernetes", diff --git a/components/camel-micrometer/src/generated/resources/META-INF/org/apache/camel/dev-console/micrometer.json b/components/camel-micrometer/src/generated/resources/META-INF/org/apache/camel/dev-console/micrometer.json index cf7ccb455e6c..1b7f0790f5a9 100644 --- a/components/camel-micrometer/src/generated/resources/META-INF/org/apache/camel/dev-console/micrometer.json +++ b/components/camel-micrometer/src/generated/resources/META-INF/org/apache/camel/dev-console/micrometer.json @@ -6,6 +6,7 @@ "title": "Micrometer", "description": "Display runtime metrics", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.component.micrometer.MicrometerConsole", "groupId": "org.apache.camel", "artifactId": "camel-micrometer", diff --git a/components/camel-microprofile/camel-microprofile-fault-tolerance/src/generated/resources/META-INF/org/apache/camel/dev-console/fault-tolerance.json b/components/camel-microprofile/camel-microprofile-fault-tolerance/src/generated/resources/META-INF/org/apache/camel/dev-console/fault-tolerance.json index a0f18c4e1045..86d20f11be29 100644 --- a/components/camel-microprofile/camel-microprofile-fault-tolerance/src/generated/resources/META-INF/org/apache/camel/dev-console/fault-tolerance.json +++ b/components/camel-microprofile/camel-microprofile-fault-tolerance/src/generated/resources/META-INF/org/apache/camel/dev-console/fault-tolerance.json @@ -6,6 +6,7 @@ "title": "MicroProfile Circuit Breaker", "description": "Display circuit breaker information", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.component.microprofile.faulttolerance.FaultToleranceConsole", "groupId": "org.apache.camel", "artifactId": "camel-microprofile-fault-tolerance", diff --git a/components/camel-opentelemetry2/src/generated/resources/META-INF/org/apache/camel/dev-console/opentelemetry.json b/components/camel-opentelemetry2/src/generated/resources/META-INF/org/apache/camel/dev-console/opentelemetry.json index 2ad91bca36e1..f1825f1e26a8 100644 --- a/components/camel-opentelemetry2/src/generated/resources/META-INF/org/apache/camel/dev-console/opentelemetry.json +++ b/components/camel-opentelemetry2/src/generated/resources/META-INF/org/apache/camel/dev-console/opentelemetry.json @@ -6,6 +6,7 @@ "title": "OpenTelemetry Spans", "description": "OpenTelemetry span data captured in dev mode", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.opentelemetry2.OpenTelemetryDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-opentelemetry2", diff --git a/components/camel-platform-http-main/src/generated/resources/META-INF/org/apache/camel/dev-console/main-http-server.json b/components/camel-platform-http-main/src/generated/resources/META-INF/org/apache/camel/dev-console/main-http-server.json index c472ad472389..2a601f4e1a6e 100644 --- a/components/camel-platform-http-main/src/generated/resources/META-INF/org/apache/camel/dev-console/main-http-server.json +++ b/components/camel-platform-http-main/src/generated/resources/META-INF/org/apache/camel/dev-console/main-http-server.json @@ -6,6 +6,7 @@ "title": "Main HTTP Server", "description": "Camel Main HTTP Server", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.component.platform.http.main.MainHttpServerDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-platform-http-main", diff --git a/components/camel-platform-http/src/generated/resources/META-INF/org/apache/camel/dev-console/platform-http.json b/components/camel-platform-http/src/generated/resources/META-INF/org/apache/camel/dev-console/platform-http.json index d07aecc32730..373be8a7e29b 100644 --- a/components/camel-platform-http/src/generated/resources/META-INF/org/apache/camel/dev-console/platform-http.json +++ b/components/camel-platform-http/src/generated/resources/META-INF/org/apache/camel/dev-console/platform-http.json @@ -6,6 +6,7 @@ "title": "Platform HTTP", "description": "Embedded HTTP Server", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.component.platform.http.PlatformHttpConsole", "groupId": "org.apache.camel", "artifactId": "camel-platform-http", diff --git a/components/camel-quartz/src/generated/resources/META-INF/org/apache/camel/dev-console/quartz.json b/components/camel-quartz/src/generated/resources/META-INF/org/apache/camel/dev-console/quartz.json index f97ae20916f6..d2d4c1561783 100644 --- a/components/camel-quartz/src/generated/resources/META-INF/org/apache/camel/dev-console/quartz.json +++ b/components/camel-quartz/src/generated/resources/META-INF/org/apache/camel/dev-console/quartz.json @@ -6,6 +6,7 @@ "title": "Quartz", "description": "Quartz Scheduler", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.component.quartz.QuartzConsole", "groupId": "org.apache.camel", "artifactId": "camel-quartz", diff --git a/components/camel-resilience4j/src/generated/resources/META-INF/org/apache/camel/dev-console/resilience4j.json b/components/camel-resilience4j/src/generated/resources/META-INF/org/apache/camel/dev-console/resilience4j.json index 5ed2e3cccfb2..e0abe6cb770d 100644 --- a/components/camel-resilience4j/src/generated/resources/META-INF/org/apache/camel/dev-console/resilience4j.json +++ b/components/camel-resilience4j/src/generated/resources/META-INF/org/apache/camel/dev-console/resilience4j.json @@ -6,6 +6,7 @@ "title": "Resilience Circuit Breaker", "description": "Display circuit breaker information", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.component.resilience4j.ResilienceConsole", "groupId": "org.apache.camel", "artifactId": "camel-resilience4j", diff --git a/components/camel-stub/src/generated/resources/META-INF/org/apache/camel/dev-console/stub.json b/components/camel-stub/src/generated/resources/META-INF/org/apache/camel/dev-console/stub.json index 549225c95dcd..82a20938adb1 100644 --- a/components/camel-stub/src/generated/resources/META-INF/org/apache/camel/dev-console/stub.json +++ b/components/camel-stub/src/generated/resources/META-INF/org/apache/camel/dev-console/stub.json @@ -6,6 +6,7 @@ "title": "Stub", "description": "Browse messages on stub endpoints", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.component.stub.StubConsole", "groupId": "org.apache.camel", "artifactId": "camel-stub", diff --git a/components/camel-vertx/camel-vertx-websocket/src/generated/resources/META-INF/org/apache/camel/dev-console/vertx-websocket.json b/components/camel-vertx/camel-vertx-websocket/src/generated/resources/META-INF/org/apache/camel/dev-console/vertx-websocket.json index a204e5a42b15..aab4753de9d6 100644 --- a/components/camel-vertx/camel-vertx-websocket/src/generated/resources/META-INF/org/apache/camel/dev-console/vertx-websocket.json +++ b/components/camel-vertx/camel-vertx-websocket/src/generated/resources/META-INF/org/apache/camel/dev-console/vertx-websocket.json @@ -6,6 +6,7 @@ "title": "Vert.x WebSocket", "description": "Vert.x WebSocket consumer details", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.component.vertx.websocket.VertxWebsocketDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-vertx-websocket", diff --git a/core/camel-api/src/generated/java/org/apache/camel/spi/annotations/DevConsole.java b/core/camel-api/src/generated/java/org/apache/camel/spi/annotations/DevConsole.java index 337360203da4..1f93908cac86 100644 --- a/core/camel-api/src/generated/java/org/apache/camel/spi/annotations/DevConsole.java +++ b/core/camel-api/src/generated/java/org/apache/camel/spi/annotations/DevConsole.java @@ -51,4 +51,12 @@ public @interface DevConsole { */ String description(); + /** + * Whether this console is read-only (safe, and does not change any runtime state). + * <p/> + * Consoles that mutate state (such as starting/stopping a route, sending a message, or triggering a heap dump) must + * set this to {@code false}. + */ + boolean readOnly() default true; + } diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/activity.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/activity.json index fd0b049476fd..7139adb66b3e 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/activity.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/activity.json @@ -6,6 +6,7 @@ "title": "Camel Activity", "description": "Recent completed exchange activity", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.ActivityDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/api.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/api.json index 815d84495893..9fa8ce489e4f 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/api.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/api.json @@ -6,6 +6,7 @@ "title": "API", "description": "OpenAPI specification for the dev console API", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.ApiDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/bean.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/bean.json index f281d19180be..379d778fcd71 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/bean.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/bean.json @@ -6,6 +6,7 @@ "title": "Bean", "description": "Displays Java beans from the registry", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.BeanDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/blocked.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/blocked.json index 47e637c0bc53..da11ffd63cae 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/blocked.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/blocked.json @@ -6,6 +6,7 @@ "title": "Blocked Exchanges", "description": "Display blocked exchanges", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.BlockedConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/browse.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/browse.json index 35d4431083cd..1baf361f8071 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/browse.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/browse.json @@ -6,6 +6,7 @@ "title": "Browse", "description": "Browse pending messages on Camel components", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.BrowseDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/circuit-breaker.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/circuit-breaker.json index 2c735d14513a..5426d9653234 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/circuit-breaker.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/circuit-breaker.json @@ -6,6 +6,7 @@ "title": "Circuit Breaker", "description": "Display circuit breaker information", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.CircuitBreakerDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/consumer.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/consumer.json index e5aa0f91d75c..b846c934a55f 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/consumer.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/consumer.json @@ -6,6 +6,7 @@ "title": "Consumers", "description": "Display information about Camel consumers", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.ConsumerDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/context.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/context.json index b55bdbc2c90e..aa9c21003630 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/context.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/context.json @@ -6,6 +6,7 @@ "title": "CamelContext", "description": "Overall information about the CamelContext", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.ContextDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/datasource.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/datasource.json index ac0e5983d0ea..2ac439d18181 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/datasource.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/datasource.json @@ -6,6 +6,7 @@ "title": "DataSource", "description": "Displays DataSource connection pool metrics", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.DataSourceDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/debug.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/debug.json index 92eab4e852a8..04b95b63dd64 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/debug.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/debug.json @@ -6,6 +6,7 @@ "title": "Debug", "description": "Camel route debugger", "deprecated": false, + "readOnly": false, "javaType": "org.apache.camel.impl.console.DebugDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/endpoint.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/endpoint.json index 4e2f6e662a06..a8b4fb61bd92 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/endpoint.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/endpoint.json @@ -6,6 +6,7 @@ "title": "Endpoints", "description": "Endpoint Registry information", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.EndpointDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/errors.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/errors.json index 38d6d50322f6..1522e583d3ea 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/errors.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/errors.json @@ -6,6 +6,7 @@ "title": "Error Registry", "description": "Display captured routing errors", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.ErrorRegistryConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/eval-language.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/eval-language.json index 4f32f0a2c412..0086f1b21082 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/eval-language.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/eval-language.json @@ -6,6 +6,7 @@ "title": "Evaluate Language", "description": "Evaluate Language and display result", "deprecated": false, + "readOnly": false, "javaType": "org.apache.camel.impl.console.EvalLanguageDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/event.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/event.json index 28836520fd22..1fc4fbdce8eb 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/event.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/event.json @@ -6,6 +6,7 @@ "title": "Camel Events", "description": "The most recent Camel events", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.EventConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/gc.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/gc.json index 83df44fdfa99..66e21ec22064 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/gc.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/gc.json @@ -6,6 +6,7 @@ "title": "Garbage Collector", "description": "Displays Garbage Collector information", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.GarbageCollectorDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/health.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/health.json index 32bbfc1c5c04..e5083a15e3e5 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/health.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/health.json @@ -6,6 +6,7 @@ "title": "Health Check", "description": "Health Check Status", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.HealthDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/heap-dump.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/heap-dump.json index a430cc1420ee..781c565a9d80 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/heap-dump.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/heap-dump.json @@ -6,6 +6,7 @@ "title": "Heap Dump", "description": "Write a heap dump (.hprof) file for deep memory analysis", "deprecated": false, + "readOnly": false, "javaType": "org.apache.camel.impl.console.HeapDumpDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/heap-histogram.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/heap-histogram.json index 2353f33b9456..69148a67e464 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/heap-histogram.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/heap-histogram.json @@ -6,6 +6,7 @@ "title": "Heap Histogram", "description": "Displays class-level heap memory usage", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.HeapHistogramDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/inflight.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/inflight.json index d40ea6b4a80e..b758445cf916 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/inflight.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/inflight.json @@ -6,6 +6,7 @@ "title": "Inflight Exchanges", "description": "Display inflight exchanges", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.InflightConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/internal-tasks.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/internal-tasks.json index 869038a890d6..0fb582f03c1e 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/internal-tasks.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/internal-tasks.json @@ -6,6 +6,7 @@ "title": "Internal Tasks", "description": "Display information about internal tasks", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.TaskRegistryDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/java-security.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/java-security.json index a26a922dfa11..c5877f34274c 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/java-security.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/java-security.json @@ -6,6 +6,7 @@ "title": "Java Security", "description": "Displays Java Security (JSSE) information", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.JavaSecurityDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/jfr-memory-leak.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/jfr-memory-leak.json index 9060eac5e162..d6dd0387587f 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/jfr-memory-leak.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/jfr-memory-leak.json @@ -6,6 +6,7 @@ "title": "JFR Memory Leak", "description": "JFR-based old object sampling for memory leak diagnosis", "deprecated": false, + "readOnly": false, "javaType": "org.apache.camel.impl.console.JfrMemoryLeakDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/jvm.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/jvm.json index 4d8cd2789763..c4d5d32567db 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/jvm.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/jvm.json @@ -6,6 +6,7 @@ "title": "JVM", "description": "Displays JVM information", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.JvmDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/log.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/log.json index 15bd74e81283..30f93775f196 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/log.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/log.json @@ -6,6 +6,7 @@ "title": "Log", "description": "Logging framework", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.LogDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/memory.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/memory.json index 9f7d8b403df7..0bd7215dde80 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/memory.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/memory.json @@ -6,6 +6,7 @@ "title": "JVM Memory", "description": "Displays JVM memory information", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.MemoryDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/message-history.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/message-history.json index e950b50cd95c..cb4f9e2a0fb6 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/message-history.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/message-history.json @@ -6,6 +6,7 @@ "title": "Message History", "description": "History of latest completed exchange", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.MessageHistoryDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/processor-detail.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/processor-detail.json index 8e22af1c1968..ebf8ce65ad2d 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/processor-detail.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/processor-detail.json @@ -6,6 +6,7 @@ "title": "Processor Detail", "description": "Show configured options for all processors in a route", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.ProcessorDetailDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/processor.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/processor.json index c92c77296a08..4187206fd03d 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/processor.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/processor.json @@ -6,6 +6,7 @@ "title": "Processor", "description": "Processor information", "deprecated": false, + "readOnly": false, "javaType": "org.apache.camel.impl.console.ProcessorDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/producer.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/producer.json index dbac98c57280..865f49fa969e 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/producer.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/producer.json @@ -6,6 +6,7 @@ "title": "Producers", "description": "Display information about Camel producers", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.ProducerDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/properties.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/properties.json index 8c661d342d80..8a70c7b3e1f6 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/properties.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/properties.json @@ -6,6 +6,7 @@ "title": "Properties", "description": "Displays the properties loaded by Camel", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.PropertiesDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/receive.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/receive.json index faa96aca845f..d6eef0033fb7 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/receive.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/receive.json @@ -6,6 +6,7 @@ "title": "Camel Receive", "description": "Consume messages from endpoints", "deprecated": false, + "readOnly": false, "javaType": "org.apache.camel.impl.console.ReceiveDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/reload.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/reload.json index 48b8737e0b16..9a9ac8798415 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/reload.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/reload.json @@ -6,6 +6,7 @@ "title": "Reload", "description": "Console for reloading running Camel", "deprecated": false, + "readOnly": false, "javaType": "org.apache.camel.impl.console.ReloadDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/rest-spec.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/rest-spec.json index 46ddad46dcc1..e9f5e8eaa235 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/rest-spec.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/rest-spec.json @@ -6,6 +6,7 @@ "title": "Rest Spec", "description": "OpenAPI specification content for contract-first REST services", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.RestSpecDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/rest.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/rest.json index 7d237debce0c..865442fdcdea 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/rest.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/rest.json @@ -6,6 +6,7 @@ "title": "Rest", "description": "Rest DSL Registry information", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.RestDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/route-controller.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/route-controller.json index 986252e5ca52..2e26709b7178 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/route-controller.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/route-controller.json @@ -6,6 +6,7 @@ "title": "Route Controller", "description": "Route controller information", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.RouteControllerConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/route-dump.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/route-dump.json index 3795188ace1a..b456dd2bcfa1 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/route-dump.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/route-dump.json @@ -6,6 +6,7 @@ "title": "Route Dump", "description": "Dump route in XML, YAML, or Java DSL format", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.RouteDumpDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/route-group.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/route-group.json index c2fd5b8c8502..385cdd8cd957 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/route-group.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/route-group.json @@ -6,6 +6,7 @@ "title": "Route Group", "description": "Route Group information", "deprecated": false, + "readOnly": false, "javaType": "org.apache.camel.impl.console.RouteGroupDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/route-structure.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/route-structure.json index cad3cda9403f..ea33d5983a20 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/route-structure.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/route-structure.json @@ -6,6 +6,7 @@ "title": "Route Structure", "description": "Dump route structure", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.RouteStructureDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/route-topology.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/route-topology.json index 2a5a27807324..7986ba7bddbf 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/route-topology.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/route-topology.json @@ -6,6 +6,7 @@ "title": "Route Topology", "description": "Route topology showing inter-route connections", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.RouteTopologyDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/route.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/route.json index 36f75cd52f6d..555a1a0dd5c1 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/route.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/route.json @@ -6,6 +6,7 @@ "title": "Route", "description": "Route information", "deprecated": false, + "readOnly": false, "javaType": "org.apache.camel.impl.console.RouteDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/send.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/send.json index a15a608be3f5..0900fa44626c 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/send.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/send.json @@ -6,6 +6,7 @@ "title": "Camel Send", "description": "Send messages to endpoints", "deprecated": false, + "readOnly": false, "javaType": "org.apache.camel.impl.console.SendDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/service.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/service.json index 33138f8dd4c9..b56cf0641d0c 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/service.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/service.json @@ -6,6 +6,7 @@ "title": "Services", "description": "Services used for network communication with clients", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.ServiceDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/simple-language.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/simple-language.json index 07ebd2626447..3c84e7ff2202 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/simple-language.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/simple-language.json @@ -6,6 +6,7 @@ "title": "Simple Language", "description": "Display simple language details", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.SimpleLanguageDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/source.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/source.json index b641917712e6..824a1f09535b 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/source.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/source.json @@ -6,6 +6,7 @@ "title": "Source", "description": "Dump route source code", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.SourceDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/sql-query.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/sql-query.json index bde872c3cde3..131e314fd5b8 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/sql-query.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/sql-query.json @@ -6,6 +6,7 @@ "title": "SQL Query", "description": "Execute SQL queries on DataSource beans", "deprecated": false, + "readOnly": false, "javaType": "org.apache.camel.impl.console.SqlQueryDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/sql-trace.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/sql-trace.json index 43ee6575ec41..1b2c4a040bfd 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/sql-trace.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/sql-trace.json @@ -6,6 +6,7 @@ "title": "SQL Trace", "description": "Trace SQL query executions", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.SqlTraceDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/startup-recorder.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/startup-recorder.json index 83bbb40681e9..b258f1962d36 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/startup-recorder.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/startup-recorder.json @@ -6,6 +6,7 @@ "title": "Startup Recorder", "description": "Starting recording information", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.StartupRecorderDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/system-properties.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/system-properties.json index 972f953ae340..d8f996856e7e 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/system-properties.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/system-properties.json @@ -6,6 +6,7 @@ "title": "System Properties", "description": "Displays Java System Properties", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.SystemPropertiesDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/thread.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/thread.json index 4b9008704da5..7ef081e60cf5 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/thread.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/thread.json @@ -6,6 +6,7 @@ "title": "Thread", "description": "Displays JVM Threads information", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.ThreadDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/top.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/top.json index f6d95b92dd95..58e79ae88399 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/top.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/top.json @@ -6,6 +6,7 @@ "title": "Top Routes", "description": "Display the top routes", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.TopDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/trace.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/trace.json index e9814d31eb7a..9edb3eca5601 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/trace.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/trace.json @@ -6,6 +6,7 @@ "title": "Camel Tracing", "description": "Trace routed messages", "deprecated": false, + "readOnly": false, "javaType": "org.apache.camel.impl.console.TraceDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/transformers.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/transformers.json index fae346548208..e5490278b2fe 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/transformers.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/transformers.json @@ -6,6 +6,7 @@ "title": "Data Type Transformers", "description": "Data-type transformer information", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.TransformerConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/type-converters.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/type-converters.json index fbc09620bc17..45f5ea1da158 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/type-converters.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/type-converters.json @@ -6,6 +6,7 @@ "title": "Type Converters", "description": "Camel Type Converter information", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.TypeConverterConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/variables.json b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/variables.json index d73b94b813c7..0f2c9c059fa8 100644 --- a/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/variables.json +++ b/core/camel-console/src/generated/resources/META-INF/org/apache/camel/dev-console/variables.json @@ -6,6 +6,7 @@ "title": "Variables", "description": "Displays variables", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.impl.console.VariablesDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-console", diff --git a/core/camel-console/src/main/java/org/apache/camel/impl/console/DebugDevConsole.java b/core/camel-console/src/main/java/org/apache/camel/impl/console/DebugDevConsole.java index decaa2f7e681..1d726e7d911f 100644 --- a/core/camel-console/src/main/java/org/apache/camel/impl/console/DebugDevConsole.java +++ b/core/camel-console/src/main/java/org/apache/camel/impl/console/DebugDevConsole.java @@ -41,7 +41,7 @@ import org.apache.camel.util.json.JsonArray; import org.apache.camel.util.json.JsonObject; import org.apache.camel.util.json.Jsoner; -@DevConsole(name = "debug", description = "Camel route debugger") +@DevConsole(name = "debug", description = "Camel route debugger", readOnly = false) public class DebugDevConsole extends AbstractDevConsole { @Metadata(label = "query", description = "Action command to execute on the debugger", javaType = "java.lang.String") @@ -61,11 +61,6 @@ public class DebugDevConsole extends AbstractDevConsole { super("camel", "debug", "Debug", "Camel route debugger"); } - @Override - public boolean isReadOnly() { - return false; - } - @Override protected String doCallText(Map<String, Object> options) { String command = optionString(options, COMMAND); diff --git a/core/camel-console/src/main/java/org/apache/camel/impl/console/EvalLanguageDevConsole.java b/core/camel-console/src/main/java/org/apache/camel/impl/console/EvalLanguageDevConsole.java index aed61a0f7e2d..0dd14f26f844 100644 --- a/core/camel-console/src/main/java/org/apache/camel/impl/console/EvalLanguageDevConsole.java +++ b/core/camel-console/src/main/java/org/apache/camel/impl/console/EvalLanguageDevConsole.java @@ -28,7 +28,8 @@ import org.apache.camel.support.MessageHelper; import org.apache.camel.support.console.AbstractDevConsole; import org.apache.camel.util.json.JsonObject; -@DevConsole(name = "eval-language", displayName = "Evaluate Language", description = "Evaluate Language and display result") +@DevConsole(name = "eval-language", displayName = "Evaluate Language", description = "Evaluate Language and display result", + readOnly = false) public class EvalLanguageDevConsole extends AbstractDevConsole { @Metadata(label = "query", description = "The language to use", javaType = "java.lang.String", defaultValue = "simple") @@ -55,11 +56,6 @@ public class EvalLanguageDevConsole extends AbstractDevConsole { super("camel", "eval-language", "Evaluate Language", "Evaluate Language and display result"); } - @Override - public boolean isReadOnly() { - return false; - } - @Override protected String doCallText(Map<String, Object> options) { StringBuilder sb = new StringBuilder(); diff --git a/core/camel-console/src/main/java/org/apache/camel/impl/console/HeapDumpDevConsole.java b/core/camel-console/src/main/java/org/apache/camel/impl/console/HeapDumpDevConsole.java index 5f208ba50b7d..9280c7a397a3 100644 --- a/core/camel-console/src/main/java/org/apache/camel/impl/console/HeapDumpDevConsole.java +++ b/core/camel-console/src/main/java/org/apache/camel/impl/console/HeapDumpDevConsole.java @@ -33,7 +33,7 @@ import org.apache.camel.support.console.AbstractDevConsole; import org.apache.camel.util.json.JsonObject; @DevConsole(name = "heap-dump", displayName = "Heap Dump", - description = "Write a heap dump (.hprof) file for deep memory analysis") + description = "Write a heap dump (.hprof) file for deep memory analysis", readOnly = false) @Configurer(extended = true) public class HeapDumpDevConsole extends AbstractDevConsole { @@ -51,11 +51,6 @@ public class HeapDumpDevConsole extends AbstractDevConsole { super("jvm", "heap-dump", "Heap Dump", "Write a heap dump (.hprof) file for deep memory analysis"); } - @Override - public boolean isReadOnly() { - return false; - } - @Override protected String doCallText(Map<String, Object> options) { JsonObject json = doCallJson(options); diff --git a/core/camel-console/src/main/java/org/apache/camel/impl/console/JfrMemoryLeakDevConsole.java b/core/camel-console/src/main/java/org/apache/camel/impl/console/JfrMemoryLeakDevConsole.java index 1ebdcdcbb319..0c8ffc94c33a 100644 --- a/core/camel-console/src/main/java/org/apache/camel/impl/console/JfrMemoryLeakDevConsole.java +++ b/core/camel-console/src/main/java/org/apache/camel/impl/console/JfrMemoryLeakDevConsole.java @@ -52,7 +52,7 @@ import org.slf4j.LoggerFactory; * chains back to GC roots, enabling memory leak diagnosis. */ @DevConsole(name = "jfr-memory-leak", displayName = "JFR Memory Leak", - description = "JFR-based old object sampling for memory leak diagnosis") + description = "JFR-based old object sampling for memory leak diagnosis", readOnly = false) @Configurer(extended = true) public class JfrMemoryLeakDevConsole extends AbstractDevConsole { @@ -99,11 +99,6 @@ public class JfrMemoryLeakDevConsole extends AbstractDevConsole { "JFR-based old object sampling for memory leak diagnosis"); } - @Override - public boolean isReadOnly() { - return false; - } - @Override protected String doCallText(Map<String, Object> options) { JsonObject json = doCallJson(options); diff --git a/core/camel-console/src/main/java/org/apache/camel/impl/console/ProcessorDevConsole.java b/core/camel-console/src/main/java/org/apache/camel/impl/console/ProcessorDevConsole.java index dd830b513a8a..f65f956013eb 100644 --- a/core/camel-console/src/main/java/org/apache/camel/impl/console/ProcessorDevConsole.java +++ b/core/camel-console/src/main/java/org/apache/camel/impl/console/ProcessorDevConsole.java @@ -42,7 +42,7 @@ import org.apache.camel.util.json.Jsoner; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -@DevConsole(name = "processor", description = "Processor information") +@DevConsole(name = "processor", description = "Processor information", readOnly = false) public class ProcessorDevConsole extends AbstractDevConsole { private static final Logger LOG = LoggerFactory.getLogger(ProcessorDevConsole.class); @@ -64,11 +64,6 @@ public class ProcessorDevConsole extends AbstractDevConsole { super("camel", "processor", "Processor", "Processor information"); } - @Override - public boolean isReadOnly() { - return false; - } - @Override protected String doCallText(Map<String, Object> options) { String action = optionString(options, ACTION); diff --git a/core/camel-console/src/main/java/org/apache/camel/impl/console/ReceiveDevConsole.java b/core/camel-console/src/main/java/org/apache/camel/impl/console/ReceiveDevConsole.java index 32d935674459..776f836041ab 100644 --- a/core/camel-console/src/main/java/org/apache/camel/impl/console/ReceiveDevConsole.java +++ b/core/camel-console/src/main/java/org/apache/camel/impl/console/ReceiveDevConsole.java @@ -47,7 +47,8 @@ import org.apache.camel.util.json.JsonArray; import org.apache.camel.util.json.JsonObject; import org.apache.camel.util.json.Jsoner; -@DevConsole(name = "receive", displayName = "Camel Receive", description = "Consume messages from endpoints") +@DevConsole(name = "receive", displayName = "Camel Receive", description = "Consume messages from endpoints", + readOnly = false) @Configurer(extended = true) public class ReceiveDevConsole extends AbstractDevConsole { @@ -85,11 +86,6 @@ public class ReceiveDevConsole extends AbstractDevConsole { super("camel", "receive", "Camel Receive", "Consume messages from endpoints"); } - @Override - public boolean isReadOnly() { - return false; - } - public int getCapacity() { return capacity; } diff --git a/core/camel-console/src/main/java/org/apache/camel/impl/console/ReloadDevConsole.java b/core/camel-console/src/main/java/org/apache/camel/impl/console/ReloadDevConsole.java index 582badf694e2..995226c32eb1 100644 --- a/core/camel-console/src/main/java/org/apache/camel/impl/console/ReloadDevConsole.java +++ b/core/camel-console/src/main/java/org/apache/camel/impl/console/ReloadDevConsole.java @@ -31,7 +31,7 @@ import org.apache.camel.support.console.AbstractDevConsole; import org.apache.camel.util.json.JsonArray; import org.apache.camel.util.json.JsonObject; -@DevConsole(name = "reload", description = "Console for reloading running Camel") +@DevConsole(name = "reload", description = "Console for reloading running Camel", readOnly = false) public class ReloadDevConsole extends AbstractDevConsole { @Metadata(label = "query", description = "Option to trigger reloading", javaType = "java.lang.Boolean", @@ -49,11 +49,6 @@ public class ReloadDevConsole extends AbstractDevConsole { super("camel", "reload", "Reload", "Console for reloading running Camel"); } - @Override - public boolean isReadOnly() { - return false; - } - protected String doCallText(Map<String, Object> options) { boolean trigger = optionBoolean(options, RELOAD, false); boolean wait = optionBoolean(options, RELOAD_WAIT, false); diff --git a/core/camel-console/src/main/java/org/apache/camel/impl/console/RouteDevConsole.java b/core/camel-console/src/main/java/org/apache/camel/impl/console/RouteDevConsole.java index 826b1a8514f4..62fe9db3d0fc 100644 --- a/core/camel-console/src/main/java/org/apache/camel/impl/console/RouteDevConsole.java +++ b/core/camel-console/src/main/java/org/apache/camel/impl/console/RouteDevConsole.java @@ -45,7 +45,7 @@ import org.apache.camel.util.json.JsonObject; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -@DevConsole(name = "route", description = "Route information") +@DevConsole(name = "route", description = "Route information", readOnly = false) public class RouteDevConsole extends AbstractDevConsole { private static final Logger LOG = LoggerFactory.getLogger(RouteDevConsole.class); @@ -70,11 +70,6 @@ public class RouteDevConsole extends AbstractDevConsole { super("camel", "route", "Route", "Route information"); } - @Override - public boolean isReadOnly() { - return false; - } - @Override protected String doCallText(Map<String, Object> options) { String action = optionString(options, ACTION); diff --git a/core/camel-console/src/main/java/org/apache/camel/impl/console/RouteGroupDevConsole.java b/core/camel-console/src/main/java/org/apache/camel/impl/console/RouteGroupDevConsole.java index b05e1de71819..5c0180d9ce34 100644 --- a/core/camel-console/src/main/java/org/apache/camel/impl/console/RouteGroupDevConsole.java +++ b/core/camel-console/src/main/java/org/apache/camel/impl/console/RouteGroupDevConsole.java @@ -43,7 +43,7 @@ import org.apache.camel.util.json.JsonObject; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -@DevConsole(name = "route-group", description = "Route Group information") +@DevConsole(name = "route-group", description = "Route Group information", readOnly = false) public class RouteGroupDevConsole extends AbstractDevConsole { private static final Logger LOG = LoggerFactory.getLogger(RouteGroupDevConsole.class); @@ -62,11 +62,6 @@ public class RouteGroupDevConsole extends AbstractDevConsole { super("camel", "route-group", "Route Group", "Route Group information"); } - @Override - public boolean isReadOnly() { - return false; - } - @Override protected String doCallText(Map<String, Object> options) { String action = optionString(options, ACTION); diff --git a/core/camel-console/src/main/java/org/apache/camel/impl/console/SendDevConsole.java b/core/camel-console/src/main/java/org/apache/camel/impl/console/SendDevConsole.java index c75f6b9db08b..d9aeeaa1ffce 100644 --- a/core/camel-console/src/main/java/org/apache/camel/impl/console/SendDevConsole.java +++ b/core/camel-console/src/main/java/org/apache/camel/impl/console/SendDevConsole.java @@ -43,7 +43,7 @@ import org.apache.camel.util.StopWatch; import org.apache.camel.util.TimeUtils; import org.apache.camel.util.json.JsonObject; -@DevConsole(name = "send", displayName = "Camel Send", description = "Send messages to endpoints") +@DevConsole(name = "send", displayName = "Camel Send", description = "Send messages to endpoints", readOnly = false) @Configurer(extended = true) public class SendDevConsole extends AbstractDevConsole { @@ -87,11 +87,6 @@ public class SendDevConsole extends AbstractDevConsole { super("camel", "send", "Camel Send", "Send messages to endpoints"); } - @Override - public boolean isReadOnly() { - return false; - } - @Override protected void doInit() throws Exception { super.doInit(); diff --git a/core/camel-console/src/main/java/org/apache/camel/impl/console/SqlQueryDevConsole.java b/core/camel-console/src/main/java/org/apache/camel/impl/console/SqlQueryDevConsole.java index 1b92020f9021..1a6ba861c709 100644 --- a/core/camel-console/src/main/java/org/apache/camel/impl/console/SqlQueryDevConsole.java +++ b/core/camel-console/src/main/java/org/apache/camel/impl/console/SqlQueryDevConsole.java @@ -40,7 +40,8 @@ import org.apache.camel.util.json.JsonArray; import org.apache.camel.util.json.JsonObject; import org.apache.camel.util.json.Jsoner; -@DevConsole(name = "sql-query", displayName = "SQL Query", description = "Execute SQL queries on DataSource beans") +@DevConsole(name = "sql-query", displayName = "SQL Query", description = "Execute SQL queries on DataSource beans", + readOnly = false) @Configurer(extended = true) public class SqlQueryDevConsole extends AbstractDevConsole { @@ -88,11 +89,6 @@ public class SqlQueryDevConsole extends AbstractDevConsole { super("camel", "sql-query", "SQL Query", "Execute SQL queries on DataSource beans"); } - @Override - public boolean isReadOnly() { - return false; - } - public int getDefaultMaxRows() { return defaultMaxRows; } diff --git a/core/camel-console/src/main/java/org/apache/camel/impl/console/TraceDevConsole.java b/core/camel-console/src/main/java/org/apache/camel/impl/console/TraceDevConsole.java index 7782ea4ed879..eb59c10534d3 100644 --- a/core/camel-console/src/main/java/org/apache/camel/impl/console/TraceDevConsole.java +++ b/core/camel-console/src/main/java/org/apache/camel/impl/console/TraceDevConsole.java @@ -29,7 +29,7 @@ import org.apache.camel.support.console.AbstractDevConsole; import org.apache.camel.util.json.JsonArray; import org.apache.camel.util.json.JsonObject; -@DevConsole(name = "trace", displayName = "Camel Tracing", description = "Trace routed messages") +@DevConsole(name = "trace", displayName = "Camel Tracing", description = "Trace routed messages", readOnly = false) @Configurer(extended = true) public class TraceDevConsole extends AbstractDevConsole { @@ -51,11 +51,6 @@ public class TraceDevConsole extends AbstractDevConsole { super("camel", "trace", "Camel Tracing", "Trace routed messages"); } - @Override - public boolean isReadOnly() { - return false; - } - public int getCapacity() { return capacity; } diff --git a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/dev-console/bean-model.json b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/dev-console/bean-model.json index 23840a6e83e8..6ee5e78ec5f2 100644 --- a/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/dev-console/bean-model.json +++ b/core/camel-core-model/src/generated/resources/META-INF/org/apache/camel/dev-console/bean-model.json @@ -6,6 +6,7 @@ "title": "Bean Model", "description": "Displays beans from the DSL model", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.model.console.BeanModelDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-core-model", diff --git a/core/camel-main/src/generated/resources/META-INF/org/apache/camel/dev-console/main-configuration.json b/core/camel-main/src/generated/resources/META-INF/org/apache/camel/dev-console/main-configuration.json index bcdda430dafb..35d1fc8dc0d1 100644 --- a/core/camel-main/src/generated/resources/META-INF/org/apache/camel/dev-console/main-configuration.json +++ b/core/camel-main/src/generated/resources/META-INF/org/apache/camel/dev-console/main-configuration.json @@ -6,6 +6,7 @@ "title": "Main Configuration", "description": "Display Camel startup configuration", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.main.MainConfigurationDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-main", diff --git a/core/camel-support/src/main/java/org/apache/camel/support/console/AbstractDevConsole.java b/core/camel-support/src/main/java/org/apache/camel/support/console/AbstractDevConsole.java index bfe752d92475..ce888aa9e7b0 100644 --- a/core/camel-support/src/main/java/org/apache/camel/support/console/AbstractDevConsole.java +++ b/core/camel-support/src/main/java/org/apache/camel/support/console/AbstractDevConsole.java @@ -61,6 +61,13 @@ public abstract class AbstractDevConsole extends ServiceSupport implements DevCo return true; } + @Override + public boolean isReadOnly() { + org.apache.camel.spi.annotations.DevConsole ann + = getClass().getAnnotation(org.apache.camel.spi.annotations.DevConsole.class); + return ann == null || ann.readOnly(); + } + @Override public String getGroup() { return group; diff --git a/dsl/camel-jbang/camel-jbang-console/src/generated/resources/META-INF/org/apache/camel/dev-console/jbang.json b/dsl/camel-jbang/camel-jbang-console/src/generated/resources/META-INF/org/apache/camel/dev-console/jbang.json index baaca0aeee09..616c7d091054 100644 --- a/dsl/camel-jbang/camel-jbang-console/src/generated/resources/META-INF/org/apache/camel/dev-console/jbang.json +++ b/dsl/camel-jbang/camel-jbang-console/src/generated/resources/META-INF/org/apache/camel/dev-console/jbang.json @@ -6,6 +6,7 @@ "title": "Camel CLI", "description": "Information about Camel CLI", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.jbang.console.JBangDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-jbang-console", diff --git a/dsl/camel-jbang/camel-jbang-console/src/generated/resources/META-INF/org/apache/camel/dev-console/source-dir.json b/dsl/camel-jbang/camel-jbang-console/src/generated/resources/META-INF/org/apache/camel/dev-console/source-dir.json index 492f7d07826b..f7e60cfb3684 100644 --- a/dsl/camel-jbang/camel-jbang-console/src/generated/resources/META-INF/org/apache/camel/dev-console/source-dir.json +++ b/dsl/camel-jbang/camel-jbang-console/src/generated/resources/META-INF/org/apache/camel/dev-console/source-dir.json @@ -6,6 +6,7 @@ "title": "Source Directory", "description": "Information about Camel CLI source files", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.jbang.console.SourceDirDevConsole", "groupId": "org.apache.camel", "artifactId": "camel-jbang-console", diff --git a/dsl/camel-kamelet-main/src/generated/resources/META-INF/org/apache/camel/dev-console/dependency-downloader.json b/dsl/camel-kamelet-main/src/generated/resources/META-INF/org/apache/camel/dev-console/dependency-downloader.json index b3ed8a6458e0..a9e68394e0d6 100644 --- a/dsl/camel-kamelet-main/src/generated/resources/META-INF/org/apache/camel/dev-console/dependency-downloader.json +++ b/dsl/camel-kamelet-main/src/generated/resources/META-INF/org/apache/camel/dev-console/dependency-downloader.json @@ -6,6 +6,7 @@ "title": "Maven Dependency Downloader", "description": "Displays information about dependencies downloaded at runtime", "deprecated": false, + "readOnly": true, "javaType": "org.apache.camel.main.console.DependencyDownloaderConsole", "groupId": "org.apache.camel", "artifactId": "camel-kamelet-main", diff --git a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/GenerateDevConsoleMojo.java b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/GenerateDevConsoleMojo.java index 8c3fa3d24bbf..2f2c0976b70b 100644 --- a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/GenerateDevConsoleMojo.java +++ b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/GenerateDevConsoleMojo.java @@ -83,6 +83,7 @@ public class GenerateDevConsoleMojo extends AbstractGeneratorMojo { private String displayName; private String description; private boolean deprecated; + private boolean readOnly = true; private final List<DevConsoleOptionModel> options = new ArrayList<>(); public String getClassName() { @@ -133,6 +134,14 @@ public class GenerateDevConsoleMojo extends AbstractGeneratorMojo { this.deprecated = deprecated; } + public boolean isReadOnly() { + return readOnly; + } + + public void setReadOnly(boolean readOnly) { + this.readOnly = readOnly; + } + public List<DevConsoleOptionModel> getOptions() { return options; } @@ -169,6 +178,7 @@ public class GenerateDevConsoleMojo extends AbstractGeneratorMojo { model.setName(annotationValue(a, "name")); model.setDisplayName(annotationValue(a, "displayName")); model.setDescription(annotationValue(a, "description")); + model.setReadOnly(!"false".equals(annotationValue(a, "readOnly"))); // skip default registry boolean skip = "default-registry".equals(model.getName()); if (!skip) { @@ -228,6 +238,7 @@ public class GenerateDevConsoleMojo extends AbstractGeneratorMojo { } jo.put("description", model.getDescription()); jo.put("deprecated", model.isDeprecated()); + jo.put("readOnly", model.isReadOnly()); jo.put("javaType", model.getClassName()); jo.put("groupId", project.getGroupId()); jo.put("artifactId", project.getArtifactId()); diff --git a/tooling/spi-annotations/src/main/java/org/apache/camel/spi/annotations/DevConsole.java b/tooling/spi-annotations/src/main/java/org/apache/camel/spi/annotations/DevConsole.java index 337360203da4..1f93908cac86 100644 --- a/tooling/spi-annotations/src/main/java/org/apache/camel/spi/annotations/DevConsole.java +++ b/tooling/spi-annotations/src/main/java/org/apache/camel/spi/annotations/DevConsole.java @@ -51,4 +51,12 @@ public @interface DevConsole { */ String description(); + /** + * Whether this console is read-only (safe, and does not change any runtime state). + * <p/> + * Consoles that mutate state (such as starting/stopping a route, sending a message, or triggering a heap dump) must + * set this to {@code false}. + */ + boolean readOnly() default true; + }
