Interface FullTextEntityManager

All Superinterfaces:
javax.persistence.EntityManager
All Known Implementing Classes:
FullTextEntityManagerImpl

public interface FullTextEntityManager extends javax.persistence.EntityManager
Extends an EntityManager with Full-Text operations
  • Method Summary

    Modifier and Type
    Method
    Description
    createFullTextQuery(Query luceneQuery, Class<?>... entities)
    Create a fulltext query on top of a native Lucene query returning the matching objects of type entities and their respective subclasses.
    createIndexer(Class<?>... types)
    Creates a MassIndexer to rebuild the indexes of some or all indexed entity types.
    void
    Flush all index changes forcing Hibernate Search to apply all changes to the index not waiting for the batch limit.
     
    <T> void
    index(T entity)
    Force the (re)indexing of a given managed object.
    <T> void
    purge(Class<T> entityType, Serializable id)
    Remove the entity with the type entityType and the identifier id from the index.
    <T> void
    purgeAll(Class<T> entityType)
    Remove all entities from of particular class and all its subclasses from the index.

    Methods inherited from interface javax.persistence.EntityManager

    clear, close, contains, createNamedQuery, createNamedQuery, createNativeQuery, createNativeQuery, createNativeQuery, createQuery, createQuery, createQuery, detach, find, find, find, find, flush, getCriteriaBuilder, getDelegate, getEntityManagerFactory, getFlushMode, getLockMode, getMetamodel, getProperties, getReference, getTransaction, isOpen, joinTransaction, lock, lock, merge, persist, refresh, refresh, refresh, refresh, remove, setFlushMode, setProperty, unwrap
  • Method Details

    • createFullTextQuery

      FullTextQuery createFullTextQuery(Query luceneQuery, Class<?>... entities)
      Create a fulltext query on top of a native Lucene query returning the matching objects of type entities and their respective subclasses.
      Parameters:
      luceneQuery - The native Lucene query to be rn against the Lucene index.
      entities - List of classes for type filtering. The query result will only return entities of the specified types and their respective subtype. If no class is specified no type filtering will take place.
      Returns:
      A FullTextQuery wrapping around the native Lucene wuery.
      Throws:
      IllegalArgumentException - if entityType is null or not a class or superclass annotated with @Indexed.
    • index

      <T> void index(T entity)
      Force the (re)indexing of a given managed object. Indexation is batched per transaction: if a transaction is active, the operation will not affect the index at least until commit.
      Parameters:
      entity - The entity to index - must not be null.
      Throws:
      IllegalArgumentException - if entity is null or not an @Indexed entity
    • getSearchFactory

      SearchFactory getSearchFactory()
      Returns:
      the SearchFactory instance.
    • purge

      <T> void purge(Class<T> entityType, Serializable id)
      Remove the entity with the type entityType and the identifier id from the index. If id == null all indexed entities of this type and its indexed subclasses are deleted. In this case this method behaves like purgeAll(Class).
      Parameters:
      entityType - The type of the entity to delete.
      id - The id of the entity to delete.
      Throws:
      IllegalArgumentException - if entityType is null or not a class or superclass annotated with @Indexed.
    • purgeAll

      <T> void purgeAll(Class<T> entityType)
      Remove all entities from of particular class and all its subclasses from the index.
      Parameters:
      entityType - The class of the entities to remove.
      Throws:
      IllegalArgumentException - if entityType is null or not a class or superclass annotated with @Indexed.
    • flushToIndexes

      void flushToIndexes()
      Flush all index changes forcing Hibernate Search to apply all changes to the index not waiting for the batch limit.
    • createIndexer

      MassIndexer createIndexer(Class<?>... types)
      Creates a MassIndexer to rebuild the indexes of some or all indexed entity types. Instances cannot be reused.
      Parameters:
      types - optionally restrict the operation to selected types
      Returns: