code: @Override
    public Stat createOrSetWithParents(String path, String data, List<ACL> acl, CreateMode createMode)
      throws InterruptedException, KeeperException
  
    {
      if(exists(path) != null)
        return setData(path, data);
  
      try
      {
        createWithParents(path, data, acl, createMode);
        return null;
      }
      catch(KeeperException.NodeExistsException e)
      {
        // this should not happen very often (race condition)
        return setData(path, data);
      }
    }
docs: Tries to create first and if the node exists, then does a setData.
  
  @return <code>null</code> if create worked, otherwise the result of setData