You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-dev@jackrabbit.apache.org by Chetan Mehrotra <ch...@gmail.com> on 2015/09/02 12:34:59 UTC
Re: svn commit: r1700720 - in /jackrabbit/oak/trunk/oak-lucene/src:
main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexEditorContext.java
test/java/org/apache/jackrabbit/oak/jcr/query/SpellcheckTest.java
Hi Tommaso,
On Wed, Sep 2, 2015 at 1:28 PM, <to...@apache.org> wrote:
> + Analyzer definitionAnalyzer = definition.getAnalyzer();
> + Map<String, Analyzer> analyzers = new HashMap<String, Analyzer>();
> + analyzers.put(FieldNames.SPELLCHECK, new ShingleAnalyzerWrapper(LuceneIndexConstants.ANALYZER, 3));
> + Analyzer analyzer = new PerFieldAnalyzerWrapper(definitionAnalyzer, analyzers);
> + IndexWriterConfig config = new IndexWriterConfig(VERSION, analyzer);
Have a look at IndexDefinition#createAnalyzer which already creates a
PerFieldAnalyzerWrapper. So would be better to move this logic there.
Or you want to customize the analyzer for that field only during
indexing.
Chetan Mehrotra
Re: svn commit: r1700720 - in /jackrabbit/oak/trunk/oak-lucene/src:
main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexEditorContext.java
test/java/org/apache/jackrabbit/oak/jcr/query/SpellcheckTest.java
Posted by Tommaso Teofili <to...@gmail.com>.
Hi Chetan,
sorry for the late reply, the ShingleFilter is intended to be used only at
indexing time, that's why I changed only the code there.
The PerFieldAnalyzerWrapper will continue using the configured or default
analyzers for other fields.
Regards,
Tommaso
2015-09-02 12:34 GMT+02:00 Chetan Mehrotra <ch...@gmail.com>:
> Hi Tommaso,
>
> On Wed, Sep 2, 2015 at 1:28 PM, <to...@apache.org> wrote:
> > + Analyzer definitionAnalyzer = definition.getAnalyzer();
> > + Map<String, Analyzer> analyzers = new HashMap<String,
> Analyzer>();
> > + analyzers.put(FieldNames.SPELLCHECK, new
> ShingleAnalyzerWrapper(LuceneIndexConstants.ANALYZER, 3));
> > + Analyzer analyzer = new
> PerFieldAnalyzerWrapper(definitionAnalyzer, analyzers);
> > + IndexWriterConfig config = new IndexWriterConfig(VERSION,
> analyzer);
>
> Have a look at IndexDefinition#createAnalyzer which already creates a
> PerFieldAnalyzerWrapper. So would be better to move this logic there.
> Or you want to customize the analyzer for that field only during
> indexing.
>
> Chetan Mehrotra
>