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();
+    }
 }

Reply via email to