+ private final String shardName;
+
+ private Long committedTransactionsCount = 0L;
+
+ private Long readOnlyTransactionCount = 0L;
+
+ private Long writeOnlyTransactionCount = 0L;
+
+ private Long readWriteTransactionCount = 0L;
+
+ private String leader;
+
+ private String raftState;
+
+ private Long lastLogTerm = -1L;
+
+ private Long lastLogIndex = -1L;
+
+ private Long currentTerm = -1L;
+
+ private Long commitIndex = -1L;
+
+ private Long lastApplied = -1L;
+
+ private Date lastCommittedTransactionTime = new Date(0L);
+
+ private Long failedTransactionsCount = 0L;
+
+ private SimpleDateFormat sdf =
+ new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
+
+ ShardStats(String shardName) {
+ this.shardName = shardName;
+ }
+
+
+ @Override
+ public String getShardName() {
+ return shardName;
+ }
+
+ @Override
+ public Long getCommittedTransactionsCount() {
+ return committedTransactionsCount;
+ }
+
+ @Override public String getLeader() {
+ return leader;
+ }
+
+ @Override public String getRaftState() {
+ return raftState;
+ }
+
+ @Override public Long getReadOnlyTransactionCount() {
+ return readOnlyTransactionCount;
+ }
+
+ @Override public Long getWriteOnlyTransactionCount() {
+ return writeOnlyTransactionCount;
+ }
+
+ @Override public Long getReadWriteTransactionCount() {
+ return readWriteTransactionCount;
+ }
+
+ @Override public Long getLastLogIndex() {
+ return lastLogIndex;
+ }
+
+ @Override public Long getLastLogTerm() {
+ return lastLogTerm;
+ }
+
+ @Override public Long getCurrentTerm() {
+ return currentTerm;
+ }
+
+ @Override public Long getCommitIndex() {
+ return commitIndex;
+ }
+
+ @Override public Long getLastApplied() {
+ return lastApplied;
+ }
+
+ @Override
+ public String getLastCommittedTransactionTime() {