-
Notifications
You must be signed in to change notification settings - Fork 434
Path Cache
A Path Cache is used to watch a ZNode. Whenever a child is added, updated or removed, the Path Cache will change its state to contain the current set of children, the children's data and the children's state.
- PathChildrenCache
- PathChildrenCacheMode
- PathChildrenCacheListener
- ChildData
public PathChildrenCache(CuratorFramework client,
String path,
boolean cacheData)
Parameters:
client - the client
path - path to watch
cacheData - if true, node contents are cached in addition to the stat
The cache must be started by calling start()
. Call close()
when you are through with the cache.
There are two versions of start()
. The no-arg version gives default behavior. The other version takes an enumeration that allows you to control how the initial cache is warmed:
public enum StartMode
{
/**
* cache will _not_ be primed. i.e. it will start empty and you will receive
* events for all nodes added, etc.
*/
NORMAL,
/**
* rebuild() will be called before this method returns in
* order to get an initial view of the node.
*/
BUILD_INITIAL_CACHE,
/**
* After cache is primed with initial values (in the background) a
* PathChildrenCacheEvent.Type.INITIALIZED event will be posted
*/
POST_INITIALIZED_EVENT
}
At any time, call getCurrentData()
to get the current state of the cache. You can also register to be notified when a change occurs by calling getListenable()
and then:
public void addListener(PathChildrenCacheListener listener)
Add a change listener
Parameters:
listener - the listener
PathChildrenCache instances internally monitor a ConnectionStateListener
. If the connection state changes, the cache is reset (the PathChildrenCacheListener
will receive a RESET).
- Curator
- Javadoc
- Coverage Report
- Getting Started
- Examples
- FAQ
- Client
- Framework
-
Recipes
- Leader Latch
- Leader Election
- Shared Reentrant Lock
- Shared Lock
- Shared Reentrant Read Write Lock
- Shared Semaphore
- Multi Shared Lock
- Distributed Queue
- Distributed Id Queue
- Distributed Priority Queue
- Distributed Delay Queue
- Simple Distributed Queue
- Barrier
- Double Barrier
- Shared counter
- Distributed Atomic Long
- Path Cache
- Node Cache
- Utilities – Test Server, Test Cluster, ZKPaths, EnsurePath, QueueSharder, Reaper, ChildReaper
- Tech Notes
- Errors
- Exhibitor Integration
- Extensions
- Logging and Tracing