public class MerkleTrees extends java.lang.Object implements java.lang.Iterable<java.util.Map.Entry<Range<Token>,MerkleTree>>
| Modifier and Type | Class and Description |
|---|---|
static class |
MerkleTrees.MerkleTreesSerializer |
class |
MerkleTrees.TreeRangeIterator |
| Modifier and Type | Field and Description |
|---|---|
static MerkleTrees.MerkleTreesSerializer |
serializer |
| Constructor and Description |
|---|
MerkleTrees(IPartitioner partitioner)
Creates empty MerkleTrees object.
|
| Modifier and Type | Method and Description |
|---|---|
MerkleTree |
addMerkleTree(int maxsize,
byte hashdepth,
Range<Token> range) |
MerkleTree |
addMerkleTree(int maxsize,
Range<Token> range)
Add a MerkleTree with the defined size and range.
|
void |
addMerkleTrees(int maxsize,
java.util.Collection<Range<Token>> ranges)
Add merkle tree's with the defined maxsize and ranges.
|
static java.util.List<Range<Token>> |
difference(MerkleTrees ltree,
MerkleTrees rtree)
Get the differences between the two sets of MerkleTrees.
|
MerkleTree.TreeRange |
get(Token t)
Get the MerkleTree.Range responsible for the given token.
|
MerkleTree |
getMerkleTree(Range<Token> range)
Get the MerkleTree responsible for the given token range.
|
byte[] |
hash(Range<Token> range) |
void |
init()
Init all MerkleTree's with an even tree distribution.
|
void |
init(Range<Token> range)
Init a selected MerkleTree with an even tree distribution.
|
void |
invalidate(Token t)
Invalidate the MerkleTree responsible for the given token.
|
MerkleTrees.TreeRangeIterator |
invalids()
Get an iterator for all the invalids generated by the MerkleTrees.
|
java.util.Iterator<java.util.Map.Entry<Range<Token>,MerkleTree>> |
iterator()
Get an iterator of all ranges and their MerkleTrees.
|
void |
logRowCountPerLeaf(org.slf4j.Logger logger)
Log the row count per leaf for all MerkleTrees.
|
void |
logRowSizePerLeaf(org.slf4j.Logger logger)
Log the row size per leaf for all MerkleTrees.
|
void |
maxsize(Range<Token> range,
int maxsize) |
IPartitioner |
partitioner()
Get the partitioner in use.
|
java.util.Collection<Range<Token>> |
ranges()
Get the ranges that these merkle trees covers.
|
long |
rowCount() |
long |
size() |
boolean |
split(Token t)
Split the MerkleTree responsible for the given token.
|
public static final MerkleTrees.MerkleTreesSerializer serializer
public MerkleTrees(IPartitioner partitioner)
partitioner - The partitioner to usepublic java.util.Collection<Range<Token>> ranges()
public IPartitioner partitioner()
public void addMerkleTrees(int maxsize,
java.util.Collection<Range<Token>> ranges)
maxsize - ranges - public MerkleTree addMerkleTree(int maxsize, Range<Token> range)
maxsize - range - public MerkleTree addMerkleTree(int maxsize, byte hashdepth, Range<Token> range)
public MerkleTree.TreeRange get(Token t)
t - public void init()
public void init(Range<Token> range)
range - public boolean split(Token t)
t - public void invalidate(Token t)
t - public MerkleTree getMerkleTree(Range<Token> range)
range - public long size()
public MerkleTrees.TreeRangeIterator invalids()
public void logRowCountPerLeaf(org.slf4j.Logger logger)
logger - public void logRowSizePerLeaf(org.slf4j.Logger logger)
logger - public java.util.Iterator<java.util.Map.Entry<Range<Token>,MerkleTree>> iterator()
iterator in interface java.lang.Iterable<java.util.Map.Entry<Range<Token>,MerkleTree>>public long rowCount()
public static java.util.List<Range<Token>> difference(MerkleTrees ltree, MerkleTrees rtree)
ltree - rtree - Copyright © 2018 The Apache Software Foundation