Class ModeledFrameworkImpl<T>
- All Implemented Interfaces:
ModeledFramework<T>
-
Method Summary
Modifier and TypeMethodDescriptionstatic <T> ModeledFrameworkImpl
<T> build
(AsyncCuratorFramework client, ModelSpec<T> model, WatchMode watchMode, UnaryOperator<org.apache.zookeeper.WatchedEvent> watcherFilter, UnhandledErrorListener unhandledErrorListener, UnaryOperator<CuratorEvent> resultFilter, Set<ModeledOptions> modeledOptions) cached()
Use an internally created cache as a front for this modeled instance.cached
(ExecutorService executor) Same asModeledFramework.cached()
but allows for providing an executor serviceAsyncStage
<org.apache.zookeeper.data.Stat> Check to see if the ZNode at this instance's path existsCheck exists operation instance that can be passed among other operations toModeledFramework.inTransaction(java.util.List)
to be executed as a single transaction.checkExistsOp
(int version) Check exists operation instance that can be passed among other operations toModeledFramework.inTransaction(java.util.List)
to be executed as a single transaction.Return a new Modeled Curator instance with all the same options but applying to the given child node of this Modeled Curator's path.children()
Return the child paths of this instance's path (in no particular order)AsyncStage
<List<ZNode<T>>> Return the child paths of this instance's path (in no particular order) and deserialize into a models.Create operation instance that can be passed among other operations toModeledFramework.inTransaction(java.util.List)
to be executed as a single transaction.delete()
Delete the ZNode at this instance's path passing -1 for the delete versiondelete
(int version) Delete the ZNode at this instance's path passing the given delete versiondeleteOp()
Delete operation instance that can be passed among other operations toModeledFramework.inTransaction(java.util.List)
to be executed as a single transaction.deleteOp
(int version) Delete operation instance that can be passed among other operations toModeledFramework.inTransaction(java.util.List)
to be executed as a single transaction.inTransaction
(List<CuratorOp> operations) Invoke ZooKeeper to commit the given operations as a single transaction.static boolean
isCompressed
(Set<CreateOption> createOptions) Return the model being usedparent()
Return a new Modeled Curator instance with all the same options but applying to the parent node of this Modeled Curator's path.read()
Read the ZNode at this instance's path and deserialize into a modelread
(org.apache.zookeeper.data.Stat storingStatIn) Read the ZNode at this instance's path and deserialize into a modelAsyncStage
<ZNode<T>> Read the ZNode at this instance's path and deserialize into a modelCreate (or update depending on build options) a ZNode at this instance's path with a serialized version of the given modelCreate (or update depending on build options) a ZNode at this instance's path with a serialized version of the given modelCreate (or update depending on build options) a ZNode at this instance's path with a serialized form of the given modelCreate (or update depending on build options) a ZNode at this instance's path with a serialized form of the given modelunwrap()
Returns the client that was originally passed toModeledFramework.wrap(org.apache.curator.x.async.AsyncCuratorFramework, ModelSpec)
or the builder.AsyncStage
<org.apache.zookeeper.data.Stat> Update the ZNode at this instance's path with a serialized form of the given model passing "-1" for the update versionAsyncStage
<org.apache.zookeeper.data.Stat> Update the ZNode at this instance's path with a serialized form of the given model passing the given update versionUpdate operation instance that can be passed among other operations toModeledFramework.inTransaction(java.util.List)
to be executed as a single transaction.Create operation instance that can be passed among other operations toModeledFramework.inTransaction(java.util.List)
to be executed as a single transaction.Return mutator APIs that work withVersioned
containersReturn a Modeled Curator instance with all the same options but using the given path.
-
Method Details
-
build
public static <T> ModeledFrameworkImpl<T> build(AsyncCuratorFramework client, ModelSpec<T> model, WatchMode watchMode, UnaryOperator<org.apache.zookeeper.WatchedEvent> watcherFilter, UnhandledErrorListener unhandledErrorListener, UnaryOperator<CuratorEvent> resultFilter, Set<ModeledOptions> modeledOptions) -
cached
Description copied from interface:ModeledFramework
Use an internally created cache as a front for this modeled instance. All read APIs use the internal cache. i.e. read calls always use the cache instead of making direct queries. Note: you must call
CachedModeledFramework.start()
andCachedModeledFramework.close()
to start/stopNote: the root node (the main path of the model) is not cached. i.e. only nodes below the root are cached.
Note: this method internally allocates an Executor for the cache and read methods. Use
ModeledFramework.cached(java.util.concurrent.ExecutorService)
if you'd like to provide your own executor service.- Specified by:
cached
in interfaceModeledFramework<T>
- Returns:
- wrapped instance
-
cached
Description copied from interface:ModeledFramework
Same asModeledFramework.cached()
but allows for providing an executor service- Specified by:
cached
in interfaceModeledFramework<T>
- Parameters:
executor
- thread pool to use for the cache and for read operations- Returns:
- wrapped instance
-
versioned
Description copied from interface:ModeledFramework
Return mutator APIs that work withVersioned
containers- Specified by:
versioned
in interfaceModeledFramework<T>
- Returns:
- wrapped instance
-
modelSpec
Description copied from interface:ModeledFramework
Return the model being used- Specified by:
modelSpec
in interfaceModeledFramework<T>
- Returns:
- model
-
unwrap
Description copied from interface:ModeledFramework
Returns the client that was originally passed toModeledFramework.wrap(org.apache.curator.x.async.AsyncCuratorFramework, ModelSpec)
or the builder.- Specified by:
unwrap
in interfaceModeledFramework<T>
- Returns:
- original client
-
set
Description copied from interface:ModeledFramework
Create (or update depending on build options) a ZNode at this instance's path with a serialized version of the given model- Specified by:
set
in interfaceModeledFramework<T>
- Parameters:
item
- model to write- Returns:
- AsyncStage
- See Also:
-
set
Description copied from interface:ModeledFramework
Create (or update depending on build options) a ZNode at this instance's path with a serialized form of the given model- Specified by:
set
in interfaceModeledFramework<T>
- Parameters:
item
- model to writestoringStatIn
- the stat for the new ZNode is stored here- Returns:
- AsyncStage
- See Also:
-
set
Description copied from interface:ModeledFramework
Create (or update depending on build options) a ZNode at this instance's path with a serialized version of the given model- Specified by:
set
in interfaceModeledFramework<T>
- Parameters:
item
- model to writeversion
- if data is being set instead of creating the node, the data version to use- Returns:
- AsyncStage
- See Also:
-
set
Description copied from interface:ModeledFramework
Create (or update depending on build options) a ZNode at this instance's path with a serialized form of the given model- Specified by:
set
in interfaceModeledFramework<T>
- Parameters:
item
- model to writestoringStatIn
- the stat for the new ZNode is stored hereversion
- if data is being set instead of creating the node, the data version to use- Returns:
- AsyncStage
- See Also:
-
read
Description copied from interface:ModeledFramework
Read the ZNode at this instance's path and deserialize into a model- Specified by:
read
in interfaceModeledFramework<T>
- Returns:
- AsyncStage
- See Also:
-
read
Description copied from interface:ModeledFramework
Read the ZNode at this instance's path and deserialize into a model- Specified by:
read
in interfaceModeledFramework<T>
- Parameters:
storingStatIn
- the stat for the new ZNode is stored here- Returns:
- AsyncStage
- See Also:
-
readAsZNode
Description copied from interface:ModeledFramework
Read the ZNode at this instance's path and deserialize into a model- Specified by:
readAsZNode
in interfaceModeledFramework<T>
- Returns:
- AsyncStage
- See Also:
-
update
Description copied from interface:ModeledFramework
Update the ZNode at this instance's path with a serialized form of the given model passing "-1" for the update version- Specified by:
update
in interfaceModeledFramework<T>
- Parameters:
item
- model to write- Returns:
- AsyncStage
- See Also:
-
update
Description copied from interface:ModeledFramework
Update the ZNode at this instance's path with a serialized form of the given model passing the given update version- Specified by:
update
in interfaceModeledFramework<T>
- Parameters:
item
- model to writeversion
- update version to use- Returns:
- AsyncStage
- See Also:
-
checkExists
Description copied from interface:ModeledFramework
Check to see if the ZNode at this instance's path exists- Specified by:
checkExists
in interfaceModeledFramework<T>
- Returns:
- AsyncStage
- See Also:
-
delete
Description copied from interface:ModeledFramework
Delete the ZNode at this instance's path passing -1 for the delete version- Specified by:
delete
in interfaceModeledFramework<T>
- Returns:
- AsyncStage
- See Also:
-
delete
Description copied from interface:ModeledFramework
Delete the ZNode at this instance's path passing the given delete version- Specified by:
delete
in interfaceModeledFramework<T>
- Parameters:
version
- update version to use- Returns:
- AsyncStage
- See Also:
-
children
Description copied from interface:ModeledFramework
Return the child paths of this instance's path (in no particular order)- Specified by:
children
in interfaceModeledFramework<T>
- Returns:
- AsyncStage
- See Also:
-
childrenAsZNodes
Description copied from interface:ModeledFramework
Return the child paths of this instance's path (in no particular order) and deserialize into a models. IMPORTANT: this results in a ZooKeeper query for each child node returned. i.e. if the initial children() call returns 10 nodes an additional 10 ZooKeeper queries are made to get the data. Note: cannot be used if any of theModeledFrameworkBuilder.watched()
modes are used.- Specified by:
childrenAsZNodes
in interfaceModeledFramework<T>
- Returns:
- AsyncStage
- See Also:
-
parent
Description copied from interface:ModeledFramework
Return a new Modeled Curator instance with all the same options but applying to the parent node of this Modeled Curator's path. E.g. if this Modeled Curator instance applies to "/a/b/c", calling
modeled.parent()
returns an instance that applies to "/a/b".The replacement is the
toString()
value of child or, if it implementsNodeName
, the value ofnodeName()
.- Specified by:
parent
in interfaceModeledFramework<T>
- Returns:
- new Modeled Curator instance
-
child
Description copied from interface:ModeledFramework
Return a new Modeled Curator instance with all the same options but applying to the given child node of this Modeled Curator's path. E.g. if this Modeled Curator instance applies to "/a/b", calling
modeled.at("c")
returns an instance that applies to "/a/b/c".The replacement is the
toString()
value of child or, if it implementsNodeName
, the value ofnodeName()
.- Specified by:
child
in interfaceModeledFramework<T>
- Parameters:
child
- child node.- Returns:
- new Modeled Curator instance
-
withPath
Description copied from interface:ModeledFramework
Return a Modeled Curator instance with all the same options but using the given path.- Specified by:
withPath
in interfaceModeledFramework<T>
- Parameters:
path
- new path- Returns:
- new Modeled Curator instance
-
isCompressed
-
createOp
Description copied from interface:ModeledFramework
Create operation instance that can be passed among other operations toModeledFramework.inTransaction(java.util.List)
to be executed as a single transaction. Note: due to ZooKeeper transaction limits, this is a _not_ a "set or update" operation but only a create operation and will generate an error if the node already exists.- Specified by:
createOp
in interfaceModeledFramework<T>
- Parameters:
model
- the model- Returns:
- operation
-
updateOp
Description copied from interface:ModeledFramework
Update operation instance that can be passed among other operations toModeledFramework.inTransaction(java.util.List)
to be executed as a single transaction.- Specified by:
updateOp
in interfaceModeledFramework<T>
- Parameters:
model
- the model- Returns:
- operation
-
updateOp
Description copied from interface:ModeledFramework
Create operation instance that can be passed among other operations toModeledFramework.inTransaction(java.util.List)
to be executed as a single transaction.- Specified by:
updateOp
in interfaceModeledFramework<T>
- Parameters:
model
- the modelversion
- update version to use- Returns:
- operation
-
deleteOp
Description copied from interface:ModeledFramework
Delete operation instance that can be passed among other operations toModeledFramework.inTransaction(java.util.List)
to be executed as a single transaction.- Specified by:
deleteOp
in interfaceModeledFramework<T>
- Returns:
- operation
-
deleteOp
Description copied from interface:ModeledFramework
Delete operation instance that can be passed among other operations toModeledFramework.inTransaction(java.util.List)
to be executed as a single transaction.- Specified by:
deleteOp
in interfaceModeledFramework<T>
- Parameters:
version
- delete version to use- Returns:
- operation
-
checkExistsOp
Description copied from interface:ModeledFramework
Check exists operation instance that can be passed among other operations toModeledFramework.inTransaction(java.util.List)
to be executed as a single transaction.- Specified by:
checkExistsOp
in interfaceModeledFramework<T>
- Returns:
- operation
-
checkExistsOp
Description copied from interface:ModeledFramework
Check exists operation instance that can be passed among other operations toModeledFramework.inTransaction(java.util.List)
to be executed as a single transaction.- Specified by:
checkExistsOp
in interfaceModeledFramework<T>
- Parameters:
version
- version to use- Returns:
- operation
-
inTransaction
Description copied from interface:ModeledFramework
Invoke ZooKeeper to commit the given operations as a single transaction.- Specified by:
inTransaction
in interfaceModeledFramework<T>
- Parameters:
operations
- operations that make up the transaction.- Returns:
- AsyncStage instance for managing the completion
-