List of usage examples for org.apache.zookeeper WatchedEvent getState
public KeeperState getState()
From source file:com.gxl.zk.ZKConnectionManager.java
License:Apache License
/** * zookeeper/*from w w w .j a v a 2 s . c om*/ * * @author gaoxianglong * * @throws ConnectionException * * @return void */ private void connection() { countDownLatch = new CountDownLatch(1); try { zk_client = new ZooKeeper(address, zk_session_timeout, new Watcher() { @Override public void process(WatchedEvent event) { final KeeperState STATE = event.getState(); switch (STATE) { case SyncConnected: countDownLatch.countDown(); logger.info("connection zookeeper success"); break; case Disconnected: logger.warn("zookeeper connection is disconnected"); break; case Expired: logger.error("zookeeper session expired"); break; case AuthFailed: logger.error("authentication failure"); default: break; } } }); countDownLatch.await(); String samplingRate = null; /* ?? */ if (null == zk_client.exists("/tracing", false)) { zk_client.create("/tracing", new byte[0], Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT); } /* ?znode? */ if (null != zk_client.exists(samplingRate_path, false)) { samplingRate = new String(zk_client.getData(samplingRate_path, new SamplingRateWatcher(zk_client, samplingRate_path), null)); } else { logger.warn("-->" + samplingRate_path + "?,"); /* ?1/1024 */ zk_client.create(samplingRate_path, "1024".getBytes(), Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT); samplingRate = new String(zk_client.getData(samplingRate_path, new SamplingRateWatcher(zk_client, samplingRate_path), null)); } /* */ TraceFilter.samplingNum = Integer.parseInt(samplingRate); } catch (Exception e) { logger.error("error", e); } }
From source file:com.heliosapm.streams.admin.zookeep.ZooKeepPublisher.java
License:Apache License
/** * {@inheritDoc}/*from w w w. j a v a 2 s.c o m*/ * @see org.apache.zookeeper.Watcher#process(org.apache.zookeeper.WatchedEvent) */ @Override public void process(final WatchedEvent event) { switch (event.getState()) { case Disconnected: // FIXME: when this happens (and we're not shutting down), start the connection poll loff(); connected.set(false); log.warn("ZooKeep Session Disconnected. Waiting for reconnect...."); sessionId = null; sendNotification(new Notification(NOTIF_DISCONNECTED, OBJECT_NAME, notifSerial.incrementAndGet(), System.currentTimeMillis(), "ZooKeeperPublisher disconnected from ZooKeeper [" + connect + "]")); break; case Expired: connected.set(false); log.info("ZooKeep Session Expired"); sessionId = null; sendNotification(new Notification(NOTIF_EXPIRED, OBJECT_NAME, notifSerial.incrementAndGet(), System.currentTimeMillis(), "ZooKeeperPublisher connection expored from ZooKeeper [" + connect + "]")); break; case SyncConnected: lon(); connected.set(true); sessionId = zk.getSessionId(); log.info("ZooKeep Connected. SessionID: [{}]", sessionId); sendNotification(new Notification(NOTIF_EXPIRED, OBJECT_NAME, notifSerial.incrementAndGet(), System.currentTimeMillis(), "ZooKeeperPublisher connected to ZooKeeper [" + connect + "]")); break; default: log.info("ZooKeep Event: [{}]", event); break; } }
From source file:com.heliosapm.streams.common.zoo.AdminFinder.java
License:Apache License
/** * {@inheritDoc}//from w ww .ja va2 s. co m * @see org.apache.zookeeper.Watcher#process(org.apache.zookeeper.WatchedEvent) */ @Override public void process(final WatchedEvent event) { switch (event.getState()) { case Disconnected: log.info("ZooKeep Session Disconnected"); sessionId = null; break; case Expired: log.info("ZooKeep Session Expired"); sessionId = null; break; case SyncConnected: sessionId = getSessionId(); log.info("ZooKeep Connected. SessionID: [{}]", sessionId); break; default: log.info("ZooKeep Event: [{}]", event); break; } }
From source file:com.heliosapm.streams.kafka.KafkaAdminClient.java
License:Apache License
/** * {@inheritDoc}/*from w w w . j a v a 2 s . com*/ * @see org.apache.zookeeper.Watcher#process(org.apache.zookeeper.WatchedEvent) */ @Override public void process(final WatchedEvent event) { if (event == null) return; final Watcher.Event.KeeperState newState = event.getState(); if (newState == null) return; final Watcher.Event.KeeperState priorState = state.getAndSet(event.getState()); if (priorState == null || newState != priorState) { switch (event.getState()) { case AuthFailed: connected.set(false); log.warn("[{}] : Authentication Failed", zkConnect); doClose(); break; case ConnectedReadOnly: connected.set(true); log.info("[{}] : Connected ReadOnly", zkConnect); break; case Disconnected: connected.set(false); log.warn("[{}] : Disconnected", zkConnect); doClose(); case Expired: connected.set(false); log.warn("[{}] : Expired", zkConnect); doClose(); break; case SaslAuthenticated: connected.set(true); log.info("[{}] : SaslAuthenticated", zkConnect); break; case SyncConnected: connected.set(true); log.info("[{}] : Connected", zkConnect); break; default: break; } } }
From source file:com.jiuxian.theone.zk.ConnectionListener.java
License:Apache License
@Override public void eventReceived(CuratorFramework client, CuratorEvent event) throws Exception { LOGGER.info(event.toString());//from w w w. j av a 2s . co m final WatchedEvent watchedEvent = event.getWatchedEvent(); if (watchedEvent != null && watchedEvent.getState() == KeeperState.Disconnected) { try { resource.close(); } finally { System.exit(0); } } }
From source file:com.jkoolcloud.tnt4j.streams.configure.zookeeper.ZKConnection.java
License:Apache License
/** * Connects to ZooKeeper ensemble. Waits until connection establishment is confirmed over watcher. * * @param connStr//w w w.java 2s. c o m * ZooKeeper ensemble connection definition string * @param timeout * connection timeout * @return zookeeper instance * * @throws IOException * if I/O exception occurs while initializing ZooKeeper connection * @throws InterruptedException * if the current thread is interrupted while waiting */ public ZooKeeper connect(String connStr, int timeout) throws IOException, InterruptedException { final CountDownLatch connectedSignal = new CountDownLatch(1); zk = new ZooKeeper(connStr, timeout, new Watcher() { @Override public void process(WatchedEvent we) { if (we.getState() == Event.KeeperState.SyncConnected) { connectedSignal.countDown(); } } }); connectedSignal.await(); return zk; }
From source file:com.jxt.web.cluster.zookeeper.ZookeeperClusterDataManager.java
License:Apache License
@SuppressWarnings("deprecation") @Override//from w w w . jav a2s. co m public void process(WatchedEvent event) { logger.info("Handle Zookeeper Event({}) started.", event); KeeperState state = event.getState(); EventType eventType = event.getType(); String path = event.getPath(); // when this happens, ephemeral node disappears // reconnects automatically, and process gets notified for all events boolean result = false; if (ZookeeperUtils.isDisconnectedEvent(event)) { result = handleDisconnected(); if (state == KeeperState.Expired) { client.reconnectWhenSessionExpired(); } } else if (state == KeeperState.SyncConnected || state == KeeperState.NoSyncConnected) { if (eventType == EventType.None) { result = handleConnected(); } else if (eventType == EventType.NodeChildrenChanged) { result = handleNodeChildrenChanged(path); } else if (eventType == EventType.NodeDeleted) { result = handleNodeDeleted(path); } else if (eventType == EventType.NodeDataChanged) { result = handleNodeDataChanged(path); } } if (result) { logger.info("Handle Zookeeper Event({}) completed.", event); } else { logger.info("Handle Zookeeper Event({}) failed.", event); } }
From source file:com.jxt.web.cluster.zookeeper.ZookeeperUtils.java
License:Apache License
public static boolean isConnectedEvent(WatchedEvent event) { KeeperState state = event.getState(); EventType eventType = event.getType(); return isConnectedEvent(state, eventType); }
From source file:com.jxt.web.cluster.zookeeper.ZookeeperUtils.java
License:Apache License
public static boolean isDisconnectedEvent(WatchedEvent event) { KeeperState state = event.getState(); EventType eventType = event.getType(); return isDisconnectedEvent(state, eventType); }
From source file:com.liveramp.hank.test.ZkTestCase.java
License:Apache License
@Before public final void setUpZk() throws Exception { setupZkServer();//from ww w. j a va2 s. c om final Object lock = new Object(); final AtomicBoolean connected = new AtomicBoolean(false); zk = new ZooKeeperPlus("127.0.0.1:" + zkClientPort, 1000000, new Watcher() { @Override public void process(WatchedEvent event) { switch (event.getType()) { case None: if (event.getState() == KeeperState.SyncConnected) { connected.set(true); synchronized (lock) { lock.notifyAll(); } } } LOG.debug(event.toString()); } }); synchronized (lock) { lock.wait(2000); } if (!connected.get()) { fail("timed out waiting for the zk client connection to come online!"); } LOG.debug("session timeout: " + zk.getSessionTimeout()); zk.deleteNodeRecursively(zkRoot); WaitUntil.orDie(() -> { try { return zk.exists(zkRoot, false) == null; } catch (KeeperException | InterruptedException e) { throw new RuntimeException(e); } }); createNodeRecursively(zkRoot); }