Interface AlternativeBinderDelegate<D,P>

Type Parameters:
D - The expected type of alternative discriminator values. The alternative discriminator is designated through the AlternativeBinder.alternativeDiscriminator() marker.
P - The expected type of the field value source, i.e. the property bound to multiple index fields. The field value source is designated through the property name and type passed to AlternativeBinder.create(Class, String, Class, BeanReference).

@Incubating public interface AlternativeBinderDelegate<D,P>
The component responsible for binding one field per alternative, and creating an AlternativeValueBridge.
See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    bind(IndexSchemaElement indexSchemaElement, PojoModelProperty fieldValueSource)
    Binds the given field value source to multiple field, i.e.: Declares one field per alternative. Creates a bridge that will route field values to the appropriate field based on a discriminator.
  • Method Details

    • bind

      AlternativeValueBridge<D,P> bind(IndexSchemaElement indexSchemaElement, PojoModelProperty fieldValueSource)
      Binds the given field value source to multiple field, i.e.:
      • Declares one field per alternative.
      • Creates a bridge that will route field values to the appropriate field based on a discriminator.
      Parameters:
      indexSchemaElement - The index schema element to add fields to.
      fieldValueSource - The source of field values, passed to allow looking up metadata (name, exact type, ...).
      Returns:
      The AlternativeValueBridge bound to the given property.
      See Also: