public class ContentMirrorStoreStrategy extends Object implements IndexStoreStrategy
/test/node
, the index
structure will be /oak:index/index/test/node
:
/
test
node
oak:index
index
test
node
Modifier and Type | Field and Description |
---|---|
static int |
TRAVERSING_WARN
logging a warning every
oak.traversing.warn traversed nodes. |
Constructor and Description |
---|
ContentMirrorStoreStrategy() |
ContentMirrorStoreStrategy(String indexName) |
ContentMirrorStoreStrategy(String indexName,
String pathPrefix,
boolean prependPathPrefix)
Constructs a ContentMirrorStoreStrategy
|
Modifier and Type | Method and Description |
---|---|
long |
count(Filter filter,
NodeState root,
NodeState indexMeta,
Set<String> values,
int max)
Count the occurrence of a given set of values.
|
long |
count(NodeState root,
NodeState indexMeta,
Set<String> values,
int max)
Count the occurrence of a given set of values.
|
boolean |
exists(Supplier<NodeBuilder> index,
String key)
Check whether an entry for the given key exists.
|
String |
getIndexNodeName() |
Iterable<String> |
query(Filter filter,
String name,
NodeState indexMeta,
Iterable<String> values)
Search for a given set of values.
|
Iterable<String> |
query(Filter filter,
String indexName,
NodeState indexMeta,
String indexStorageNodeName,
Iterable<String> values) |
void |
update(Supplier<NodeBuilder> index,
String path,
@Nullable String indexName,
@Nullable NodeBuilder indexMeta,
Set<String> beforeKeys,
Set<String> afterKeys)
Updates the index for the given path.
|
public static final int TRAVERSING_WARN
oak.traversing.warn
traversed nodes. Default 10000
public ContentMirrorStoreStrategy()
public ContentMirrorStoreStrategy(String indexName)
public ContentMirrorStoreStrategy(String indexName, String pathPrefix, boolean prependPathPrefix)
indexName
- name of sub node under which paths are storedpathPrefix
- path of the index in repository. Defaults to empty for indexes at root nodes i.e.
those stored directly under '/oak:index'. For non root index its the path excluding
the '/oak:index' node. For e.g. for index at '/content/oak:index/fooIndex' the
pathPrefix would be '/content'.
If this is appened to the paths returned by index then they would become absolute
path in repositoryprependPathPrefix
- Should the path prefix be added to the query resultpublic void update(Supplier<NodeBuilder> index, String path, @Nullable @Nullable String indexName, @Nullable @Nullable NodeBuilder indexMeta, Set<String> beforeKeys, Set<String> afterKeys)
IndexStoreStrategy
update
in interface IndexStoreStrategy
index
- the index node supplierpath
- path stored in the indexindexName
- the name of the index. May be null.indexMeta
- the definition of the index. May be null.beforeKeys
- keys that no longer apply to the pathafterKeys
- keys that now do apply to the pathpublic Iterable<String> query(Filter filter, String indexName, NodeState indexMeta, String indexStorageNodeName, Iterable<String> values)
public Iterable<String> query(Filter filter, String name, NodeState indexMeta, Iterable<String> values)
IndexStoreStrategy
query
in interface IndexStoreStrategy
filter
- the filter (can optionally be used for optimized query execution)name
- the name of the index (for logging)indexMeta
- the index metadata node (may not be null)values
- values to look for (null to check for property existence)public long count(NodeState root, NodeState indexMeta, Set<String> values, int max)
IndexStoreStrategy
count
in interface IndexStoreStrategy
root
- the root node (may not be null)indexMeta
- the index metadata node (may not be null)values
- values to look for (null to check for property existence)max
- the maximum value to returnpublic long count(Filter filter, NodeState root, NodeState indexMeta, Set<String> values, int max)
IndexStoreStrategy
count
in interface IndexStoreStrategy
filter
- the filter which can be used to estimate better costroot
- the root node (may not be null)indexMeta
- the index metadata node (may not be null)values
- values to look for (null to check for property existence)max
- the maximum value to returnpublic boolean exists(Supplier<NodeBuilder> index, String key)
IndexStoreStrategy
exists
in interface IndexStoreStrategy
index
- the index node supplierkey
- the keypublic String getIndexNodeName()
getIndexNodeName
in interface IndexStoreStrategy
Copyright © 2010 - 2020 Adobe. All Rights Reserved