@Experimental public interface ClusterManagementService extends AutoCloseable
Modifier and Type | Method and Description |
---|---|
void |
close()
release any resources controlled by this service
|
<T extends AbstractConfiguration<?>> |
create(T config)
This method will create the element on all the applicable members in the cluster and persist
the configuration in the cluster configuration if persistence is enabled.
|
<T extends AbstractConfiguration<?>> |
delete(T config)
This method will delete the element on all the applicable members in the cluster and update the
configuration in the cluster configuration if persistence is enabled.
|
<A extends ClusterManagementOperation<V>,V extends OperationResult> |
get(A opType,
String opId)
Returns the status of the identified operation.
|
<T extends AbstractConfiguration<R>,R extends RuntimeInfo> |
get(T config)
This method will get a single instance of the element type in the cluster configuration, along
with additional runtime information from cluster members
|
<A extends ClusterManagementOperation<V>,V extends OperationResult> |
getFuture(A opType,
String opId)
Returns a
CompletableFuture that provides a synchronous way to get the result of a
completed operation. |
boolean |
isConnected()
Test to see if this instance of ClusterManagementService retrieved from the client side is
properly connected to the locator or not
|
<A extends ClusterManagementOperation<V>,V extends OperationResult> |
list(A opType)
This method will list the status of all asynchronous cluster management operations in progress
or recently completed.
|
<T extends AbstractConfiguration<R>,R extends RuntimeInfo> |
list(T filter)
This method will list instances of the element type in the cluster configuration, along with
additional runtime information from cluster members
|
<A extends ClusterManagementOperation<V>,V extends OperationResult> |
start(A op)
This method will launch a cluster management operation asynchronously.
|
<T extends AbstractConfiguration<?>> |
update(T config)
This method will update the element on all the applicable members in the cluster and persist
the updated configuration in the cluster configuration if persistence is enabled.
|
<T extends AbstractConfiguration<?>> ClusterManagementRealizationResult create(T config)
T
- the type of AbstractConfiguration
to createconfig
- this holds the configuration attributes of the element to be created on the
cluster, as well as the group this config belongs toClusterManagementRealizationResult
indicating the success of the creationClusterManagementRealizationException
- if unsuccessful<T extends AbstractConfiguration<?>> ClusterManagementRealizationResult delete(T config)
T
- the type of AbstractConfiguration
to deleteconfig
- this holds the name or id of the element to be deleted on the clusterClusterManagementRealizationResult
indicating the success of the deletionClusterManagementRealizationException
- if unsuccessful<T extends AbstractConfiguration<?>> ClusterManagementRealizationResult update(T config)
T
- the type of AbstractConfiguration
to updateconfig
- this holds the configuration attributes of the element to be updated on the
cluster, as well as the group this config belongs toClusterManagementRealizationResult
indicating the success of the updateClusterManagementRealizationException
- if unsuccessful<T extends AbstractConfiguration<R>,R extends RuntimeInfo> ClusterManagementListResult<T,R> list(T filter)
T
- the type of AbstractConfiguration
to listR
- the type of RuntimeInfo
used by the AbstractConfiguration
filter
- the filterable attributes are used to identify the elements to list. Any
non-filterable attributes will be ignored.ClusterManagementListResult
holding a list of matching instances in
ClusterManagementListResult.getResult()
ClusterManagementException
- if unsuccessful<T extends AbstractConfiguration<R>,R extends RuntimeInfo> ClusterManagementGetResult<T,R> get(T config)
T
- the type of AbstractConfiguration
to getR
- the type of RuntimeInfo
used by the AbstractConfiguration
config
- this holds the name or id of the element to be retrievedClusterManagementGetResult
ClusterManagementException
- if unsuccessful or, no matching element is found, or
multiple matches are found<A extends ClusterManagementOperation<V>,V extends OperationResult> ClusterManagementOperationResult<A,V> start(A op)
A
- the operation type (a subclass of ClusterManagementOperation
V
- the return type of the operationop
- the operation plus any parameters.ClusterManagementOperationResult
holding a CompletableFuture
(if the
operation was launched successfully) or an error code otherwise.ClusterManagementException
- if unsuccessful<A extends ClusterManagementOperation<V>,V extends OperationResult> ClusterManagementOperationResult<A,V> get(A opType, String opId)
A
- the operation type (a subclass of ClusterManagementOperation
V
- the return type of the operationopType
- the type of the operation to getopId
- the operationId of a previously started operation<A extends ClusterManagementOperation<V>,V extends OperationResult> CompletableFuture<ClusterManagementOperationResult<A,V>> getFuture(A opType, String opId)
CompletableFuture
that provides a synchronous way to get the result of a
completed operation.A
- the operation type (a subclass of ClusterManagementOperation
V
- the return type of the operationopType
- the type of the operation to getopId
- the operationId of a previously started operation<A extends ClusterManagementOperation<V>,V extends OperationResult> ClusterManagementListOperationsResult<A,V> list(A opType)
A
- the operation type (a subclass of ClusterManagementOperation
V
- the return type of the operationopType
- the operation type to listClusterManagementOperationResult
ClusterManagementException
- if unsuccessfulboolean isConnected()
void close()
close
in interface AutoCloseable