Author: catholicon
Date: Wed Nov 30 17:51:45 2016
New Revision: 1772096
URL: http://svn.apache.org/viewvc?rev=1772096&view=rev
Log:
OAK-5196: IndexDefinitionBuilder should allow to disable indexing some property
definitions
Added method disable() for this case.
Modified:
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/IndexDefinitionBuilder.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/IndexDefinitionBuilderTest.java
Modified:
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/IndexDefinitionBuilder.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/IndexDefinitionBuilder.java?rev=1772096&r1=1772095&r2=1772096&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/IndexDefinitionBuilder.java
(original)
+++
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/IndexDefinitionBuilder.java
Wed Nov 30 17:51:45 2016
@@ -222,6 +222,11 @@ public final class IndexDefinitionBuilde
return this;
}
+ public PropertyRule disable() {
+ propTree.setProperty(LuceneIndexConstants.PROP_INDEX, false);
+ return this;
+ }
+
public PropertyRule propertyIndex(){
propTree.setProperty(LuceneIndexConstants.PROP_PROPERTY_INDEX,
true);
return this;
Modified:
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/IndexDefinitionBuilderTest.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/IndexDefinitionBuilderTest.java?rev=1772096&r1=1772095&r2=1772096&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/IndexDefinitionBuilderTest.java
(original)
+++
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/IndexDefinitionBuilderTest.java
Wed Nov 30 17:51:45 2016
@@ -21,6 +21,7 @@ package org.apache.jackrabbit.oak.plugin
import java.util.Iterator;
+import org.apache.jackrabbit.oak.api.PropertyState;
import org.apache.jackrabbit.oak.api.Tree;
import org.apache.jackrabbit.oak.api.Type;
import org.apache.jackrabbit.oak.plugins.index.PathFilter;
@@ -72,6 +73,23 @@ public class IndexDefinitionBuilderTest
}
@Test
+ public void propertyDefIndexPropertySetIndexFalse() throws Exception {
+ builder.indexRule("nt:base")
+ .property("foo")
+ .disable();
+
+ PropertyState state = builder.build().
+ getChildNode("indexRules").
+ getChildNode("nt:base").
+ getChildNode("properties").
+ getChildNode("foo").
+ getProperty("index");
+
+ assertNotNull("index property must exist", state);
+ assertFalse("Incorrect default value of index property",
state.getValue(Type.BOOLEAN));
+ }
+
+ @Test
public void aggregates() throws Exception{
builder.aggregateRule("cq:Page").include("jcr:content").relativeNode();
builder.aggregateRule("dam:Asset", "*", "*/*");