List of usage examples for org.apache.zookeeper WatchedEvent getPath
public String getPath()
From source file:com.navercorp.nbasearc.confmaster.server.watcher.WatchEventHandlerPmRoot.java
License:Apache License
@Override public void onChildEvent(WatchedEvent event) throws MgmtZooKeeperException, NoNodeException { if (LeaderState.isLeader()) { return;//w w w . j a v a 2s . c o m } else { registerBoth(event.getPath()); // Delete List<String> deleted = getDeletedChild(event.getPath(), pmImo.getAll()); for (String pmName : deleted) { pmImo.delete(PathUtil.pmPath(pmName)); } // Created List<String> created = getCreatedChild(event.getPath(), pmImo.getAll()); for (String pmName : created) { pmImo.load(pmName); } } }
From source file:com.navercorp.nbasearc.confmaster.server.watcher.WatchEventHandlerRs.java
License:Apache License
@Override public void onChildEvent(WatchedEvent event) throws MgmtZooKeeperException { registerBoth(event.getPath()); RedisServer rs = rsImo.getByPath(event.getPath()); if (rs.getData().getHB().equals(Constant.HB_MONITOR_YES)) { rs.getHbc().urgent();//from w w w . ja v a 2 s .c o m } workflowExecutor.perform(FAILOVER_COMMON, rs); }
From source file:com.navercorp.nbasearc.confmaster.server.watcher.WatchEventHandlerRs.java
License:Apache License
@Override public void onChangedEvent(WatchedEvent event) throws MgmtZooKeeperException { registerBoth(event.getPath()); RedisServer rs = rsImo.getByPath(event.getPath()); if (null == rs) { // this znode already removed. return;/* www. j av a2s .c o m*/ } if (LeaderState.isFollower()) { zookeeper.reflectZkIntoMemory(rs); } try { rs.updateHBRef(); if (rs.getData().getHB().equals(Constant.HB_MONITOR_YES)) { rs.getHbc().urgent(); } } catch (Exception e) { Logger.error("failed while change rs. {} {}", event.getPath(), event, e); } }
From source file:com.navercorp.nbasearc.confmaster.server.WatchEventHandler.java
License:Apache License
public void processChildrenOrDataChangedEvent(WatchedEvent event) { Level logLevel = INFO;//w w w .j a v a 2 s.c o m try { PathUtil.WatchTarget wt = PathUtil.getWatchType(event.getPath()); if (wt == null) { return; } lock(wt, event); switch (event.getType()) { case NodeDataChanged: processChangedEvent(wt, event); break; case NodeChildrenChanged: processChildEvent(wt, event); break; default: break; } } catch (Exception e) { Logger.error("Handle watch event fail. {} {}", event.getPath(), event, e); logLevel = DEBUG; } finally { unlock(); } Logger.flush(logLevel); }
From source file:com.navercorp.nbasearc.confmaster.server.WatchEventHandler.java
License:Apache License
public void onChangedEventCluster(PathUtil.WatchTarget wt, WatchedEvent event) throws MgmtZooKeeperException, NoNodeException { if (LeaderState.isLeader()) { return;//from ww w .j ava 2 s .co m } else { zk.registerChangedEventWatcher(event.getPath()); Cluster cluster = (Cluster) container.get(event.getPath()); if (null == cluster) { // this znode already removed. return; } cluster.setPersistentData(zk.getData(cluster.getPath(), null)); cluster.propagateModeToHeartbeatSession(); } }
From source file:com.navercorp.nbasearc.confmaster.server.WatchEventHandler.java
License:Apache License
public void onChildEventClusterRoot(PathUtil.WatchTarget wt, WatchedEvent event) throws MgmtZooKeeperException, NoNodeException { if (LeaderState.isLeader()) { return;/* w w w . ja va2 s . c om*/ } else { zk.registerChildEventWatcher(event.getPath()); // Delete List<String> deleted = getDeletedChildren(event.getPath(), container.getAllCluster()); for (String clusterName : deleted) { container.delete(PathUtil.clusterPath(clusterName)); } // Created List<String> created = getCreatedChildren(event.getPath(), container.getAllCluster()); for (String clusterName : created) { // TDOO : eliminate null Cluster.loadClusterFromZooKeeper(context, clusterName); } } }
From source file:com.navercorp.nbasearc.confmaster.server.WatchEventHandler.java
License:Apache License
public void onChildEventFd(PathUtil.WatchTarget wt, WatchedEvent event) throws MgmtZooKeeperException { zk.registerChildEventWatcher(event.getPath()); workflowExecutor.perform(TOTAL_INSPECTION); }
From source file:com.navercorp.nbasearc.confmaster.server.WatchEventHandler.java
License:Apache License
public void onChildEventGw(PathUtil.WatchTarget wt, WatchedEvent event) throws MgmtZooKeeperException { zk.registerChildEventWatcher(event.getPath()); Gateway gw = (Gateway) container.get(event.getPath()); if (gw.getHeartbeat().equals(Constant.HB_MONITOR_YES)) { gw.turnOnUrgentHeartbeat();//from w ww .ja va 2 s.c o m } workflowExecutor.perform(COMMON_STATE_DECISION, gw); }
From source file:com.navercorp.nbasearc.confmaster.server.WatchEventHandler.java
License:Apache License
public void onChangedEventGw(PathUtil.WatchTarget wt, WatchedEvent event) throws MgmtZooKeeperException, NoNodeException { zk.registerChangedEventWatcher(event.getPath()); Gateway gw = (Gateway) container.get(event.getPath()); if (null == gw) { // this znode already removed. return;// ww w .java 2 s. c o m } Cluster cluster = (Cluster) container.getCluster(PathUtil.getClusterNameFromPath(event.getPath())); if (null == cluster) { // this znode already removed. return; } if (LeaderState.isFollower()) { Stat stat = new Stat(); gw.setPersistentData(zk.getData(gw.getPath(), stat)); gw.setZNodeVersion(stat.getVersion()); } try { gw.propagateStateToHeartbeatSession(cluster.getMode()); if (gw.getHeartbeat().equals(Constant.HB_MONITOR_YES)) { gw.turnOnUrgentHeartbeat(); } } catch (Exception e) { Logger.error("Change gateway fail. {}", gw, e); } }
From source file:com.navercorp.nbasearc.confmaster.server.WatchEventHandler.java
License:Apache License
public void onChildEventGwRoot(PathUtil.WatchTarget wt, WatchedEvent event) throws NoNodeException, MgmtZooKeeperException { if (LeaderState.isLeader()) { return;/* w w w. ja v a 2s .c o m*/ } else { zk.registerChildEventWatcher(event.getPath()); // Delete List<String> deleted = getDeletedChildren(event.getPath(), container.getGwList(wt.clusterName)); for (String gwName : deleted) { container.delete(PathUtil.gwPath(gwName, wt.clusterName)); } // Created List<String> created = getCreatedChildren(event.getPath(), container.getGwList(wt.clusterName)); for (String gwName : created) { Stat stat = new Stat(); String gwPath = PathUtil.gwPath(gwName, wt.clusterName); byte[] data = zk.getData(gwPath, stat, true); Gateway gw = new Gateway(context, wt.clusterName, gwName, data, stat.getVersion()); zk.registerChildEventWatcher(gwPath); container.put(gw.getPath(), gw); } } }