You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by ca...@apache.org on 2019/08/04 04:49:41 UTC

svn commit: r1864353 - in /jackrabbit/oak/trunk/oak-lucene/src: main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/IndexDefinitionBuilder.java test/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/IndexDefinitionBuilderTest.java

Author: catholicon
Date: Sun Aug  4 04:49:41 2019
New Revision: 1864353

URL: http://svn.apache.org/viewvc?rev=1864353&view=rev
Log:
OAK-8526: IndexDefinitionBuilder should support setting up index tags

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=1864353&r1=1864352&r2=1864353&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 Sun Aug  4 04:49:41 2019
@@ -19,6 +19,7 @@
 
 package org.apache.jackrabbit.oak.plugins.index.lucene.util;
 
+import java.util.Collections;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
@@ -149,7 +150,10 @@ public final class IndexDefinitionBuilde
     }
 
     public IndexDefinitionBuilder addTags(String ... additionalTagVals) {
-        Set<String> currTags = Sets.newHashSet(tree.getProperty(INDEX_TAGS).getValue(STRINGS));
+        Set<String> currTags = Collections.emptySet();
+        if (tree.hasProperty(INDEX_TAGS)) {
+            currTags = Sets.newHashSet(tree.getProperty(INDEX_TAGS).getValue(STRINGS));
+        }
         Set<String> tagVals = Sets.newHashSet(Iterables.concat(currTags, asList(additionalTagVals)));
         boolean noAdditionalTags = currTags.containsAll(tagVals);
         if (!noAdditionalTags) {

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=1864353&r1=1864352&r2=1864353&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 Sun Aug  4 04:49:41 2019
@@ -964,5 +964,13 @@ public class IndexDefinitionBuilderTest
         assertEquals("Unexpected number of tags", 1, Iterables.size(tags));
         assertThat(state.getProperty(INDEX_TAGS).getValue(Type.STRINGS),
                 Matchers.containsInAnyOrder("foo4"));
+
+        builder = new IndexDefinitionBuilder(EMPTY_NODE.builder());
+        builder.addTags("foo5");
+        state = builder.build();
+        tags = state.getProperty(INDEX_TAGS).getValue(Type.STRINGS);
+        assertEquals("Unexpected number of tags", 1, Iterables.size(tags));
+        assertThat(state.getProperty(INDEX_TAGS).getValue(Type.STRINGS),
+                Matchers.containsInAnyOrder("foo5"));
     }
 }
\ No newline at end of file