Class AbstractIndexField<S extends AbstractIndexField<S,SC,?,C>,SC extends SearchIndexScope<?>,NT extends AbstractIndexNodeType<SC,? super S>,C extends IndexCompositeNode<SC,?,?>>
java.lang.Object
org.hibernate.search.engine.backend.document.model.spi.AbstractIndexNode<S,SC,NT>
org.hibernate.search.engine.backend.document.model.spi.AbstractIndexField<S,SC,NT,C>
- All Implemented Interfaces:
IndexField<SC,
,C> IndexNode<SC>
,IndexFieldDescriptor
,SearchIndexNodeContext<SC>
,EventContextProvider
- Direct Known Subclasses:
AbstractIndexObjectField
,AbstractIndexValueField
public abstract class AbstractIndexField<S extends AbstractIndexField<S,SC,?,C>,SC extends SearchIndexScope<?>,NT extends AbstractIndexNodeType<SC,? super S>,C extends IndexCompositeNode<SC,?,?>>
extends AbstractIndexNode<S,SC,NT>
implements IndexField<SC,C>
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final String
protected final String[]
protected final TreeNodeInclusion
protected final boolean
protected final C
protected final String
Fields inherited from class org.hibernate.search.engine.backend.document.model.spi.AbstractIndexNode
type
-
Constructor Summary
ConstructorsConstructorDescriptionAbstractIndexField
(C parent, String relativeFieldName, NT type, TreeNodeInclusion inclusion, boolean multiValued) -
Method Summary
Modifier and TypeMethodDescriptionfinal String
final String[]
final TreeNodeInclusion
final boolean
boolean
final C
parent()
final EventContext
final String
toString()
Methods inherited from class org.hibernate.search.engine.backend.document.model.spi.AbstractIndexNode
cannotUseQueryElement, eventContext, queryElement, self, type
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.hibernate.search.util.common.reporting.spi.EventContextProvider
eventContext
Methods inherited from interface org.hibernate.search.engine.backend.document.model.spi.IndexField
toComposite, toObjectField, toValueField
Methods inherited from interface org.hibernate.search.engine.backend.metamodel.IndexFieldDescriptor
isObjectField, isValueField, type
Methods inherited from interface org.hibernate.search.engine.search.common.spi.SearchIndexNodeContext
cannotUseQueryElement, isComposite, isObjectField, isValueField, nestedDocumentPath, nestedPathHierarchy, queryElement
-
Field Details
-
parent
-
absolutePath
-
absolutePathComponents
-
relativeName
-
inclusion
-
multiValued
protected final boolean multiValued
-
-
Constructor Details
-
AbstractIndexField
public AbstractIndexField(C parent, String relativeFieldName, NT type, TreeNodeInclusion inclusion, boolean multiValued)
-
-
Method Details
-
toString
-
relativeEventContext
- Specified by:
relativeEventContext
in interfaceSearchIndexNodeContext<S extends AbstractIndexField<S,
SC, ?, C>>
-
parent
- Specified by:
parent
in interfaceIndexField<S extends AbstractIndexField<S,
SC, ?, C>, SC extends SearchIndexScope<?>> - Specified by:
parent
in interfaceIndexFieldDescriptor
- Returns:
- The parent of this field, either the
index root
or anobject field
.
-
absolutePath
- Specified by:
absolutePath
in interfaceIndexFieldDescriptor
- Specified by:
absolutePath
in interfaceSearchIndexNodeContext<S extends AbstractIndexField<S,
SC, ?, C>> - Returns:
- The absolute, dot-separated path of this field.
-
absolutePathComponents
- Specified by:
absolutePathComponents
in interfaceSearchIndexNodeContext<S extends AbstractIndexField<S,
SC, ?, C>>
-
relativeName
- Specified by:
relativeName
in interfaceIndexFieldDescriptor
- Returns:
- The name of this field relative to its
parent
.
-
inclusion
-
multiValued
public final boolean multiValued()- Specified by:
multiValued
in interfaceIndexFieldDescriptor
- Specified by:
multiValued
in interfaceSearchIndexNodeContext<S extends AbstractIndexField<S,
SC, ?, C>> - Returns:
true
if this field can have multiple values in the same parent document.
-
multiValuedInRoot
public boolean multiValuedInRoot()- Specified by:
multiValuedInRoot
in interfaceIndexFieldDescriptor
- Specified by:
multiValuedInRoot
in interfaceSearchIndexNodeContext<S extends AbstractIndexField<S,
SC, ?, C>> - Returns:
true
if this field can have multiple values in the same root document or if it is contained, directly or indirectly, in an object field that can have multiple values.
-
closestMultiValuedParentAbsolutePath
- Specified by:
closestMultiValuedParentAbsolutePath
in interfaceSearchIndexNodeContext<S extends AbstractIndexField<S,
SC, ?, C>>
-