U4-8437 - Allow for property editors to be able to determine what values are indexed by Examine

Created by Shannon Deminick 11 May 2016, 06:00:37 Updated by Sebastiaan Janssen 17 Jan 2018, 07:14:40

Tags: PR Community Contrib

Relates to: U4-7295

Currently the values indexed by Examine are simply based on the xml document created based on an IContent item. In some cases a property editor would want to transform the data for it's property value into more easily searchable name value pairs. We could do this by implementing something like IIndexValueConverter which if implemented by a Property Value Converter could be invoked by the indexer to resolve the name value pairs to be indexed.

The main problem here is that currently Examine isn't aware of what a content item is, a property type or a property editor. To do this correctly we'd need to create some overloads for the indexing/re-indexing process:

  • Reindexing - we could supply an entity such as ValueSet where T = the strongly typed model, for example IContent. ValueSet will contain a reference to the original object used to create the ValueSet (which is the information used to put data into the index) and a callback used to create the ValueSet based on the T
  • This would require an overload(s) to the base umbraco indexer and then also be used for the rebuilding index process
  • If we could achieve something along these lines it would mean that we have the original strongly typed object that is used to perform the indexing which means we'd have access to the information required to raise events and determine property editors for specific values


Shannon Deminick 20 Jun 2016, 07:32:40

https://github.com/umbraco/Umbraco-CMS/pull/1317 https://github.com/Shazwazza/Examine/pull/48

Priority: Normal

Type: Bug

State: Open


Difficulty: Normal


Backwards Compatible: True

Fix Submitted:

Affected versions: 7.9.0

Due in version:


Story Points: