Interface TypeBridge<T>

  • Type Parameters:
    T - The type on the POJO side of the bridge.
    All Superinterfaces:

    public interface TypeBridge<T>
    extends AutoCloseable
    A bridge between a POJO type and an element of the index schema.

    The TypeBridge interface is a more powerful version of ValueBridge that applies to a whole type instead of a single property, and can contribute more than one index field, in particular.

    • Method Detail

      • write

        void write​(DocumentElement target,
                   T bridgedElement,
                   TypeBridgeWriteContext context)
        Write to fields in the given DocumentElement, using the given bridgedElement as input and transforming it as necessary.

        Writing to the DocumentElement should be done using IndexFieldReferences retrieved when the bridge was bound.

        Warning: Reading from bridgedElement should be done with care. Any read that was not declared during binding (by declaring dependencies using TypeBindingContext.dependencies() or (advanced use) creating an accessor using TypeBindingContext.bridgedElement()) may lead to out-of-sync indexes, because Hibernate Search will consider the read property irrelevant to indexing and will not reindex entities when that property changes.

        target - The DocumentElement to write to.
        bridgedElement - The element this bridge is applied to, from which data should be read.
        context - A context that can be extended to a more useful type, giving access to such things as a Hibernate ORM Session (if using the Hibernate ORM mapper).
      • close

        default void close()
        Close any resource before the bridge is discarded.
        Specified by:
        close in interface AutoCloseable