Class AggregateIndexPlan
java.lang.Object
org.apache.jackrabbit.oak.plugins.index.aggregate.AggregateIndexPlan
- All Implemented Interfaces:
Cloneable,QueryIndex.IndexPlan
An index plan for multiple query indexes.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.jackrabbit.oak.spi.query.QueryIndex.IndexPlan
QueryIndex.IndexPlan.Builder -
Field Summary
Fields inherited from interface org.apache.jackrabbit.oak.spi.query.QueryIndex.IndexPlan
LOG -
Method Summary
Modifier and TypeMethodDescriptioncopy()Creates a cloned copy of current plan.@Nullable ObjectgetAttribute(String name) Returns the value of the named attribute as anObject, ornullif no attribute of the given name exists.doubleThe cost to read one entry from the cursor.doubleThe cost to execute the query once.The node state with the index definition.longThe estimated number of entries in the cursor that is returned by the query method, when using this plan.The filter to use.The path prefix for this index plan.Get the unique plan name.@Nullable Filter.PropertyRestrictionThe property restriction for this index plan ornullif this index plan isn't base on a property restriction.An aggregated query can not sort, as it gets results from a number of indexes.booleanWhether index for this plan supports handling path restrictions natively.booleanWhether all base plan include node data.booleanWhether any base plan is delayed.booleanWhether the index is deprecated.booleanWhether any base plan is a full text index.voidUse the given filter.Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.jackrabbit.oak.spi.query.QueryIndex.IndexPlan
getAdditionalLogMessages, getAdditionalMessages, logWarningForPathFilterMismatch
-
Method Details
-
getCostPerExecution
public double getCostPerExecution()Description copied from interface:QueryIndex.IndexPlanThe cost to execute the query once. The returned value should approximately match the number of disk read operations plus the number of network roundtrips (worst case).- Specified by:
getCostPerExecutionin interfaceQueryIndex.IndexPlan- Returns:
- the cost per execution, in estimated number of I/O operations
-
getCostPerEntry
public double getCostPerEntry()Description copied from interface:QueryIndex.IndexPlanThe cost to read one entry from the cursor. The returned value should approximately match the number of disk read operations plus the number of network roundtrips (worst case).- Specified by:
getCostPerEntryin interfaceQueryIndex.IndexPlan- Returns:
- the lookup cost per entry, in estimated number of I/O operations
-
getEstimatedEntryCount
public long getEstimatedEntryCount()Description copied from interface:QueryIndex.IndexPlanThe estimated number of entries in the cursor that is returned by the query method, when using this plan. This value does not have to be accurate.- Specified by:
getEstimatedEntryCountin interfaceQueryIndex.IndexPlan- Returns:
- the estimated number of entries
-
getFilter
Description copied from interface:QueryIndex.IndexPlanThe filter to use.- Specified by:
getFilterin interfaceQueryIndex.IndexPlan- Returns:
- the filter
-
setFilter
Description copied from interface:QueryIndex.IndexPlanUse the given filter.- Specified by:
setFilterin interfaceQueryIndex.IndexPlan
-
isDelayed
public boolean isDelayed()Whether any base plan is delayed.- Specified by:
isDelayedin interfaceQueryIndex.IndexPlan- Returns:
- true if yes
-
isDeprecated
public boolean isDeprecated()Description copied from interface:QueryIndex.IndexPlanWhether the index is deprecated.- Specified by:
isDeprecatedin interfaceQueryIndex.IndexPlan- Returns:
- if it is deprecated
-
isFulltextIndex
public boolean isFulltextIndex()Whether any base plan is a full text index.- Specified by:
isFulltextIndexin interfaceQueryIndex.IndexPlan- Returns:
- true if yes
-
includesNodeData
public boolean includesNodeData()Whether all base plan include node data.- Specified by:
includesNodeDatain interfaceQueryIndex.IndexPlan- Returns:
- true if yes
-
getSortOrder
An aggregated query can not sort, as it gets results from a number of indexes.- Specified by:
getSortOrderin interfaceQueryIndex.IndexPlan- Returns:
- null
-
getPropertyRestriction
Description copied from interface:QueryIndex.IndexPlanThe property restriction for this index plan ornullif this index plan isn't base on a property restriction. E.g. a plan based on an order by clause in the query.- Specified by:
getPropertyRestrictionin interfaceQueryIndex.IndexPlan- Returns:
- the restriction this plan is based on or
null.
-
copy
Description copied from interface:QueryIndex.IndexPlanCreates a cloned copy of current plan. Mostly used when the filter needs to be modified for a given call- Specified by:
copyin interfaceQueryIndex.IndexPlan- Returns:
- clone of current plan
-
getDefinition
Description copied from interface:QueryIndex.IndexPlanThe node state with the index definition.- Specified by:
getDefinitionin interfaceQueryIndex.IndexPlan- Returns:
- the node state with the index definition.
-
getPathPrefix
Description copied from interface:QueryIndex.IndexPlanThe path prefix for this index plan.- Specified by:
getPathPrefixin interfaceQueryIndex.IndexPlan
-
getSupportsPathRestriction
public boolean getSupportsPathRestriction()Description copied from interface:QueryIndex.IndexPlanWhether index for this plan supports handling path restrictions natively.- Specified by:
getSupportsPathRestrictionin interfaceQueryIndex.IndexPlan
-
getAttribute
Description copied from interface:QueryIndex.IndexPlanReturns the value of the named attribute as anObject, ornullif no attribute of the given name exists.- Specified by:
getAttributein interfaceQueryIndex.IndexPlan- Parameters:
name-Stringspecifying the name of the attribute- Returns:
- an
Objectcontaining the value of the attribute, ornullif the attribute does not exist
-
getPlanName
Description copied from interface:QueryIndex.IndexPlanGet the unique plan name.- Specified by:
getPlanNamein interfaceQueryIndex.IndexPlan- Returns:
- the plan name
-