Interface PojoAdditionalMetadataCollectorTypeNode

All Superinterfaces:
PojoAdditionalMetadataCollector

public interface PojoAdditionalMetadataCollectorTypeNode extends PojoAdditionalMetadataCollector
  • Method Details

    • typeIdentifier

      PojoRawTypeIdentifier<?> typeIdentifier()
      Returns:
      The identifier of the type to which metadata is being contributed.
    • markAsEntity

      Mark this type as an entity type.

      WARNING: entity types must always be defined upfront without relying on metadata discovery, because Hibernate Search needs to be able to have a complete view of all the possible entity types in order to handle automatic reindexing. Relying on type discovery for entity detection would mean running the risk of one particular entity subtype not being detected (because only its supertype is mentioned in the schema of indexed entities), which could result in incomplete automatic reindexing.

      Parameters:
      entityName - The name of this entity type.
      pathsDefinition - The paths definition for this entity type, i.e. the object supporting the creation of path filters that will be used in particular when performing dirty checking during automatic reindexing.
      Returns:
      A PojoAdditionalMetadataCollectorEntityTypeNode, to provide optional metadata about the entity.
      See Also:
      • PojoTypeAdditionalMetadata.isEntity()
    • markAsEntity

      PojoAdditionalMetadataCollectorEntityTypeNode markAsEntity(String entityName, PojoPathDefinitionProvider pathDefinitionProvider)
      Mark this type as an entity type.

      WARNING: entity types must always be defined upfront without relying on metadata discovery, because Hibernate Search needs to be able to have a complete view of all the possible entity types in order to handle automatic reindexing. Relying on type discovery for entity detection would mean running the risk of one particular entity subtype not being detected (because only its supertype is mentioned in the schema of indexed entities), which could result in incomplete automatic reindexing.

      Parameters:
      entityName - The name of this entity type.
      pathDefinitionProvider - A provider of path definition for this entity type, i.e. the object supporting the creation of path filters that will be used in particular when performing dirty checking during automatic reindexing.
      Returns:
      A PojoAdditionalMetadataCollectorEntityTypeNode, to provide optional metadata about the entity.
      See Also:
      • PojoTypeAdditionalMetadata.isEntity()
    • markAsIndexed

      PojoAdditionalMetadataCollectorIndexedTypeNode markAsIndexed(boolean enabled)
      Mark this type as an indexed type.

      WARNING: only entity types may be indexed.

      Parameters:
      enabled - true to mark the type as indexed, false to mark it as not indexed.
      Returns:
      A PojoAdditionalMetadataCollectorIndexedTypeNode, to provide optional metadata about the indexed type.
    • property

      void property(String propertyName, Consumer<PojoAdditionalMetadataCollectorPropertyNode> propertyMetadataContributor)