Author: catholicon
Date: Tue Feb 12 13:46:02 2019
New Revision: 1853434
URL: http://svn.apache.org/viewvc?rev=1853434&view=rev
Log:
OAK-8042: IndexDefinitnionBuider should support deprecated properties on index
definition
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=1853434&r1=1853433&r2=1853434&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
Tue Feb 12 13:46:02 2019
@@ -48,6 +48,7 @@ import static org.apache.jackrabbit.JcrC
import static org.apache.jackrabbit.JcrConstants.NT_UNSTRUCTURED;
import static org.apache.jackrabbit.oak.api.Type.NAME;
import static org.apache.jackrabbit.oak.api.Type.STRINGS;
+import static
org.apache.jackrabbit.oak.plugins.index.IndexConstants.INDEX_DEPRECATED;
import static
org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants.TYPE_LUCENE;
import static
org.apache.jackrabbit.oak.plugins.memory.EmptyNodeState.EMPTY_NODE;
@@ -123,6 +124,11 @@ public final class IndexDefinitionBuilde
return this;
}
+ public IndexDefinitionBuilder deprecated() {
+ tree.setProperty(INDEX_DEPRECATED, true);
+ return this;
+ }
+
public IndexDefinitionBuilder async(String ... asyncVals){
tree.removeProperty("async");
tree.setProperty("async", asList(asyncVals), STRINGS);
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=1853434&r1=1853433&r2=1853434&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
Tue Feb 12 13:46:02 2019
@@ -37,6 +37,7 @@ import org.junit.After;
import org.junit.Test;
import static java.util.Arrays.asList;
+import static
org.apache.jackrabbit.oak.plugins.index.IndexConstants.INDEX_DEPRECATED;
import static
org.apache.jackrabbit.oak.plugins.index.IndexConstants.REINDEX_PROPERTY_NAME;
import static
org.apache.jackrabbit.oak.plugins.index.search.FulltextIndexConstants.AGGREGATES;
import static
org.apache.jackrabbit.oak.plugins.memory.EmptyNodeState.EMPTY_NODE;
@@ -313,4 +314,13 @@ public class IndexDefinitionBuilderTest
NodeState state = builder.build();
assertFalse(NodeStateUtils.getNode(state,
"/indexRules/nt:file/properties").exists());
}
+
+ @Test
+ public void deprecated() {
+ NodeState state = builder.build();
+ assertFalse("By default index isn't deprecated",
state.getBoolean(INDEX_DEPRECATED));
+
+ state = builder.deprecated().build();
+ assertTrue("Index must be deprecated if marked so",
state.getBoolean(INDEX_DEPRECATED));
+ }
}
\ No newline at end of file