use of org.apache.jackrabbit.commons.flat.TreeManager in project jackrabbit by apache.
the class ItemSequenceTest method testEmptyNodeSequence.
public void testEmptyNodeSequence() throws RepositoryException {
Comparator<String> order = Rank.<String>comparableComparator();
TreeManager treeManager = new BTreeManager(testNode, 5, 10, order, true);
NodeSequence nodes = ItemSequence.createNodeSequence(treeManager, errorHandler);
Iterator<Node> nodeIt = nodes.iterator();
assertTrue(nodeIt.hasNext());
assertTrue(treeManager.isRoot(nodeIt.next()));
assertFalse(nodeIt.hasNext());
checkTreeProperty(testNode, 5, 10, order);
checkOrder(nodes, order);
assertEmpty(nodes);
}
use of org.apache.jackrabbit.commons.flat.TreeManager in project jackrabbit by apache.
the class ItemSequenceTest method testNodeSequence.
public void testNodeSequence() throws RepositoryException, IOException {
Comparator<String> order = Rank.<String>comparableComparator();
TreeManager treeManager = new BTreeManager(testNode, 5, 10, order, true);
NodeSequence nodes = ItemSequence.createNodeSequence(treeManager, errorHandler);
List<String> words = loadWords();
Collections.shuffle(words);
addAll(nodes, words);
checkTreeProperty(testNode, 5, 10, order);
checkOrder(nodes, order);
Collections.shuffle(words);
checkLookup(nodes, words);
Collections.shuffle(words);
List<String> toRemove = take(words.size() / 5, words);
removeAll(nodes, toRemove);
checkNotFound(nodes, toRemove);
checkLookup(nodes, words);
removeAll(nodes, words);
assertEmpty(nodes);
}
use of org.apache.jackrabbit.commons.flat.TreeManager in project jackrabbit by apache.
the class ItemSequenceTest method testSingletonPropertySequence.
public void testSingletonPropertySequence() throws RepositoryException {
Comparator<String> order = Rank.<String>comparableComparator();
TreeManager treeManager = new BTreeManager(testNode, 2, 4, order, true);
PropertySequence properties = ItemSequence.createPropertySequence(treeManager, errorHandler);
ValueFactory vFactory = testNode.getSession().getValueFactory();
properties.addProperty("key", vFactory.createValue("key_"));
assertTrue(properties.hasItem("key"));
Iterator<Property> propertyIt = properties.iterator();
assertTrue(propertyIt.hasNext());
assertEquals("key", propertyIt.next().getName());
assertFalse(propertyIt.hasNext());
properties.removeProperty("key");
assertEmpty(properties);
}
use of org.apache.jackrabbit.commons.flat.TreeManager in project jackrabbit by apache.
the class GroupImpl method getPropertySequence.
static PropertySequence getPropertySequence(Node nMembers, UserManagerImpl userManager) throws RepositoryException {
Comparator<String> order = Rank.comparableComparator();
int maxChildren = userManager.getMemberSplitSize();
int minChildren = maxChildren / 2;
TreeManager treeManager = new BTreeManager(nMembers, minChildren, maxChildren, order, userManager.isAutoSave());
return ItemSequence.createPropertySequence(treeManager);
}
use of org.apache.jackrabbit.commons.flat.TreeManager in project jackrabbit by apache.
the class ItemSequenceTest method testPropertySequence.
public void testPropertySequence() throws RepositoryException, IOException {
Comparator<String> order = Rank.<String>comparableComparator();
TreeManager treeManager = new BTreeManager(testNode, 2, 4, order, true);
PropertySequence properties = ItemSequence.createPropertySequence(treeManager, errorHandler);
List<String> words = loadWords();
Collections.shuffle(words);
ValueFactory vFactory = testNode.getSession().getValueFactory();
addAll(properties, words, vFactory);
checkTreeProperty(testNode, 2, 4, order);
Collections.shuffle(words);
checkLookup(properties, words);
Collections.shuffle(words);
List<String> toRemove = take(words.size() / 5, words);
removeAll(properties, toRemove);
checkNotFound(properties, toRemove);
checkLookup(properties, words);
removeAll(properties, words);
assertEmpty(properties);
}
Aggregations