public static Set<IndexStoreStrategy> getStrategies(boolean unique, MountInfoProvider mountInfoProvider, NodeBuilder definition, String defaultName) { Iterable<String> children = definition.getChildNodeNames(); return getStrategies(unique, mountInfoProvider, children, defaultName); }
public static Set<IndexStoreStrategy> getStrategies(boolean unique, MountInfoProvider mountInfoProvider, NodeBuilder definition, String defaultName) { Iterable<String> children = definition.getChildNodeNames(); return getStrategies(unique, mountInfoProvider, children, defaultName); }
public static Set<IndexStoreStrategy> getStrategies(boolean unique, MountInfoProvider mountInfoProvider, NodeBuilder definition, String defaultName) { Iterable<String> children = definition.getChildNodeNames(); return getStrategies(unique, mountInfoProvider, children, defaultName); }
public Iterable<String> getOldBuckets() { String head = builder.getString(PROP_HEAD_BUCKET); String previous = builder.getString(PROP_PREVIOUS_BUCKET); return Iterables.filter(builder.getChildNodeNames(), name -> !Objects.equals(name, head) && !Objects.equals(name, previous) ); }
@NotNull @Override public Iterable<String> getChildNodeNames() { return filter( builder.getChildNodeNames(), input -> input != null && getChildNode(input).exists()); }
@Nullable private NodeBuilder getVersionById(@NotNull NodeBuilder vhBuilder, @NotNull String versionId) { for (String childName : vhBuilder.getChildNodeNames()) { NodeBuilder nb = vhBuilder.getChildNode(childName); PropertyState uuid = nb.getProperty(JCR_UUID); if (uuid != null && versionId.equals(uuid.getValue(Type.STRING))) { return nb; } } return null; }
@Nullable private NodeBuilder getVersionById(@NotNull NodeBuilder vhBuilder, @NotNull String versionId) { for (String childName : vhBuilder.getChildNodeNames()) { NodeBuilder nb = vhBuilder.getChildNode(childName); PropertyState uuid = nb.getProperty(JCR_UUID); if (uuid != null && versionId.equals(uuid.getValue(Type.STRING))) { return nb; } } return null; }
private void updateEntries(NodeBuilder parent, List<AcEntry> list) { // remove old entries for (String childName : parent.getChildNodeNames()) { if (childName.charAt(0) != 'c') { parent.getChildNode(childName).remove(); } } for (AcEntry ace: list) { ace.writeToPermissionStore(parent); } }
@Override public Iterable<String> getChildNodeNames() { return FluentIterable.from(ctx.getContributingStoresForBuilders(getPath(), nodeBuilders)) .transformAndConcat(mns -> FluentIterable .from(nodeBuilders.get(mns).getChildNodeNames()) .filter(e -> belongsToStore(mns, e))); }
private List<String> getIndexDirNodes(){ List<String> names = Lists.newArrayList(); for (String name : builder.getChildNodeNames()){ if (MultiplexersLucene.isIndexDirName(name)){ names.add(name); } } return names; }
private static boolean hasAnyHiddenNodes(NodeBuilder builder){ for (String name : builder.getChildNodeNames()) { if (NodeStateUtils.isHidden(name)){ NodeBuilder childNode = builder.getChildNode(name); if (childNode.getBoolean(IndexConstants.REINDEX_RETAIN)) { continue; } return true; } } return false; }
private void markCurrentIndexFilesUnsafeForActiveDeletionFor(NodeBuilder rootBuilder, String indexPath) { NodeBuilder indexPathBuilder = getBuilderForPath(rootBuilder, indexPath); if (!TYPE_LUCENE.equals(indexPathBuilder.getProperty(TYPE_PROPERTY_NAME).getValue(STRING))) { LOG.debug("Ignoring index {} as it's not a lucene index", indexPath); return; } NodeBuilder dataNodeBuilder = indexPathBuilder.getChildNode(INDEX_DATA_CHILD_NAME); for (String indexFileName : dataNodeBuilder.getChildNodeNames()) { NodeBuilder indexFileBuilder = dataNodeBuilder.getChildNode(indexFileName); indexFileBuilder.setProperty(PROP_UNSAFE_FOR_ACTIVE_DELETION, true); } }
private NodeBuilder randomStep(NodeBuilder parent, NodeBuilder node) { int count = (int) node.getChildNodeCount(Long.MAX_VALUE); int k = rnd.nextInt(count + 1); if (k == 0) { return parent; } else { String name = get(node.getChildNodeNames(), k - 1); return node.getChildNode(name); } }
private void descent(NodeStore nodeStore, NodeBuilder nodeBuilder) throws IOException { long count = nodeBuilder.getChildNodeCount(Long.MAX_VALUE); if (count > 0) { int c = rnd.nextInt((int) count); String name = Iterables.get(nodeBuilder.getChildNodeNames(), c); modify(nodeStore, nodeBuilder.getChildNode(name)); } }
private void readMVFacets(NodeBuilder current, String prefix) { for (String childName : current.getChildNodeNames()) { NodeBuilder child = current.child(childName); super.setMultiValued(childName, child.getProperty(MULTIVALUED).getValue(Type.BOOLEAN)); if (prefix.length() > 0) { super.setMultiValued(prefix + "/" + childName, child.getProperty(MULTIVALUED).getValue(Type.BOOLEAN)); readMVFacets(child, childName); } } }
private void assertNoConflictMarker(NodeBuilder builder) { for (String name : builder.getChildNodeNames()) { if (name.equals(ConflictAnnotatingRebaseDiff.CONFLICT)) { fail("conflict marker detected"); } assertNoConflictMarker(builder.getChildNode(name)); } }
private static void addProperties(NodeBuilder builder, int count) { for (int c = 0; c < count; c++) { builder.setProperty("p-" + c, "v-" + c); } for (String child : builder.getChildNodeNames()) { addProperties(builder.getChildNode(child), count); } }
private NodeState corruptIndex(String indexPath) { NodeBuilder dir = TestUtil.child(builder, PathUtils.concat(indexPath, ":data")); for (String name : dir.getChildNodeNames()){ if (!"segments.gen".equals(name)){ dir.getChildNode(name).setProperty(PropertyStates.createProperty("jcr:data", Collections .singletonList(new ArrayBasedBlob("foo".getBytes())), Type.BINARIES)); } } TestUtil.child(builder, PathUtils.concat(indexPath, IndexDefinition.STATUS_NODE)).setProperty("foo", "bar"); return builder.getNodeState(); }
@Test public void cleanWithMargin() throws Exception{ builder.child("a").setProperty(PROP_CREATED, 100); builder.child("b").setProperty(PROP_CREATED, 200); refresh(); UniqueIndexCleaner cleaner = new UniqueIndexCleaner(MILLISECONDS, 100); cleaner.clean(builder, 200); assertThat(copyOf(builder.getChildNodeNames()), containsInAnyOrder("b")); }
@Test public void nothingCleaned() throws Exception{ builder.child("a").setProperty(PROP_CREATED, 100); builder.child("b").setProperty(PROP_CREATED, 100); refresh(); UniqueIndexCleaner cleaner = new UniqueIndexCleaner(MILLISECONDS, 1); cleaner.clean(builder, 10); assertThat(copyOf(builder.getChildNodeNames()), containsInAnyOrder("a", "b")); }