Package com.linkedin.helix.store.zk

Examples of com.linkedin.helix.store.zk.ZNode


  {
    String parentPath = new File(path).getParent();
    String childName = new File(path).getName();
    addToParentChildSet(parentPath, childName);
   
    ZNode znode = _cache.get(path);
    if (znode == null)
    {
      _cache.put(path, new ZNode(path, data, stat));
    }
    else
    {
      znode.setData(data);
      znode.setStat(stat);
    }
  }
View Full Code Here


//        znode.setData(readData);
//        znode.setStat(stat);
//      }

      // recursively update children nodes if not exists
      ZNode znode = _cache.get(path);
      List<String> childNames = _accessor.getChildNames(path, 0);
      if (childNames != null && childNames.size() > 0)
      {
        for (String childName : childNames)
        {
          String childPath = path + "/" + childName;
          if (!znode.hasChild(childName))
          {
            znode.addChild(childName);
            updateRecursive(childPath);
          }
        }
      }
    }
View Full Code Here

  {
    String parentPath = new File(path).getParent();
    String childName = new File(path).getName();

    addToParentChildSet(parentPath, childName);
    ZNode znode = _cache.get(path);
    if (znode == null)
    {
      _cache.put(path, new ZNode(path, data, stat));
      fireEvents(path, EventType.NodeCreated);
    }
    else
    {
      Stat oldStat = znode.getStat();

      znode.setData(data);
      znode.setStat(stat);
      // System.out.println("\t\t--setData. path: " + path + ", data: " + data);

      if (oldStat.getCzxid() != stat.getCzxid())
      {
        fireEvents(path, EventType.NodeDeleted);
View Full Code Here

        // we still need to subscribe child change
      }

      // recursively update children nodes if not exists
      // System.out.println("subcribeChildChange: " + path);
      ZNode znode = _cache.get(path);
      List<String> childNames = _accessor.subscribeChildChanges(path, this);
      if (childNames != null && !childNames.isEmpty())
      {
        for (String childName : childNames)
        {
          if (!znode.hasChild(childName))
          {
            String childPath = path + "/" + childName;
            znode.addChild(childName);
            updateRecursive(childPath);
          }
        }
      }
    }
View Full Code Here

      // TODO: optimize it by get stat from callback
      Stat stat = new Stat();
      Object readData =
          _accessor.get(dataPath, stat, AccessOption.THROW_EXCEPTION_IFNOTEXIST);

      ZNode znode = _cache.get(dataPath);
      if (znode != null)
      {
        Stat oldStat = znode.getStat();

        // System.out.println("handleDataChange: " + dataPath + ", data: " + data);
        // System.out.println("handleDataChange: " + dataPath + ", oldCzxid: " +
        // oldStat.getCzxid() + ", newCzxid: " + stat.getCzxid()
        // + ", oldVersion: " + oldStat.getVersion() + ", newVersion: " +
        // stat.getVersion());
        znode.setData(readData);
        znode.setStat(stat);

        // if create right after delete, and zkCallback comes after create
        // no DataDelete() will be fired, instead will fire 2 DataChange()
        // see ZkClient.fireDataChangedEvents()
        if (oldStat.getCzxid() != stat.getCzxid())
View Full Code Here

    _cache = new ConcurrentHashMap<String, ZNode>();
  }

  public void addToParentChildSet(String parentPath, String childName)
  {
    ZNode znode = _cache.get(parentPath);
    if (znode != null)
    {
      znode.addChild(childName);
    }
  }
View Full Code Here

  public void addToParentChildSet(String parentPath, List<String> childNames)
  {
    if (childNames != null && !childNames.isEmpty())
    {
      ZNode znode = _cache.get(parentPath);
      if (znode != null)
      {
        znode.addChildren(childNames);
      }
    }
  }
View Full Code Here

    }
  }

  public void removeFromParentChildSet(String parentPath, String name)
  {
    ZNode zNode = _cache.get(parentPath);
    if (zNode != null)
    {
      zNode.removeChild(name);
    }
  }
View Full Code Here

      String parentPath = new File(path).getParent();
      String name = new File(path).getName();
      removeFromParentChildSet(parentPath, name);

      ZNode znode = _cache.remove(path);
      if (znode != null)
      {
        // recursively remove children nodes
        Set<String> childNames = znode.getChildSet();
        for (String childName : childNames)
        {
          String childPath = path + "/" + childName;
          purgeRecursive(childPath);
        }
View Full Code Here

    Cache<T> cache = getCache(serverPath);
    if (cache != null)
    {
      T record = null;
      ZNode znode = cache.get(serverPath);

      if (znode != null)
      {
        // TODO: shall return a deep copy instead of reference
        record = ((T) znode.getData());
        if (stat != null)
        {
          DataTree.copyStat(znode.getStat(), stat);
        }
        return record;

      }
      else
View Full Code Here

TOP

Related Classes of com.linkedin.helix.store.zk.ZNode

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.