private int getSavedIndex(Shard shard) throws ShardManagerException { try { return shard.getLastSavedIndex(); } catch (Exception e) { throw new ShardManagerException(e); } }
private Map<Object, Object> getGondolaStatus(Gondola gondola, ChangeLogProcessor changeLogProcessor) throws InterruptedException { Map<Object, Object> shards = new LinkedHashMap<>(); for (Shard shard : gondola.getShardsOnHost()) { String shardId = shard.getShardId(); Map<Object, Object> shardMap = new LinkedHashMap<>(); shardMap.put("commitIndex", shard.getCommitIndex()); shardMap.put("savedIndex", shard.getLastSavedIndex()); shardMap.put("appliedIndex", changeLogProcessor.getAppliedIndex(shardId)); shardMap.put("slaveStatus", getSlaveStatus(shard)); shardMap.put("role", shard.getLocalRole()); shardMap.put("enabled", shard.getLocalMember().isEnabled()); shards.put(shardId, shardMap); } return shards; }