List of usage examples for org.apache.zookeeper WatchedEvent getPath
public String getPath()
From source file:com.navercorp.redis.cluster.ZookeeperConTest.java
License:Apache License
/** * @param event/* w ww .ja v a 2s. co m*/ * @see org.apache.zookeeper.Watcher#process(org.apache.zookeeper.WatchedEvent) */ public void process(WatchedEvent event) { log.info("[NodeWatcher] Event {type=" + event.getType() + ", state=" + event.getState() + ", path=" + event.getPath() + "}"); if (event.getType() == Event.EventType.None) { switch (event.getState()) { case SyncConnected: log.debug("SyncConnected"); this.connLatcher.countDown(); break; default: } } }
From source file:com.netflix.curator.framework.imps.CuratorFrameworkImpl.java
License:Apache License
public CuratorFrameworkImpl(CuratorFrameworkFactory.Builder builder) { this.client = new CuratorZookeeperClient(builder.getZookeeperFactory(), builder.getEnsembleProvider(), builder.getSessionTimeoutMs(), builder.getConnectionTimeoutMs(), new Watcher() { @Override/* w w w .java2 s . c om*/ public void process(WatchedEvent watchedEvent) { CuratorEvent event = new CuratorEventImpl(CuratorFrameworkImpl.this, CuratorEventType.WATCHED, watchedEvent.getState().getIntValue(), unfixForNamespace(watchedEvent.getPath()), null, null, null, null, null, watchedEvent, null); processEvent(event); } }, builder.getRetryPolicy()); listeners = new ListenerContainer<CuratorListener>(); unhandledErrorListeners = new ListenerContainer<UnhandledErrorListener>(); backgroundOperations = new DelayQueue<OperationAndData<?>>(); namespace = new NamespaceImpl(this, builder.getNamespace()); threadFactory = getThreadFactory(builder); connectionStateManager = new ConnectionStateManager(this, builder.getThreadFactory()); compressionProvider = builder.getCompressionProvider(); aclProvider = builder.getAclProvider(); namespaceFacadeCache = new NamespaceFacadeCache(this); byte[] builderDefaultData = builder.getDefaultData(); defaultData = (builderDefaultData != null) ? Arrays.copyOf(builderDefaultData, builderDefaultData.length) : new byte[0]; if (builder.getAuthScheme() != null) { authInfo.set(new AuthInfo(builder.getAuthScheme(), builder.getAuthValue())); } failedDeleteManager = new FailedDeleteManager(this); }
From source file:com.netflix.curator.framework.imps.NamespaceWatchedEvent.java
License:Apache License
NamespaceWatchedEvent(CuratorFrameworkImpl client, WatchedEvent event) { super(event.getType(), event.getState(), client.unfixForNamespace(event.getPath())); }
From source file:com.netflix.curator.framework.imps.TestFramework.java
License:Apache License
@Test public void testNamespaceWithWatcher() throws Exception { CuratorFrameworkFactory.Builder builder = CuratorFrameworkFactory.builder(); CuratorFramework client = builder.connectString(server.getConnectString()).namespace("aisa") .retryPolicy(new RetryOneTime(1)).build(); client.start();//w w w .j ava 2 s.c o m try { final BlockingQueue<String> queue = new LinkedBlockingQueue<String>(); Watcher watcher = new Watcher() { @Override public void process(WatchedEvent event) { try { queue.put(event.getPath()); } catch (InterruptedException e) { throw new Error(e); } } }; client.create().forPath("/base"); client.getChildren().usingWatcher(watcher).forPath("/base"); client.create().forPath("/base/child"); String path = queue.take(); Assert.assertEquals(path, "/base"); } finally { client.close(); } }
From source file:com.objectdriven.maven.zookeeper.sample.DataMonitor.java
public void process(WatchedEvent event) { String path = event.getPath(); if (event.getType() == Event.EventType.None) { // We are are being told that the state of the // connection has changed switch (event.getState()) { case SyncConnected: // In this particular example we don't need to do anything // here - watches are automatically re-registered with // server and any watches triggered while the client was // disconnected will be delivered (in order of course) break; case Expired: // It's all over dead = true;/*from w ww . j ava2 s. c o m*/ listener.closing(KeeperException.Code.SessionExpired); break; } } else { if (path != null && path.equals(znode)) { // Something has changed on the node, let's find out zk.exists(znode, true, this, null); } } if (chainedWatcher != null) { chainedWatcher.process(event); } }
From source file:com.oneapm.base.tools.ZookeeperClient.java
/** * ??,?/*from w w w . j av a 2s.c o m*/ * * @param event */ @Override public void process(WatchedEvent event) { LOG.info("" + event.getState()); if (event.getType() == Event.EventType.NodeDataChanged && event.getPath().equals("/ni/caution")) { setRules(event.getPath()); } if (event.getType() == Event.EventType.NodeDataChanged && event.getPath().equals("/ni/license")) { setLicense(event.getPath()); } }
From source file:com.proofpoint.zookeeper.ChildDataWatcher.java
License:Apache License
@Override public void process(WatchedEvent event) { try {//w w w .j av a 2 s. c om switch (event.getType()) { case NodeChildrenChanged: { log.debug("Getting children: %s", path); client.usingWatcher(this).inBackground(backgroundKey).getChildren(path); break; } case NodeDataChanged: { String child = event.getPath().substring(path.length() + 1); log.debug("Getting data: %s", event.getPath()); client.usingWatcher(this).inBackground(backgroundKey).withContext(child).getData(event.getPath()); break; } } } catch (Exception e) { log.error(e); throw new RuntimeException(e); } }
From source file:com.proofpoint.zookeeper.ConnectionState.java
License:Apache License
@Override public void process(WatchedEvent event) { boolean localIsConnected; synchronized (this) { boolean needsNotify = false; if (event.getType() == Watcher.Event.EventType.None) { boolean wasConnected = isConnected; isConnected = (event.getState() == Event.KeeperState.SyncConnected); needsNotify = isConnected && !wasConnected; if (event.getState() == Event.KeeperState.Expired) { File sessionIdFile = new File(config.getSessionStorePath()); if (!sessionIdFile.delete()) { log.error("Could not delete session ID file: " + config.getSessionStorePath()); }/*from w ww.j a v a 2 s. c o m*/ needsNotify = true; } else if (event.getState() == Event.KeeperState.Disconnected) { needsNotify = true; } } if (needsNotify) { if (!isConnected && (zookeeper != null)) { try { zookeeper.close(); } catch (InterruptedException e) { Thread.currentThread().interrupt(); log.error(e, "Interrupted trying to close Zookeeper. Ignoring at this level."); } clear(); } notifyAll(); } localIsConnected = isConnected; } if (localIsConnected) { client.postEvent(new ZookeeperEvent(getTypeFromWatched(event), 0, event.getPath(), null, null, null, null, null, null)); } }
From source file:com.sharksharding.resources.watcher.ZookeeperWatcher.java
License:Apache License
@Override public void process(WatchedEvent event) { if (null == zk_client) return;//from w w w . jav a2 s . c om try { Thread.sleep(100); /* ? */ zk_client.exists(nodePath, this); EventType eventType = event.getType(); switch (eventType) { case NodeCreated: logger.info("create node-->" + event.getPath()); break; case NodeDataChanged: final String nodePathValue = new String(zk_client.getData(nodePath, false, null)); RegisterDataSource.register(nodePathValue, "zookeeper"); logger.info("change node data-->" + event.getPath()); break; case NodeChildrenChanged: break; case NodeDeleted: default: break; } } catch (Exception e) { throw new ConnectionException(e.toString()); } }
From source file:com.sonian.elasticsearch.zookeeper.client.ZooKeeperClientService.java
License:Apache License
private Watcher wrapNodeListener(final NodeListener nodeListener) { if (nodeListener != null) { return new Watcher() { @Override/*from w w w .j a v a2 s . c o m*/ public void process(WatchedEvent event) { switch (event.getType()) { case NodeCreated: nodeListener.onNodeCreated(event.getPath()); break; case NodeDeleted: nodeListener.onNodeDeleted(event.getPath()); break; case NodeDataChanged: nodeListener.onNodeDataChanged(event.getPath()); break; } } }; } else { return null; } }