Class IndexUtils


  • public final class IndexUtils
    extends Object
    TODO document
    • Method Detail

      • createIndexDefinition

        public static NodeBuilder createIndexDefinition​(@NotNull
                                                        @NotNull NodeBuilder index,
                                                        @NotNull
                                                        @NotNull String indexDefName,
                                                        boolean reindex,
                                                        boolean unique,
                                                        @NotNull
                                                        @NotNull Collection<String> propertyNames,
                                                        @Nullable
                                                        @Nullable Collection<String> declaringNodeTypeNames)
        Create a new property index definition below the given indexNode.
        Parameters:
        index - The oak:index node builder
        indexDefName - 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 or null.
        Returns:
        the NodeBuilder of the new index definition.
      • createIndexDefinition

        public static Tree createIndexDefinition​(@NotNull
                                                 @NotNull Tree indexNode,
                                                 @NotNull
                                                 @NotNull String indexDefName,
                                                 boolean unique,
                                                 @NotNull
                                                 @NotNull String[] propertyNames,
                                                 @NotNull
                                                 @NotNull String... declaringNodeTypeNames)
                                          throws RepositoryException
        Create a new property2 index definition below the given indexNode.
        Parameters:
        indexNode -
        indexDefName -
        unique -
        propertyNames -
        declaringNodeTypeNames -
        Throws:
        RepositoryException
      • createIndexDefinition

        public static Tree createIndexDefinition​(@NotNull
                                                 @NotNull Tree indexNode,
                                                 @NotNull
                                                 @NotNull String indexDefName,
                                                 boolean unique,
                                                 @NotNull
                                                 @NotNull Collection<String> propertyNames,
                                                 @Nullable
                                                 @Nullable Collection<String> declaringNodeTypeNames,
                                                 @NotNull
                                                 @NotNull String propertyIndexType,
                                                 @Nullable
                                                 @Nullable Map<String,​String> properties)
                                          throws RepositoryException
        Create a new property index definition below the given indexNode of the provided propertyIndexType.
        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,
                                              String typeIn)
      • createIndexDefinition

        public static NodeBuilder createIndexDefinition​(@NotNull
                                                        @NotNull NodeBuilder indexNode,
                                                        @NotNull
                                                        @NotNull String indexDefName,
                                                        boolean unique,
                                                        @NotNull
                                                        @NotNull Iterable<String> propertyNames,
                                                        @Nullable
                                                        @Nullable String[] declaringNodeTypeNames,
                                                        @NotNull
                                                        @NotNull String propertyIndexType,
                                                        Map<String,​String> properties)
                                                 throws RepositoryException
        Create a new property index definition below the given indexNode of the provided propertyIndexType.
        Parameters:
        indexNode - the oak:index
        indexDefName - the node for the index definition
        unique - true if uniqueness
        propertyNames - the list of properties to be indexed
        declaringNodeTypeNames -
        propertyIndexType - the type of the PropertyIndex
        properties - any additional property to be added to the index definition.
        Throws:
        RepositoryException
      • getAsyncLaneName

        @Nullable
        public static @Nullable String getAsyncLaneName​(NodeState idxState,
                                                        String indexPath)