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:QueryIndexDefinition
type
property set to lucene
async
property set to async
Optionally you can add
includePropertyTypes property
excludePropertyNames property
reindex 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");
}
QueryIndex
org.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.OrderEntry
Modifier and Type | Field and Description |
---|---|
static String |
NATIVE_QUERY_FUNCTION |
protected org.apache.jackrabbit.oak.plugins.index.lucene.IndexTracker |
tracker |
Constructor and Description |
---|
LuceneIndex(org.apache.jackrabbit.oak.plugins.index.lucene.IndexTracker tracker,
org.apache.jackrabbit.oak.plugins.index.aggregate.NodeAggregator aggregator) |
Modifier and Type | Method and Description |
---|---|
double |
getCost(org.apache.jackrabbit.oak.spi.query.Filter filter,
org.apache.jackrabbit.oak.spi.state.NodeState root) |
String |
getIndexName() |
double |
getMinimumCost() |
org.apache.jackrabbit.oak.plugins.index.aggregate.NodeAggregator |
getNodeAggregator() |
String |
getPlan(org.apache.jackrabbit.oak.spi.query.Filter filter,
org.apache.jackrabbit.oak.spi.state.NodeState root) |
String |
getPlanDescription(org.apache.jackrabbit.oak.spi.query.QueryIndex.IndexPlan plan,
org.apache.jackrabbit.oak.spi.state.NodeState root) |
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) |
protected static org.apache.jackrabbit.oak.spi.query.QueryIndex.IndexPlan.Builder |
planBuilder(org.apache.jackrabbit.oak.spi.query.Filter filter) |
org.apache.jackrabbit.oak.spi.query.Cursor |
query(org.apache.jackrabbit.oak.spi.query.Filter filter,
org.apache.jackrabbit.oak.spi.state.NodeState root) |
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) |
public static final String NATIVE_QUERY_FUNCTION
protected final org.apache.jackrabbit.oak.plugins.index.lucene.IndexTracker tracker
public LuceneIndex(org.apache.jackrabbit.oak.plugins.index.lucene.IndexTracker tracker, org.apache.jackrabbit.oak.plugins.index.aggregate.NodeAggregator aggregator)
public double getMinimumCost()
getMinimumCost
in interface org.apache.jackrabbit.oak.spi.query.QueryIndex
public String getIndexName()
getIndexName
in interface org.apache.jackrabbit.oak.spi.query.QueryIndex
public 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.AdvancedQueryIndex
public 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.QueryIndex
public 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.QueryIndex
public 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.AdvancedQueryIndex
public 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.QueryIndex
public 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.AdvancedQueryIndex
protected static org.apache.jackrabbit.oak.spi.query.QueryIndex.IndexPlan.Builder planBuilder(org.apache.jackrabbit.oak.spi.query.Filter filter)
public org.apache.jackrabbit.oak.plugins.index.aggregate.NodeAggregator getNodeAggregator()
getNodeAggregator
in interface org.apache.jackrabbit.oak.spi.query.QueryIndex.FulltextQueryIndex
Copyright © 2012-2016 The Apache Software Foundation. All Rights Reserved.