Following up on my conversations with Patrick and Mahadev (http://n2.nabble.com/Might-I-contribute-a-Node-design-for-the-Java-API-td4567695.html#a4567695).
This patch includes the implementation as well as unit tests. The first unit test gives a simple high level demo of using the node API.
The current implementation is simple and is only what I need withe current project I am working on. However, I am very open to any and all suggestions for improvement.
This is a proposal to support a simplified node (or File) like API into a Zookeeper tree, by wrapping the Zookeeper Java client. It is similar to Java's File API design.
Although, I'm trying to make it easier in a few spots. For example, deleting a Node recursively is done by default. I also lean toward resolving Exceptions "under the hood" when it seems appropriate. For example, if you ask a Node if it exists, and its parent doesn't even exist, you just get a false back (rather than a nasty Exception).
As for watches and ephemeral nodes, my current work does not need these things so I currently have no handling of them. But if potential users of the "Node a.k.a. File" design want these things, I'd be open to supporting them as reasonable.