public interface ModeledFramework<T>
Modifier and Type | Method and Description |
---|---|
static <T> ModeledFrameworkBuilder<T> |
builder()
Start a new ModeledFrameworkBuilder.
|
static <T> ModeledFrameworkBuilder<T> |
builder(AsyncCuratorFramework client,
ModelSpec<T> model)
Start a new ModeledFrameworkBuilder for the given model
|
CachedModeledFramework<T> |
cached()
Use an internally created cache as a front for this modeled instance.
|
CachedModeledFramework<T> |
cached(ExecutorService executor)
Same as
cached() but allows for providing an executor service |
AsyncStage<org.apache.zookeeper.data.Stat> |
checkExists()
Check to see if the ZNode at this instance's path exists
|
CuratorOp |
checkExistsOp()
Check exists operation instance that can be passed among other operations to
inTransaction(java.util.List) to be executed as a single transaction. |
CuratorOp |
checkExistsOp(int version)
Check exists operation instance that can be passed among other operations to
inTransaction(java.util.List) to be executed as a single transaction. |
ModeledFramework<T> |
child(Object child)
Return a new Modeled Curator instance with all the same options but applying to the given child node of this Modeled Curator's
path.
|
AsyncStage<List<ZPath>> |
children()
Return the child paths of this instance's path (in no particular order)
|
AsyncStage<List<ZNode<T>>> |
childrenAsZNodes()
Return the child paths of this instance's path (in no particular order)
and deserialize into a models.
|
CuratorOp |
createOp(T model)
Create operation instance that can be passed among other operations to
inTransaction(java.util.List) to be executed as a single transaction. |
AsyncStage<Void> |
delete()
Delete the ZNode at this instance's path passing -1 for the delete version
|
AsyncStage<Void> |
delete(int version)
Delete the ZNode at this instance's path passing the given delete version
|
CuratorOp |
deleteOp()
Delete operation instance that can be passed among other operations to
inTransaction(java.util.List) to be executed as a single transaction. |
CuratorOp |
deleteOp(int version)
Delete operation instance that can be passed among other operations to
inTransaction(java.util.List) to be executed as a single transaction. |
AsyncStage<List<CuratorTransactionResult>> |
inTransaction(List<CuratorOp> operations)
Invoke ZooKeeper to commit the given operations as a single transaction.
|
ModelSpec<T> |
modelSpec()
Return the model being used
|
ModeledFramework<T> |
parent()
Return a new Modeled Curator instance with all the same options but applying to the parent node of this Modeled Curator's
path.
|
AsyncStage<T> |
read()
Read the ZNode at this instance's path and deserialize into a model
|
AsyncStage<T> |
read(org.apache.zookeeper.data.Stat storingStatIn)
Read the ZNode at this instance's path and deserialize into a model
|
AsyncStage<ZNode<T>> |
readAsZNode()
Read the ZNode at this instance's path and deserialize into a model
|
AsyncStage<String> |
set(T model)
Create (or update depending on build options) a ZNode at this instance's path with a serialized
version of the given model
|
AsyncStage<String> |
set(T model,
int version)
Create (or update depending on build options) a ZNode at this instance's path with a serialized
version of the given model
|
AsyncStage<String> |
set(T model,
org.apache.zookeeper.data.Stat storingStatIn)
Create (or update depending on build options) a ZNode at this instance's path with a serialized
form of the given model
|
AsyncStage<String> |
set(T model,
org.apache.zookeeper.data.Stat storingStatIn,
int version)
Create (or update depending on build options) a ZNode at this instance's path with a serialized
form of the given model
|
AsyncCuratorFramework |
unwrap()
Returns the client that was originally passed to
wrap(org.apache.curator.x.async.AsyncCuratorFramework, ModelSpec) or
the builder. |
AsyncStage<org.apache.zookeeper.data.Stat> |
update(T model)
Update the ZNode at this instance's path with a serialized
form of the given model passing "-1" for the update version
|
AsyncStage<org.apache.zookeeper.data.Stat> |
update(T model,
int version)
Update the ZNode at this instance's path with a serialized
form of the given model passing the given update version
|
CuratorOp |
updateOp(T model)
Update operation instance that can be passed among other operations to
inTransaction(java.util.List) to be executed as a single transaction. |
CuratorOp |
updateOp(T model,
int version)
Create operation instance that can be passed among other operations to
inTransaction(java.util.List) to be executed as a single transaction. |
VersionedModeledFramework<T> |
versioned()
Return mutator APIs that work with
Versioned containers |
ModeledFramework<T> |
withPath(ZPath path)
Return a Modeled Curator instance with all the same options but using the given path.
|
static <T> ModeledFramework<T> |
wrap(AsyncCuratorFramework client,
ModelSpec<T> model)
Return a new ModeledFramework for the given model
|
static <T> ModeledFramework<T> wrap(AsyncCuratorFramework client, ModelSpec<T> model)
client
- Curator clientmodel
- the modelstatic <T> ModeledFrameworkBuilder<T> builder(AsyncCuratorFramework client, ModelSpec<T> model)
client
- Curator clientmodel
- the modelstatic <T> ModeledFrameworkBuilder<T> builder()
ModeledFrameworkBuilder.withClient(org.apache.curator.x.async.AsyncCuratorFramework)
and ModeledFrameworkBuilder.withModelSpec(ModelSpec)
CachedModeledFramework<T> cached()
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()
and
CachedModeledFramework.close()
to start/stop
Note: 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
cached(java.util.concurrent.ExecutorService)
if you'd like to provide your own executor service.
CachedModeledFramework<T> cached(ExecutorService executor)
cached()
but allows for providing an executor serviceexecutor
- thread pool to use for the cache and for read operationsVersionedModeledFramework<T> versioned()
Versioned
containersAsyncCuratorFramework unwrap()
wrap(org.apache.curator.x.async.AsyncCuratorFramework, ModelSpec)
or
the builder.ModeledFramework<T> child(Object child)
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 implements NodeName
,
the value of nodeName()
.
child
- child node.ModeledFramework<T> parent()
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 implements NodeName
,
the value of nodeName()
.
ModeledFramework<T> withPath(ZPath path)
path
- new pathAsyncStage<String> set(T model)
model
- model to writeAsyncStage
AsyncStage<String> set(T model, int version)
model
- model to writeversion
- if data is being set instead of creating the node, the data version to useAsyncStage
AsyncStage<String> set(T model, org.apache.zookeeper.data.Stat storingStatIn)
model
- model to writestoringStatIn
- the stat for the new ZNode is stored hereAsyncStage
AsyncStage<String> set(T model, org.apache.zookeeper.data.Stat storingStatIn, int version)
model
- model to writeversion
- if data is being set instead of creating the node, the data version to usestoringStatIn
- the stat for the new ZNode is stored hereAsyncStage
AsyncStage<T> read()
AsyncStage
AsyncStage<T> read(org.apache.zookeeper.data.Stat storingStatIn)
storingStatIn
- the stat for the new ZNode is stored hereAsyncStage
AsyncStage<ZNode<T>> readAsZNode()
AsyncStage
AsyncStage<org.apache.zookeeper.data.Stat> update(T model)
model
- model to writeAsyncStage
AsyncStage<org.apache.zookeeper.data.Stat> update(T model, int version)
model
- model to writeversion
- update version to useAsyncStage
AsyncStage<Void> delete()
AsyncStage
AsyncStage<Void> delete(int version)
version
- update version to useAsyncStage
AsyncStage<org.apache.zookeeper.data.Stat> checkExists()
AsyncStage
AsyncStage<List<ZPath>> children()
AsyncStage
AsyncStage<List<ZNode<T>>> childrenAsZNodes()
ModeledFrameworkBuilder.watched()
modes
are used.AsyncStage
CuratorOp createOp(T model)
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.model
- the modelCuratorOp updateOp(T model)
inTransaction(java.util.List)
to be executed as a single transaction.model
- the modelCuratorOp updateOp(T model, int version)
inTransaction(java.util.List)
to be executed as a single transaction.model
- the modelversion
- update version to useCuratorOp deleteOp()
inTransaction(java.util.List)
to be executed as a single transaction.CuratorOp deleteOp(int version)
inTransaction(java.util.List)
to be executed as a single transaction.version
- delete version to useCuratorOp checkExistsOp()
inTransaction(java.util.List)
to be executed as a single transaction.CuratorOp checkExistsOp(int version)
inTransaction(java.util.List)
to be executed as a single transaction.version
- version to useAsyncStage<List<CuratorTransactionResult>> inTransaction(List<CuratorOp> operations)
operations
- operations that make up the transaction.Copyright © 2011–2023 The Apache Software Foundation. All rights reserved.