[ 
https://issues.apache.org/jira/browse/OAK-3576?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14994301#comment-14994301
 ] 

Julian Sedding commented on OAK-3576:
-------------------------------------

[~catholicon], {{IndexDescription}} is intended to provide access to the data 
of the index definition. I.e. it is an API agnostic representation of the data 
of the NodeState that defines the index, e.g. {{/oak:index/someLuceneIndex}}. 
So yes, we absolutely should have some configuration in the index definition.

Each {{IndexableFieldProvider}} could do a simple lookup on the 
{{IndexDescription}}, e.g. 
{{IndexDescription.getWithDefault("specialFeatureEnabled", false)}} to decide 
whether it provides any fields. However, it can also use additional properties 
to vary its behaviour, i.e. it becomes configurable.

Of course we could enforce that each {{IndexableFieldProvider}} is registered 
with a property name, and then we could externally prevent it from being called 
if that property is not present or not set to true. However, I think a provider 
should still have access to the full index definition to make its behaviour 
configurable.

> Allow custom extension to augment indexed lucene documents
> ----------------------------------------------------------
>
>                 Key: OAK-3576
>                 URL: https://issues.apache.org/jira/browse/OAK-3576
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: lucene
>            Reporter: Vikas Saurabh
>         Attachments: OAK-3576.jsedding.patch, OAK-3576.wip.patch
>
>
> Following up on http://oak.markmail.org/thread/a53ahsgb3bowtwyq, we should 
> have an extension point in oak to allow custom code to add fields to 
> documents getting indexed in lucene. We'd also need to allow extension point 
> to add extra query terms to utilize such augmented fields.
> (cc [~teofili], [~chetanm])



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to