public interface PropertyBridge extends AutoCloseable
The PropertyBridge interface is a more powerful version of ValueBridge
that can use reflection to get information about the property being bridged,
and can contribute more than one index field, in particular.
| Modifier and Type | Method and Description |
|---|---|
void |
bind(PropertyBridgeBindingContext context)
Bind this bridge instance to the given context,
i.e.
|
default void |
close()
Close any resource before the bridge is discarded.
|
void |
write(DocumentElement target,
Object bridgedElement,
PropertyBridgeWriteContext context)
Write to fields in the given
DocumentElement,
using the given bridgedElement as input and transforming it as necessary. |
void bind(PropertyBridgeBindingContext context)
This method is called exactly once for each bridge instance, before any other method. It allows the bridge to:
write(DocumentElement, Object, PropertyBridgeWriteContext) method
using PropertyBridgeBindingContext.getIndexSchemaElement().
PropertyBridgeBindingContext.getBridgedElement().
write(DocumentElement, Object, PropertyBridgeWriteContext) method
using PropertyBridgeBindingContext.getDependencies().
write(DocumentElement, Object, PropertyBridgeWriteContext) method
using PropertyBridgeBindingContext.getBridgedElement().
context - An entry point allowing to perform the operations listed above.void write(DocumentElement target, Object bridgedElement, PropertyBridgeWriteContext context)
DocumentElement,
using the given bridgedElement as input and transforming it as necessary.
Writing to the DocumentElement should be done using
IndexFieldReferences retrieved when the
bind(PropertyBridgeBindingContext) method was called.
Warning: Reading from bridgedElement should be done with care.
Any read that was not declared in the bind(PropertyBridgeBindingContext) method
(by declaring dependencies using PropertyBridgeBindingContext.getDependencies()
or (advanced use) creating an accessor using PropertyBridgeBindingContext.getBridgedElement())
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
extendeddefault void close()
close in interface AutoCloseableCopyright © 2006-2019 Red Hat, Inc. and others. Licensed under the GNU Lesser General Public License (LGPL), version 2.1 or later.