package org.apache.lucene.queryparser.flexible.aqp.processors; import org.apache.lucene.queryparser.flexible.aqp.nodes.AqpNonAnalyzedQueryNode; import org.apache.lucene.queryparser.flexible.core.QueryNodeException; import org.apache.lucene.queryparser.flexible.core.nodes.QueryNode; import org.apache.lucene.queryparser.flexible.standard.processors.LowercaseExpandedTermsQueryNodeProcessor; /** * A modified version of the {@link LowercaseExpandedTermsQueryNodeProcessor} * * We prevent lowercasing for {@link AqpNonAnalyzedQueryNode} * * LUCENE-4679 * * @author rchyla * */ public class AqpLowercaseExpandedTermsQueryNodeProcessor extends LowercaseExpandedTermsQueryNodeProcessor { @Override protected QueryNode postProcessNode(QueryNode node) throws QueryNodeException { if (node instanceof AqpNonAnalyzedQueryNode) { return node; } return super.postProcessNode(node); } }