This is an automated email from the ASF dual-hosted git repository. davsclaus pushed a commit to branch uc in repository https://gitbox.apache.org/repos/asf/camel.git
commit 5bb8cf190a0dd77f9e1c6ef6891ba5ff86808d64 Author: Claus Ibsen <claus.ib...@gmail.com> AuthorDate: Sat Jun 22 09:35:09 2024 +0200 CAMEL-20879: camel-core: remote vs local endpoints counters --- .../main/java/org/apache/camel/impl/console/ConsumerDevConsole.java | 4 ++++ .../main/java/org/apache/camel/impl/console/EndpointDevConsole.java | 5 +++-- .../org/apache/camel/api/management/mbean/ManagedConsumerMBean.java | 3 +++ .../org/apache/camel/api/management/mbean/ManagedEndpointMBean.java | 2 +- .../org/apache/camel/api/management/mbean/ManagedProducerMBean.java | 3 +++ .../main/java/org/apache/camel/management/mbean/ManagedConsumer.java | 5 +++++ .../main/java/org/apache/camel/management/mbean/ManagedProducer.java | 4 ++++ 7 files changed, 23 insertions(+), 3 deletions(-) diff --git a/core/camel-console/src/main/java/org/apache/camel/impl/console/ConsumerDevConsole.java b/core/camel-console/src/main/java/org/apache/camel/impl/console/ConsumerDevConsole.java index 858edf525a8..06d58c9a8fe 100644 --- a/core/camel-console/src/main/java/org/apache/camel/impl/console/ConsumerDevConsole.java +++ b/core/camel-console/src/main/java/org/apache/camel/impl/console/ConsumerDevConsole.java @@ -63,6 +63,8 @@ public class ConsumerDevConsole extends AbstractDevConsole { sb.append(String.format("\n Uri: %s", mc.getEndpointUri())); sb.append(String.format("\n State: %s", mc.getState())); sb.append(String.format("\n Class: %s", mc.getServiceType())); + sb.append(String.format("\n Remote: %b", mc.isRemoteEndpoint())); + sb.append(String.format("\n Hosted: %b", mc.isHostedService())); sb.append(String.format("\n Inflight: %d", inflight)); if (mcc instanceof ManagedSchedulePollConsumerMBean mpc) { sb.append(String.format("\n Polling: %s", mpc.isPolling())); @@ -150,6 +152,8 @@ public class ConsumerDevConsole extends AbstractDevConsole { jo.put("uri", mc.getEndpointUri()); jo.put("state", mc.getState()); jo.put("class", mc.getServiceType()); + jo.put("remote", mc.isRemoteEndpoint()); + jo.put("hosted", mc.isHostedService()); jo.put("inflight", inflight); jo.put("scheduled", false); if (mcc instanceof ManagedSchedulePollConsumerMBean mpc) { diff --git a/core/camel-console/src/main/java/org/apache/camel/impl/console/EndpointDevConsole.java b/core/camel-console/src/main/java/org/apache/camel/impl/console/EndpointDevConsole.java index 9f5331f4cf6..e3605e58b55 100644 --- a/core/camel-console/src/main/java/org/apache/camel/impl/console/EndpointDevConsole.java +++ b/core/camel-console/src/main/java/org/apache/camel/impl/console/EndpointDevConsole.java @@ -54,6 +54,7 @@ public class EndpointDevConsole extends AbstractDevConsole { if (!col.isEmpty()) { for (Endpoint e : col) { boolean stub = e.getComponent().getClass().getSimpleName().equals("StubComponent"); + boolean remote = e.isRemote(); String uri = e.toString(); if (!uri.startsWith("stub:") && stub) { // shadow-stub @@ -62,9 +63,9 @@ public class EndpointDevConsole extends AbstractDevConsole { var stat = findStats(stats, e.getEndpointUri()); if (stat.isPresent()) { var st = stat.get(); - sb.append(String.format("\n %s (direction: %s, usage: %s)", uri, st.getDirection(), st.getHits())); + sb.append(String.format("\n %s (remote: %s direction: %s, usage: %s)", uri, remote, st.getDirection(), st.getHits())); } else { - sb.append(String.format("\n %s", uri)); + sb.append(String.format("\n %s (remote: %s)", uri, remote)); } } } diff --git a/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedConsumerMBean.java b/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedConsumerMBean.java index 96404ade564..1cbb9fdace7 100644 --- a/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedConsumerMBean.java +++ b/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedConsumerMBean.java @@ -29,4 +29,7 @@ public interface ManagedConsumerMBean extends ManagedServiceMBean { @ManagedAttribute(description = "Whether this consumer hosts a service such as acting as a HTTP server (only available for some components)") boolean isHostedService(); + @ManagedAttribute(description = "Whether this consumer connects to remote or local systems") + boolean isRemoteEndpoint(); + } diff --git a/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedEndpointMBean.java b/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedEndpointMBean.java index dcf0a15337c..a71b4773bde 100644 --- a/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedEndpointMBean.java +++ b/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedEndpointMBean.java @@ -37,7 +37,7 @@ public interface ManagedEndpointMBean { @ManagedAttribute(description = "Singleton") boolean isSingleton(); - @ManagedAttribute(description = "Remote") + @ManagedAttribute(description = "Whether this endpoint connects to remote or local systems") boolean isRemote(); @ManagedAttribute(description = "Endpoint State") diff --git a/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedProducerMBean.java b/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedProducerMBean.java index 4f40b4b00c0..11f34f096e4 100644 --- a/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedProducerMBean.java +++ b/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedProducerMBean.java @@ -26,4 +26,7 @@ public interface ManagedProducerMBean extends ManagedServiceMBean { @ManagedAttribute(description = "Singleton") boolean isSingleton(); + @ManagedAttribute(description = "Whether this producer connects to remote or local systems") + boolean isRemoteEndpoint(); + } diff --git a/core/camel-management/src/main/java/org/apache/camel/management/mbean/ManagedConsumer.java b/core/camel-management/src/main/java/org/apache/camel/management/mbean/ManagedConsumer.java index 5766b4c4e25..f4ea8da0545 100644 --- a/core/camel-management/src/main/java/org/apache/camel/management/mbean/ManagedConsumer.java +++ b/core/camel-management/src/main/java/org/apache/camel/management/mbean/ManagedConsumer.java @@ -56,4 +56,9 @@ public class ManagedConsumer extends ManagedService implements ManagedConsumerMB } return false; } + + @Override + public boolean isRemoteEndpoint() { + return consumer.getEndpoint().isRemote(); + } } diff --git a/core/camel-management/src/main/java/org/apache/camel/management/mbean/ManagedProducer.java b/core/camel-management/src/main/java/org/apache/camel/management/mbean/ManagedProducer.java index 1d08d966ff7..94ce8c0d929 100644 --- a/core/camel-management/src/main/java/org/apache/camel/management/mbean/ManagedProducer.java +++ b/core/camel-management/src/main/java/org/apache/camel/management/mbean/ManagedProducer.java @@ -44,4 +44,8 @@ public class ManagedProducer extends ManagedService implements ManagedProducerMB return producer.isSingleton(); } + @Override + public boolean isRemoteEndpoint() { + return producer.getEndpoint().isRemote(); + } }