Class IndexUtils
- java.lang.Object
-
- org.apache.jackrabbit.oak.plugins.index.IndexUtils
-
public final class IndexUtils extends java.lang.Object
TODO document
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static Tree
createIndexDefinition(@NotNull Tree indexNode, @NotNull java.lang.String indexDefName, boolean unique, @NotNull java.lang.String[] propertyNames, @NotNull java.lang.String... declaringNodeTypeNames)
Create a new property2 index definition below the givenindexNode
.static Tree
createIndexDefinition(@NotNull Tree indexNode, @NotNull java.lang.String indexDefName, boolean unique, @NotNull java.util.Collection<java.lang.String> propertyNames, @Nullable java.util.Collection<java.lang.String> declaringNodeTypeNames, @NotNull java.lang.String propertyIndexType, @Nullable java.util.Map<java.lang.String,java.lang.String> properties)
Create a new property index definition below the givenindexNode
of the providedpropertyIndexType
.static NodeBuilder
createIndexDefinition(@NotNull NodeBuilder index, @NotNull java.lang.String indexDefName, boolean reindex, boolean unique, @NotNull java.util.Collection<java.lang.String> propertyNames, @Nullable java.util.Collection<java.lang.String> declaringNodeTypeNames)
Create a new property index definition below the givenindexNode
.static NodeBuilder
createIndexDefinition(@NotNull NodeBuilder indexNode, @NotNull java.lang.String indexDefName, boolean unique, @NotNull java.lang.Iterable<java.lang.String> propertyNames, @Nullable java.lang.String[] declaringNodeTypeNames, @NotNull java.lang.String propertyIndexType, java.util.Map<java.lang.String,java.lang.String> properties)
Create a new property index definition below the givenindexNode
of the providedpropertyIndexType
.static void
createReferenceIndex(@NotNull NodeBuilder index)
static @Nullable java.lang.String
getAsyncLaneName(NodeState idxState, java.lang.String indexPath)
static @Nullable java.lang.String
getAsyncLaneName(NodeState idxState, java.lang.String indexPath, PropertyState async)
static NodeBuilder
getOrCreateOakIndex(NodeBuilder root)
static boolean
isIndexNodeType(NodeState state)
static boolean
isIndexNodeType(NodeState state, java.lang.String typeIn)
-
-
-
Method Detail
-
getOrCreateOakIndex
public static NodeBuilder getOrCreateOakIndex(NodeBuilder root)
-
createIndexDefinition
public static NodeBuilder createIndexDefinition(@NotNull @NotNull NodeBuilder index, @NotNull @NotNull java.lang.String indexDefName, boolean reindex, boolean unique, @NotNull @NotNull java.util.Collection<java.lang.String> propertyNames, @Nullable @Nullable java.util.Collection<java.lang.String> declaringNodeTypeNames)
Create a new property index definition below the givenindexNode
.- Parameters:
index
- The oak:index node builderindexDefName
- The name of the new property index.reindex
-true
if the the reindex flag should be turned on.unique
-true
if the index is expected the assert property uniqueness.propertyNames
- The property names that should be indexed.declaringNodeTypeNames
- The declaring node type names ornull
.- Returns:
- the NodeBuilder of the new index definition.
-
createIndexDefinition
public static Tree createIndexDefinition(@NotNull @NotNull Tree indexNode, @NotNull @NotNull java.lang.String indexDefName, boolean unique, @NotNull @NotNull java.lang.String[] propertyNames, @NotNull @NotNull java.lang.String... declaringNodeTypeNames) throws RepositoryException
Create a new property2 index definition below the givenindexNode
.- Parameters:
indexNode
-indexDefName
-unique
-propertyNames
-declaringNodeTypeNames
-- Throws:
RepositoryException
-
createIndexDefinition
public static Tree createIndexDefinition(@NotNull @NotNull Tree indexNode, @NotNull @NotNull java.lang.String indexDefName, boolean unique, @NotNull @NotNull java.util.Collection<java.lang.String> propertyNames, @Nullable @Nullable java.util.Collection<java.lang.String> declaringNodeTypeNames, @NotNull @NotNull java.lang.String propertyIndexType, @Nullable @Nullable java.util.Map<java.lang.String,java.lang.String> properties) throws RepositoryException
Create a new property index definition below the givenindexNode
of the providedpropertyIndexType
.- Parameters:
indexNode
-indexDefName
-unique
-propertyNames
-declaringNodeTypeNames
-propertyIndexType
-properties
- any additional property to be added to the index definition.- Throws:
RepositoryException
-
createReferenceIndex
public static void createReferenceIndex(@NotNull @NotNull NodeBuilder index)
-
isIndexNodeType
public static boolean isIndexNodeType(NodeState state)
-
isIndexNodeType
public static boolean isIndexNodeType(NodeState state, java.lang.String typeIn)
-
createIndexDefinition
public static NodeBuilder createIndexDefinition(@NotNull @NotNull NodeBuilder indexNode, @NotNull @NotNull java.lang.String indexDefName, boolean unique, @NotNull @NotNull java.lang.Iterable<java.lang.String> propertyNames, @Nullable @Nullable java.lang.String[] declaringNodeTypeNames, @NotNull @NotNull java.lang.String propertyIndexType, java.util.Map<java.lang.String,java.lang.String> properties) throws RepositoryException
Create a new property index definition below the givenindexNode
of the providedpropertyIndexType
.- Parameters:
indexNode
- the oak:indexindexDefName
- the node for the index definitionunique
- true if uniquenesspropertyNames
- the list of properties to be indexeddeclaringNodeTypeNames
-propertyIndexType
- the type of the PropertyIndexproperties
- any additional property to be added to the index definition.- Throws:
RepositoryException
-
getAsyncLaneName
@Nullable public static @Nullable java.lang.String getAsyncLaneName(NodeState idxState, java.lang.String indexPath)
-
getAsyncLaneName
@Nullable public static @Nullable java.lang.String getAsyncLaneName(NodeState idxState, java.lang.String indexPath, PropertyState async)
-
-