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

khowe pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/geode.git


The following commit(s) were added to refs/heads/develop by this push:
     new fdcdbc0  Feature/GEODE-4061 : Adding coordinator in list member 
command output (#1138)
fdcdbc0 is described below

commit fdcdbc0d0a77c9f983bcfc6d8d9909365b4c95a0
Author: dinesh akhand <[email protected]>
AuthorDate: Tue Dec 19 00:22:42 2017 +0530

    Feature/GEODE-4061 : Adding coordinator in list member command output 
(#1138)
    
    * bump release version
    
    * GEODE-2670: Update pulse endpoint interceptors
    
    (cherry picked from commit 5b71c4b5b99a62063453535c9604df7e4be460fe)
    
    * GEODE-3873: User Guide - remove version drop-down menu from page headers
    
    * GEODE-4061:printing coordinator in list member command
        modified:   
geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListMembersCommand.java
        modified:   
geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ListMembersCommandDUnitTest.java
    
    *  GEODE-4061: First review comments
        modified:   
geode-core/src/main/java/org/apache/geode/distributed/internal/membership/MembershipManager.java
        modified:   
geode-core/src/main/java/org/apache/geode/distributed/internal/membership/gms/mgr/GMSMembershipManager.java
        modified:   
geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListMembersCommand.java
---
 .../internal/membership/MembershipManager.java       |  5 +++++
 .../membership/gms/mgr/GMSMembershipManager.java     |  1 +
 .../internal/cli/commands/ListMembersCommand.java    | 20 ++++++++++++++++++++
 .../cli/commands/ListMembersCommandDUnitTest.java    |  1 +
 4 files changed, 27 insertions(+)

diff --git 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/MembershipManager.java
 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/MembershipManager.java
index f9e5544..1a787f3 100644
--- 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/MembershipManager.java
+++ 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/MembershipManager.java
@@ -314,4 +314,9 @@ public interface MembershipManager {
    */
   public void releaseQuorumChecker(QuorumChecker checker);
 
+  /**
+   * return the coordinator for the view.
+   */
+  public DistributedMember getCoordinator();
+
 }
diff --git 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/gms/mgr/GMSMembershipManager.java
 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/gms/mgr/GMSMembershipManager.java
index 4933696..9232c6e 100644
--- 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/gms/mgr/GMSMembershipManager.java
+++ 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/gms/mgr/GMSMembershipManager.java
@@ -1401,6 +1401,7 @@ public class GMSMembershipManager implements 
MembershipManager, Manager {
    *
    * @return the current membership view coordinator
    */
+  @Override
   public DistributedMember getCoordinator() {
     latestViewReadLock.lock();
     try {
diff --git 
a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListMembersCommand.java
 
b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListMembersCommand.java
index 34207cd..6b25800 100644
--- 
a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListMembersCommand.java
+++ 
b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListMembersCommand.java
@@ -22,6 +22,8 @@ import org.springframework.shell.core.annotation.CliCommand;
 import org.springframework.shell.core.annotation.CliOption;
 
 import org.apache.geode.distributed.DistributedMember;
+import org.apache.geode.distributed.internal.InternalDistributedSystem;
+import org.apache.geode.distributed.internal.membership.MembershipManager;
 import org.apache.geode.internal.cache.InternalCache;
 import org.apache.geode.management.cli.CliMetaData;
 import org.apache.geode.management.cli.ConverterHint;
@@ -59,7 +61,11 @@ public class ListMembersCommand implements GfshCommand {
       if (memberSet.isEmpty()) {
         result = 
ResultBuilder.createInfoResult(CliStrings.LIST_MEMBER__MSG__NO_MEMBER_FOUND);
       } else {
+
         TabularResultData resultData = ResultBuilder.createTabularResultData();
+        final String coordinatorMember = getCoordinator();
+        resultData.accumulate("Name", "Coordinator:");
+        resultData.accumulate("Id", coordinatorMember);
         for (DistributedMember member : memberSet) {
           resultData.accumulate("Name", member.getName());
           resultData.accumulate("Id", member.getId());
@@ -74,4 +80,18 @@ public class ListMembersCommand implements GfshCommand {
     }
     return result;
   }
+
+  private String getCoordinator() {
+    String result = "unknown";
+    InternalDistributedSystem ids = 
InternalDistributedSystem.getConnectedInstance();
+    if ((ids != null) && (ids.isConnected())) {
+      MembershipManager mmgr = 
ids.getDistributionManager().getMembershipManager();
+      DistributedMember coord = mmgr.getCoordinator();
+      if (coord != null) {
+        result = coord.toString();
+      }
+    }
+
+    return result;
+  }
 }
diff --git 
a/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ListMembersCommandDUnitTest.java
 
b/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ListMembersCommandDUnitTest.java
index 3ad80a9..c95fcfa 100644
--- 
a/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ListMembersCommandDUnitTest.java
+++ 
b/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ListMembersCommandDUnitTest.java
@@ -67,6 +67,7 @@ public class ListMembersCommandDUnitTest {
     assertThat(output).contains("server-1");
     assertThat(output).contains("server-2");
     assertThat(output).contains("server-3");
+    assertThat(output).contains("Coordinator");
   }
 
   @Test

-- 
To stop receiving notification emails like this one, please contact
['"[email protected]" <[email protected]>'].

Reply via email to