ClusterSyncManager { public static ClusterSyncManager getClusterSyncManager(ConfigurationContext configurationContext, FailOverTask failOverTask) throws Exception { if (self == null) { Random r = new Random(); RandomNameGenerator rnd = new RandomNameGenerator(r.nextInt()); String zkPath =STREAMING.ZK_CLUSTER_MANAGER_PATH; self = new ClusterSyncManager(zkPath, rnd.next(), configurationContext, failOverTask); } return self; } ClusterSyncManager(String latchpath, String id, ConfigurationContext
            configurationContext, FailOverTask failOverTask, CuratorFramework curatorClient, ZKUtils zkUtils,
            ClusterBarrierManager clusterBarrierManager);  ClusterSyncManager(String latchpath, String id, ConfigurationContext
            configurationContext, FailOverTask failOverTask); static ClusterSyncManager getClusterSyncManager(ConfigurationContext configurationContext,
            FailOverTask failOverTask); static ClusterSyncManager getNode(); void start(); boolean isStarted(); ActionCallbackDto manageAckStreamingOperation(StratioStreamingMessage message, ActionCallbackDto reply); String initializedNodeStatus(); String initializedGroupStatus(); String updateNodeStatus(String nodeId, PathChildrenCacheEvent.Type eventType); boolean isLeader(); CuratorFramework getClient(); String getGroupId();  }
@Test public void testGetClusterSyncManager() throws Exception { ClusterSyncManager clusterSyncManager = ClusterSyncManager.getClusterSyncManager(configurationContext, failOverTask); assertNotNull(clusterSyncManager); assertThat(clusterSyncManager, instanceOf(ClusterSyncManager.class)); }