This is an automated email from the ASF dual-hosted git repository.
jbonofre pushed a commit to branch activemq-6.2.x
in repository https://gitbox.apache.org/repos/asf/activemq.git
The following commit(s) were added to refs/heads/activemq-6.2.x by this push:
new 5f339c9246 feat(#1828): Expose NetworkConnector URI and local URI in
JMX MBean (#2208)
5f339c9246 is described below
commit 5f339c92462158fd922e4d24d042f581f5635a81
Author: JB Onofré <[email protected]>
AuthorDate: Thu Jul 23 22:16:36 2026 +0200
feat(#1828): Expose NetworkConnector URI and local URI in JMX MBean (#2208)
Add getUri() and getLocalUri() attributes to NetworkConnectorViewMBean so
that the network connector URI is visible via JMX. Add abstract getUri() to
NetworkConnector base class and implement it in MulticastNetworkConnector.
Backport of #1829 to activemq-6.2.x.
---
.../apache/activemq/broker/jmx/NetworkConnectorView.java | 16 ++++++++++++++++
.../activemq/broker/jmx/NetworkConnectorViewMBean.java | 4 ++++
.../activemq/network/MulticastNetworkConnector.java | 6 ++++++
.../org/apache/activemq/network/NetworkConnector.java | 2 ++
.../java/org/apache/activemq/jmx/JmxCreateNCTest.java | 2 ++
5 files changed, 30 insertions(+)
diff --git
a/activemq-broker/src/main/java/org/apache/activemq/broker/jmx/NetworkConnectorView.java
b/activemq-broker/src/main/java/org/apache/activemq/broker/jmx/NetworkConnectorView.java
index 09e7da0755..b6e61dbf00 100644
---
a/activemq-broker/src/main/java/org/apache/activemq/broker/jmx/NetworkConnectorView.java
+++
b/activemq-broker/src/main/java/org/apache/activemq/broker/jmx/NetworkConnectorView.java
@@ -16,6 +16,8 @@
*/
package org.apache.activemq.broker.jmx;
+import java.net.URISyntaxException;
+
import org.apache.activemq.network.NetworkConnector;
public class NetworkConnectorView implements NetworkConnectorViewMBean {
@@ -37,6 +39,20 @@ public class NetworkConnectorView implements
NetworkConnectorViewMBean {
connector.stop();
}
+ @Override
+ public String getUri() {
+ return connector.getUri() != null ? connector.getUri().toString() : "";
+ }
+
+ @Override
+ public String getLocalUri() {
+ try {
+ return connector.getLocalUri() != null ?
connector.getLocalUri().toString() : "";
+ } catch (URISyntaxException e) {
+ return "";
+ }
+ }
+
@Override
public String getName() {
return connector.getName();
diff --git
a/activemq-broker/src/main/java/org/apache/activemq/broker/jmx/NetworkConnectorViewMBean.java
b/activemq-broker/src/main/java/org/apache/activemq/broker/jmx/NetworkConnectorViewMBean.java
index 47a8da6c07..08b3c76f74 100644
---
a/activemq-broker/src/main/java/org/apache/activemq/broker/jmx/NetworkConnectorViewMBean.java
+++
b/activemq-broker/src/main/java/org/apache/activemq/broker/jmx/NetworkConnectorViewMBean.java
@@ -20,6 +20,10 @@ import org.apache.activemq.Service;
public interface NetworkConnectorViewMBean extends Service {
+ String getUri();
+
+ String getLocalUri();
+
String getName();
int getMessageTTL();
diff --git
a/activemq-broker/src/main/java/org/apache/activemq/network/MulticastNetworkConnector.java
b/activemq-broker/src/main/java/org/apache/activemq/network/MulticastNetworkConnector.java
index ad7ac5babe..f3b581ea24 100644
---
a/activemq-broker/src/main/java/org/apache/activemq/network/MulticastNetworkConnector.java
+++
b/activemq-broker/src/main/java/org/apache/activemq/network/MulticastNetworkConnector.java
@@ -77,6 +77,12 @@ public class MulticastNetworkConnector extends
NetworkConnector {
this.remoteTransport = remoteTransport;
}
+ // Satisfies the abstract getUri() contract from NetworkConnector;
delegates to getRemoteURI()
+ @Override
+ public URI getUri() {
+ return getRemoteURI();
+ }
+
public URI getRemoteURI() {
return remoteURI;
}
diff --git
a/activemq-broker/src/main/java/org/apache/activemq/network/NetworkConnector.java
b/activemq-broker/src/main/java/org/apache/activemq/network/NetworkConnector.java
index b08e03bab1..2852b0ffa8 100644
---
a/activemq-broker/src/main/java/org/apache/activemq/network/NetworkConnector.java
+++
b/activemq-broker/src/main/java/org/apache/activemq/network/NetworkConnector.java
@@ -87,6 +87,8 @@ public abstract class NetworkConnector extends
NetworkBridgeConfiguration implem
this.localURI = localURI;
}
+ public abstract URI getUri();
+
public URI getLocalUri() throws URISyntaxException {
return localURI;
}
diff --git
a/activemq-unit-tests/src/test/java/org/apache/activemq/jmx/JmxCreateNCTest.java
b/activemq-unit-tests/src/test/java/org/apache/activemq/jmx/JmxCreateNCTest.java
index e3ef738c98..ce02acbb5d 100644
---
a/activemq-unit-tests/src/test/java/org/apache/activemq/jmx/JmxCreateNCTest.java
+++
b/activemq-unit-tests/src/test/java/org/apache/activemq/jmx/JmxCreateNCTest.java
@@ -80,6 +80,8 @@ public class JmxCreateNCTest {
assertNotNull(nc);
assertEquals("NC", nc.getName());
+ assertEquals("static:(tcp://localhost:61617)", nc.getUri());
+ assertNotNull(nc.getLocalUri());
}
@Test
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information, visit: https://activemq.apache.org/contact