+/*
+ * Copyright (c) 2014, 2015 Brocade Communications Systems, Inc. and others. All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+
package org.opendaylight.controller.cluster.datastore.jmx.mbeans.shard;
import java.util.List;
-
-import org.opendaylight.controller.md.sal.common.util.jmx.ThreadExecutorStats;
-import org.opendaylight.yangtools.util.concurrent.ListenerNotificationQueueStats;
+import org.opendaylight.controller.cluster.raft.client.messages.FollowerInfo;
/**
- * @author: syedbahm
+ * MXBean interface for shard stats.
+ *
+ * @author syedbahm
*/
public interface ShardStatsMXBean {
- String getShardName();
+ String getShardName();
+
+ String getStatRetrievalTime();
+
+ String getStatRetrievalError();
+
+ long getCommittedTransactionsCount();
+
+ long getReadOnlyTransactionCount();
+
+ long getReadWriteTransactionCount();
+
+ long getLastLogIndex();
+
+ long getLastLogTerm();
+
+ long getCurrentTerm();
+
+ long getCommitIndex();
+
+ long getLastApplied();
+
+ long getLastIndex();
+
+ long getLastTerm();
+
+ long getSnapshotIndex();
+
+ long getSnapshotTerm();
- long getCommittedTransactionsCount();
+ long getReplicatedToAllIndex();
- long getReadOnlyTransactionCount();
+ String getLastCommittedTransactionTime();
- long getWriteOnlyTransactionCount();
+ long getFailedTransactionsCount();
- long getReadWriteTransactionCount();
+ long getAbortTransactionsCount();
- long getLastLogIndex();
+ long getFailedReadTransactionsCount();
- long getLastLogTerm();
+ String getLeader();
- long getCurrentTerm();
+ String getRaftState();
- long getCommitIndex();
+ String getVotedFor();
- long getLastApplied();
+ boolean isSnapshotCaptureInitiated();
- String getLastCommittedTransactionTime();
+ boolean isVoting();
- long getFailedTransactionsCount();
+ void resetTransactionCounters();
- long getAbortTransactionsCount();
+ long getInMemoryJournalDataSize();
- long getFailedReadTransactionsCount();
+ long getInMemoryJournalLogSize();
- String getLeader();
+ boolean getFollowerInitialSyncStatus();
- String getRaftState();
+ List<FollowerInfo> getFollowerInfo();
- ThreadExecutorStats getDataStoreExecutorStats();
+ String getPeerAddresses();
- ThreadExecutorStats getNotificationMgrExecutorStats();
+ String getPeerVotingStates();
- List<ListenerNotificationQueueStats> getCurrentNotificationMgrListenerQueueStats();
+ long getLeadershipChangeCount();
- int getMaxNotificationMgrListenerQueueSize();
+ String getLastLeadershipChangeTime();
- void resetTransactionCounters();
+ int getPendingTxCommitQueueSize();
- long getInMemoryJournalDataSize();
+ int getTxCohortCacheSize();
- boolean getFollowerInitialSyncStatus();
+ void captureSnapshot();
}