Author: catholicon
Date: Wed Dec 23 09:13:19 2015
New Revision: 1721510
URL: http://svn.apache.org/viewvc?rev=1721510&view=rev
Log:
OAK-3817: Hidden properties in lucene analyzer configuration fail to construct
analyzers
Modified:
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/NodeStateAnalyzerFactory.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/NodeStateAnalyzerFactoryTest.java
Modified:
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/NodeStateAnalyzerFactory.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/NodeStateAnalyzerFactory.java?rev=1721510&r1=1721509&r2=1721510&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/NodeStateAnalyzerFactory.java
(original)
+++
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/NodeStateAnalyzerFactory.java
Wed Dec 23 09:13:19 2015
@@ -41,6 +41,7 @@ import org.apache.jackrabbit.oak.plugins
import org.apache.jackrabbit.oak.plugins.index.lucene.util.TokenizerChain;
import org.apache.jackrabbit.oak.plugins.tree.TreeFactory;
import org.apache.jackrabbit.oak.spi.state.NodeState;
+import org.apache.jackrabbit.oak.spi.state.NodeStateUtils;
import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.analysis.util.AbstractAnalysisFactory;
import org.apache.lucene.analysis.util.CharArraySet;
@@ -201,6 +202,7 @@ final class NodeStateAnalyzerFactory{
String name = ps.getName();
if (ps.getType() != Type.BINARY
&& !ps.isArray()
+ && !(name != null && NodeStateUtils.isHidden(name))
&& !IGNORE_PROP_NAMES.contains(name)) {
result.put(name, ps.getValue(Type.STRING));
}
Modified:
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/NodeStateAnalyzerFactoryTest.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/NodeStateAnalyzerFactoryTest.java?rev=1721510&r1=1721509&r2=1721510&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/NodeStateAnalyzerFactoryTest.java
(original)
+++
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/NodeStateAnalyzerFactoryTest.java
Wed Dec 23 09:13:19 2015
@@ -182,11 +182,13 @@ public class NodeStateAnalyzerFactoryTes
nb.setProperty("a", "a");
nb.setProperty("b", 1);
nb.setProperty(JcrConstants.JCR_PRIMARYTYPE, "nt:base");
+ nb.setProperty(":hiddenProp", "hiddenValue");
Map<String, String> result =
factory.convertNodeState(nb.getNodeState());
assertEquals("a", result.get("a"));
assertEquals("1", result.get("b"));
assertNull(result.get(JcrConstants.JCR_PRIMARYTYPE));
+ assertNull(result.get(":hiddenProp"));
}
private static NodeBuilder createFileNode(NodeBuilder nb, String nodeName,
byte[] content){