congrats Icon
New! Announcing Tabnine Chat Beta
Learn More
Tabnine Logo
ContentMirrorStoreStrategy
Code IndexAdd Tabnine to your IDE (free)

How to use
ContentMirrorStoreStrategy
in
org.apache.jackrabbit.oak.plugins.index.property.strategy

Best Java code snippets using org.apache.jackrabbit.oak.plugins.index.property.strategy.ContentMirrorStoreStrategy (Showing top 20 results out of 315)

origin: apache/jackrabbit-oak

private static IndexStoreStrategy newMirrorStrategy(String defaultName) {
  if (INDEX_CONTENT_NODE_NAME.equals(defaultName)) {
    return MIRROR;
  } else {
    return new ContentMirrorStoreStrategy(defaultName);
  }
}
origin: apache/jackrabbit-oak

@Override
public Iterable<String> query(final Filter filter, final String name,
    final NodeState indexMeta, final Iterable<String> values) {
  return query(filter, name, indexMeta, this.indexName, values);
}
origin: apache/jackrabbit-oak

@Override
public long count(NodeState root, NodeState indexMeta, Set<String> values, int max) {
  return count(null, root, indexMeta, this.indexName, values, max);
}
origin: org.apache.jackrabbit/oak-core

@Override
public void update(
    Supplier<NodeBuilder> index, String path,
    @Nullable final String indexName,
    @Nullable final NodeBuilder indexMeta,
    Set<String> beforeKeys, Set<String> afterKeys) {
  for (String key : beforeKeys) {
    remove(index.get(), key, path);
  }
  for (String key : afterKeys) {
    insert(index.get(), key, path);
  }
}
origin: apache/jackrabbit-oak

  private Iterable<String> queryBucket(Filter filter, String indexName, NodeState propIndexNode,
                     String bucketPropName, Set<String> values) {
    String bucketName = propIndexNode.getString(bucketPropName);
    if (bucketName == null) {
      return Collections.emptyList();
    }

    NodeState bucket = propIndexNode.getChildNode(bucketName);
    if (bucket.getChildNodeCount(1) == 0) {
      return Collections.emptyList();
    }

    ContentMirrorStoreStrategy s = new ContentMirrorStoreStrategy(bucketName, pathPrefix, prependPathPrefix);
    return s.query(filter, indexName, propIndexNode, bucketName, values);
  }
}
origin: apache/jackrabbit-oak

  uniquenessConstraintValidator.add(propertyRelativePath, afterKeys);
} else {
  ContentMirrorStoreStrategy s = new ContentMirrorStoreStrategy();
  s.update(ofInstance(indexNode),
      nodePath,
      null,
origin: org.apache.sling/org.apache.sling.testing.sling-mock-oak

private void insert(NodeBuilder index, String key, String value) {
  ApproximateCounter.adjustCountSync(index, 1);
  // NodeBuilder builder = index.child(key);
  NodeBuilder builder = fetchKeyNode(index, key);
  ApproximateCounter.adjustCountSync(builder, 1);
  for (String name : PathUtils.elements(value)) {
    builder = builder.child(name);
  }
  builder.setProperty("match", true);
}
origin: apache/jackrabbit-oak

  @Override
  public Iterator<String> iterator() {
    PathIterator it = new PathIterator(filter, indexName, pathPrefix, prependPathPrefix);
    if (values == null) {
      it.setPathContainsValue(true);
      it.enqueue(getChildNodeEntries(index).iterator());
    } else {
      for (String p : values) {
        NodeState property = index.getChildNode(p);
        if (property.exists()) {
          // we have an entry for this value, so use it
          it.enqueue(Iterators.singletonIterator(
              new MemoryChildNodeEntry("", property)));
        }
      }
    }
    return it;
  }
};
origin: apache/jackrabbit-oak

private void remove(NodeBuilder index, String key, String value) {
  ApproximateCounter.adjustCountSync(index, -1);
  NodeBuilder builder = index.getChildNode(key);
  if (builder.exists()) {
    ApproximateCounter.adjustCountSync(builder, -1);
    // Collect all builders along the given path
    Deque<NodeBuilder> builders = newArrayDeque();
    builders.addFirst(builder);
    // Descend to the correct location in the index tree
    for (String name : PathUtils.elements(value)) {
      builder = builder.getChildNode(name);
      builders.addFirst(builder);
    }
    // Drop the match value,  if present
    if (builder.exists()) {
      builder.removeProperty("match");
    }
    // Prune all index nodes that are no longer needed
    prune(index, builders, key);
  }
}
origin: org.apache.jackrabbit/oak-lucene

  private Iterable<String> queryBucket(Filter filter, String indexName, NodeState propIndexNode,
                     String bucketPropName, Set<String> values) {
    String bucketName = propIndexNode.getString(bucketPropName);
    if (bucketName == null) {
      return Collections.emptyList();
    }

    NodeState bucket = propIndexNode.getChildNode(bucketName);
    if (bucket.getChildNodeCount(1) == 0) {
      return Collections.emptyList();
    }

    ContentMirrorStoreStrategy s = new ContentMirrorStoreStrategy(bucketName, pathPrefix, prependPathPrefix);
    return s.query(filter, indexName, propIndexNode, bucketName, values);
  }
}
origin: org.apache.jackrabbit/oak-lucene

  uniquenessConstraintValidator.add(propertyRelativePath, afterKeys);
} else {
  ContentMirrorStoreStrategy s = new ContentMirrorStoreStrategy();
  s.update(ofInstance(indexNode),
      nodePath,
      null,
origin: org.apache.sling/org.apache.sling.testing.sling-mock-oak

@Override
public void update(
    Supplier<NodeBuilder> index, String path,
    @Nullable final String indexName,
    @Nullable final NodeBuilder indexMeta,
    Set<String> beforeKeys, Set<String> afterKeys) {
  for (String key : beforeKeys) {
    remove(index.get(), key, path);
  }
  for (String key : afterKeys) {
    insert(index.get(), key, path);
  }
}
origin: apache/jackrabbit-oak

private void insert(NodeBuilder index, String key, String value) {
  ApproximateCounter.adjustCountSync(index, 1);
  // NodeBuilder builder = index.child(key);
  NodeBuilder builder = fetchKeyNode(index, key);
  ApproximateCounter.adjustCountSync(builder, 1);
  for (String name : PathUtils.elements(value)) {
    builder = builder.child(name);
  }
  builder.setProperty("match", true);
}
origin: org.apache.jackrabbit/oak-core

  @Override
  public Iterator<String> iterator() {
    PathIterator it = new PathIterator(filter, indexName, pathPrefix, prependPathPrefix);
    if (values == null) {
      it.setPathContainsValue(true);
      it.enqueue(getChildNodeEntries(index).iterator());
    } else {
      for (String p : values) {
        NodeState property = index.getChildNode(p);
        if (property.exists()) {
          // we have an entry for this value, so use it
          it.enqueue(Iterators.singletonIterator(
              new MemoryChildNodeEntry("", property)));
        }
      }
    }
    return it;
  }
};
origin: org.apache.sling/org.apache.sling.testing.sling-mock-oak

private void remove(NodeBuilder index, String key, String value) {
  ApproximateCounter.adjustCountSync(index, -1);
  NodeBuilder builder = index.getChildNode(key);
  if (builder.exists()) {
    ApproximateCounter.adjustCountSync(builder, -1);
    // Collect all builders along the given path
    Deque<NodeBuilder> builders = newArrayDeque();
    builders.addFirst(builder);
    // Descend to the correct location in the index tree
    for (String name : PathUtils.elements(value)) {
      builder = builder.getChildNode(name);
      builders.addFirst(builder);
    }
    // Drop the match value,  if present
    if (builder.exists()) {
      builder.removeProperty("match");
    }
    // Prune all index nodes that are no longer needed
    prune(index, builders, key);
  }
}
origin: org.apache.jackrabbit/oak-core

private static IndexStoreStrategy newMirrorStrategy(String defaultName) {
  if (INDEX_CONTENT_NODE_NAME.equals(defaultName)) {
    return MIRROR;
  } else {
    return new ContentMirrorStoreStrategy(defaultName);
  }
}
origin: apache/jackrabbit-oak

@Override
public void update(
    Supplier<NodeBuilder> index, String path,
    @Nullable final String indexName,
    @Nullable final NodeBuilder indexMeta,
    Set<String> beforeKeys, Set<String> afterKeys) {
  for (String key : beforeKeys) {
    remove(index.get(), key, path);
  }
  for (String key : afterKeys) {
    insert(index.get(), key, path);
  }
}
origin: org.apache.jackrabbit/oak-core

@Override
public Iterable<String> query(final Filter filter, final String name,
    final NodeState indexMeta, final Iterable<String> values) {
  return query(filter, name, indexMeta, this.indexName, values);
}
origin: apache/jackrabbit-oak

@Override
public long count(final Filter filter, NodeState root, NodeState indexMeta, Set<String> values, int max) {
  return count(filter, root, indexMeta, this.indexName, values, max);
}
origin: org.apache.jackrabbit/oak-core

private void insert(NodeBuilder index, String key, String value) {
  ApproximateCounter.adjustCountSync(index, 1);
  // NodeBuilder builder = index.child(key);
  NodeBuilder builder = fetchKeyNode(index, key);
  ApproximateCounter.adjustCountSync(builder, 1);
  for (String name : PathUtils.elements(value)) {
    builder = builder.child(name);
  }
  builder.setProperty("match", true);
}
org.apache.jackrabbit.oak.plugins.index.property.strategyContentMirrorStoreStrategy

Javadoc

An IndexStoreStrategy implementation that saves the nodes under a hierarchy that mirrors the repository tree.
This should minimize the chance that concurrent updates overlap on the same content node.

For example for a node that is under /test/node, the index structure will be /oak:index/index/test/node:
 
/

Most used methods

  • <init>
    Constructs a ContentMirrorStoreStrategy
  • query
  • count
  • fetchKeyNode
    fetch from the index the key node
  • getChildNodeEntries
  • insert
  • prune
    Physically prune a list of nodes from the index
  • remove
  • update

Popular in Java

  • Parsing JSON documents to java classes using gson
  • onCreateOptionsMenu (Activity)
  • onRequestPermissionsResult (Fragment)
  • getExternalFilesDir (Context)
  • Menu (java.awt)
  • BufferedInputStream (java.io)
    A BufferedInputStream adds functionality to another input stream-namely, the ability to buffer the i
  • InputStream (java.io)
    A readable source of bytes.Most clients will use input streams that read data from the file system (
  • InetAddress (java.net)
    An Internet Protocol (IP) address. This can be either an IPv4 address or an IPv6 address, and in pra
  • Set (java.util)
    A Set is a data structure which does not allow duplicate elements.
  • StringUtils (org.apache.commons.lang)
    Operations on java.lang.String that arenull safe. * IsEmpty/IsBlank - checks if a String contains
  • Github Copilot alternatives
Tabnine Logo
  • Products

    Search for Java codeSearch for JavaScript code
  • IDE Plugins

    IntelliJ IDEAWebStormVisual StudioAndroid StudioEclipseVisual Studio CodePyCharmSublime TextPhpStormVimGoLandRubyMineEmacsJupyter NotebookJupyter LabRiderDataGripAppCode
  • Company

    About UsContact UsCareers
  • Resources

    FAQBlogTabnine AcademyTerms of usePrivacy policyJava Code IndexJavascript Code Index
Get Tabnine for your IDE now