public interface SplittableAlgorithm
Algorithm
if it supports "clever" splitting. If this interface is not implemented for an algorithm,
the standard way through get all objects
and
delete
operations will be used in case of splitting.Algorithm
,
SplitPolicy
Modifier and Type | Interface and Description |
---|---|
static interface |
SplittableAlgorithm.SplittableAlgorithmResult
This is helper class that allows the split method to control the creation of algorithms.
|
Modifier and Type | Method and Description |
---|---|
void |
split(SplitPolicy policy,
SplittableAlgorithm.SplittableAlgorithmResult result,
int whoStays)
Split this algorithm according to the specified policy.
|
void split(SplitPolicy policy, SplittableAlgorithm.SplittableAlgorithmResult result, int whoStays) throws BucketStorageException, java.lang.IllegalArgumentException
splitAlgorithms
.policy
- the splitting policy to useresult
- object used to return results of the splitwhoStays
- identification of a partition whose objects stay in this bucket.java.lang.IllegalArgumentException
- if there are too few target bucketsBucketStorageException
- if there was a storage error during split