public class LuceneIndex extends Object implements org.apache.jackrabbit.oak.spi.query.QueryIndex.AdvanceFulltextQueryIndex
To define a lucene index on a subtree you have to add an
oak:index node.
Under it follows the index definition node that:
oak:QueryIndexDefinitiontype property set to luceneasync property set to asyncOptionally you can add
includePropertyTypes propertyexcludePropertyNames propertyreindex flag which when set to true, triggers a full content re-index.
{
NodeBuilder index = root.child("oak:index");
index.child("lucene")
.setProperty("jcr:primaryType", "oak:QueryIndexDefinition", Type.NAME)
.setProperty("type", "lucene")
.setProperty("async", "async")
.setProperty("reindex", "true");
}
QueryIndexorg.apache.jackrabbit.oak.spi.query.QueryIndex.AdvancedQueryIndex, org.apache.jackrabbit.oak.spi.query.QueryIndex.AdvanceFulltextQueryIndex, org.apache.jackrabbit.oak.spi.query.QueryIndex.FulltextQueryIndex, org.apache.jackrabbit.oak.spi.query.QueryIndex.IndexPlan, org.apache.jackrabbit.oak.spi.query.QueryIndex.NativeQueryIndex, org.apache.jackrabbit.oak.spi.query.QueryIndex.NodeAggregator, org.apache.jackrabbit.oak.spi.query.QueryIndex.OrderEntry| Modifier and Type | Field and Description |
|---|---|
static String |
NATIVE_QUERY_FUNCTION |
protected IndexTracker |
tracker |
| Constructor and Description |
|---|
LuceneIndex(IndexTracker tracker,
org.apache.jackrabbit.oak.spi.query.QueryIndex.NodeAggregator aggregator) |
public static final String NATIVE_QUERY_FUNCTION
protected final IndexTracker tracker
public LuceneIndex(IndexTracker tracker, org.apache.jackrabbit.oak.spi.query.QueryIndex.NodeAggregator aggregator)
public double getMinimumCost()
getMinimumCost in interface org.apache.jackrabbit.oak.spi.query.QueryIndexpublic String getIndexName()
getIndexName in interface org.apache.jackrabbit.oak.spi.query.QueryIndexpublic List<org.apache.jackrabbit.oak.spi.query.QueryIndex.IndexPlan> getPlans(org.apache.jackrabbit.oak.spi.query.Filter filter, List<org.apache.jackrabbit.oak.spi.query.QueryIndex.OrderEntry> sortOrder, org.apache.jackrabbit.oak.spi.state.NodeState rootState)
getPlans in interface org.apache.jackrabbit.oak.spi.query.QueryIndex.AdvancedQueryIndexpublic double getCost(org.apache.jackrabbit.oak.spi.query.Filter filter, org.apache.jackrabbit.oak.spi.state.NodeState root)
getCost in interface org.apache.jackrabbit.oak.spi.query.QueryIndexpublic String getPlan(org.apache.jackrabbit.oak.spi.query.Filter filter, org.apache.jackrabbit.oak.spi.state.NodeState root)
getPlan in interface org.apache.jackrabbit.oak.spi.query.QueryIndexpublic String getPlanDescription(org.apache.jackrabbit.oak.spi.query.QueryIndex.IndexPlan plan, org.apache.jackrabbit.oak.spi.state.NodeState root)
getPlanDescription in interface org.apache.jackrabbit.oak.spi.query.QueryIndex.AdvancedQueryIndexpublic org.apache.jackrabbit.oak.spi.query.Cursor query(org.apache.jackrabbit.oak.spi.query.Filter filter, org.apache.jackrabbit.oak.spi.state.NodeState root)
query in interface org.apache.jackrabbit.oak.spi.query.QueryIndexpublic org.apache.jackrabbit.oak.spi.query.Cursor query(org.apache.jackrabbit.oak.spi.query.QueryIndex.IndexPlan plan, org.apache.jackrabbit.oak.spi.state.NodeState rootState)
query in interface org.apache.jackrabbit.oak.spi.query.QueryIndex.AdvancedQueryIndexprotected static org.apache.jackrabbit.oak.spi.query.QueryIndex.IndexPlan.Builder planBuilder(org.apache.jackrabbit.oak.spi.query.Filter filter)
public org.apache.jackrabbit.oak.spi.query.QueryIndex.NodeAggregator getNodeAggregator()
getNodeAggregator in interface org.apache.jackrabbit.oak.spi.query.QueryIndex.FulltextQueryIndexCopyright © 2012–2018 The Apache Software Foundation. All rights reserved.