55import com .hazelcast .config .NetworkConfig ;
66import com .hazelcast .config .TcpIpConfig ;
77import com .hazelcast .core .*;
8+ import com .hazelcast .nio .Address ;
89import org .code13k .heets .config .AppConfig ;
910import org .slf4j .Logger ;
1011import org .slf4j .LoggerFactory ;
1112
12- import java .util .ArrayList ;
13+ import java .util .* ;
1314
1415public class Cluster {
1516 // Logger
@@ -86,6 +87,27 @@ public HazelcastInstance getHazelcastInstance() {
8687 return mHazelcastInstance ;
8788 }
8889
90+
91+ /**
92+ * Get all values
93+ */
94+ public Map <String , Object > values () {
95+ HashMap <String , Object > result = new HashMap <>();
96+
97+ result .put ("version" , getClusterVersion ());
98+ result .put ("count" , getMemberCount ());
99+ result .put ("info" , getMemberInfo ());
100+
101+ return result ;
102+ }
103+
104+ /**
105+ * Get cluster version
106+ */
107+ public String getClusterVersion (){
108+ return mHazelcastInstance .getCluster ().getClusterVersion ().toString ();
109+ }
110+
89111 /**
90112 * Get clustered member count
91113 */
@@ -96,6 +118,23 @@ public int getMemberCount() {
96118 return 1 ;
97119 }
98120 }
121+
122+ /**
123+ * Get clustered member info
124+ */
125+ public List <Map <String , String >> getMemberInfo (){
126+ ArrayList <Map <String , String >> result = new ArrayList <>();
127+ mHazelcastInstance .getCluster ().getMembers ().forEach (member -> {
128+ HashMap <String , String > item = new HashMap <>();
129+ Address memberAddress = member .getAddress ();
130+ item .put ("version" , member .getVersion ().toString ());
131+ item .put ("uuid" , member .getUuid ());
132+ item .put ("address" , memberAddress .getHost ()+":" +memberAddress .getPort ());
133+ result .add (item );
134+ });
135+ return result ;
136+ }
137+
99138}
100139
101140
0 commit comments