This is an automated email from the ASF dual-hosted git repository.

andor pushed a commit to branch branch-3.9
in repository https://gitbox.apache.org/repos/asf/zookeeper.git


The following commit(s) were added to refs/heads/branch-3.9 by this push:
     new ae4933b0e ZOOKEEPER-4962: Export bound client port for 
ZooKeeperServerEmbedded
ae4933b0e is described below

commit ae4933b0e30b51d9ed3ad5b9cc87518d133b8383
Author: Kezhu Wang <[email protected]>
AuthorDate: Sat Sep 20 01:08:20 2025 +0800

    ZOOKEEPER-4962: Export bound client port for ZooKeeperServerEmbedded
    
    Reviewers: anmolnar
    Author: kezhuw
    Closes #2302 from 
kezhuw/ZOOKEEPER-4962-ZooKeeperServerEmbedded-getClientPort
    
    (cherry picked from commit 23c044698bc059034443ce632705a75299293fbc)
    Signed-off-by: Andor Molnar <[email protected]>
---
 .../apache/zookeeper/server/ZooKeeperServerMain.java   |  2 --
 .../server/embedded/ZooKeeperServerEmbedded.java       | 10 ++++++++++
 .../server/embedded/ZooKeeperServerEmbeddedImpl.java   | 18 ++++++++++++++----
 3 files changed, 24 insertions(+), 6 deletions(-)

diff --git 
a/zookeeper-server/src/main/java/org/apache/zookeeper/server/ZooKeeperServerMain.java
 
b/zookeeper-server/src/main/java/org/apache/zookeeper/server/ZooKeeperServerMain.java
index 24e7f5b18..b63280f29 100644
--- 
a/zookeeper-server/src/main/java/org/apache/zookeeper/server/ZooKeeperServerMain.java
+++ 
b/zookeeper-server/src/main/java/org/apache/zookeeper/server/ZooKeeperServerMain.java
@@ -242,7 +242,6 @@ ServerCnxnFactory getSecureCnxnFactory() {
         return secureCnxnFactory;
     }
 
-    // VisibleForTesting
     public int getClientPort() {
         if (cnxnFactory != null) {
             return cnxnFactory.getLocalPort();
@@ -250,7 +249,6 @@ public int getClientPort() {
         return 0;
     }
 
-    // VisibleForTesting
     public int getSecureClientPort() {
         if (secureCnxnFactory != null) {
             return secureCnxnFactory.getLocalPort();
diff --git 
a/zookeeper-server/src/main/java/org/apache/zookeeper/server/embedded/ZooKeeperServerEmbedded.java
 
b/zookeeper-server/src/main/java/org/apache/zookeeper/server/embedded/ZooKeeperServerEmbedded.java
index a99bdb4e7..1fa77ac55 100644
--- 
a/zookeeper-server/src/main/java/org/apache/zookeeper/server/embedded/ZooKeeperServerEmbedded.java
+++ 
b/zookeeper-server/src/main/java/org/apache/zookeeper/server/embedded/ZooKeeperServerEmbedded.java
@@ -116,6 +116,16 @@ static ZookKeeperServerEmbeddedBuilder builder() {
      */
     void start(long startupTimeout) throws Exception;
 
+    /**
+     * Get client port for no secure connection.
+     */
+    int getClientPort();
+
+    /**
+     * Get client port for secure connection.
+     */
+    int getSecureClientPort();
+
     /**
      * Get a connection string useful for the client.
      * @return the connection string
diff --git 
a/zookeeper-server/src/main/java/org/apache/zookeeper/server/embedded/ZooKeeperServerEmbeddedImpl.java
 
b/zookeeper-server/src/main/java/org/apache/zookeeper/server/embedded/ZooKeeperServerEmbeddedImpl.java
index ad41a3228..ae2bb325d 100644
--- 
a/zookeeper-server/src/main/java/org/apache/zookeeper/server/embedded/ZooKeeperServerEmbeddedImpl.java
+++ 
b/zookeeper-server/src/main/java/org/apache/zookeeper/server/embedded/ZooKeeperServerEmbeddedImpl.java
@@ -107,8 +107,8 @@ protected QuorumPeer getQuorumPeer() throws SaslException {
                         @Override
                         public void start() {
                             super.start();
-                            boundClientPort = getClientPort();
-                            boundSecureClientPort = getSecureClientPort();
+                            boundClientPort = super.getClientPort();
+                            boundSecureClientPort = 
super.getSecureClientPort();
                             LOG.info("ZK Server {} started", this);
                             started.complete(null);
                         }
@@ -148,8 +148,8 @@ public void run() {
                 @Override
                 public void serverStarted() {
                     LOG.info("ZK Server started");
-                    boundClientPort = getClientPort();
-                    boundSecureClientPort = getSecureClientPort();
+                    boundClientPort = super.getClientPort();
+                    boundSecureClientPort = super.getSecureClientPort();
                     started.complete(null);
                 }
             };
@@ -190,6 +190,16 @@ public void run() {
         }
     }
 
+    @Override
+    public int getClientPort() {
+        return boundClientPort;
+    }
+
+    @Override
+    public int getSecureClientPort() {
+        return boundSecureClientPort;
+    }
+
     @Override
     public String getConnectionString() {
         return prettifyConnectionString(config.getClientPortAddress(), 
boundClientPort);

Reply via email to