All Classes and Interfaces

Class
Description
Abstract base class for the document builders.
Wrapper class containing all the meta data extracted out of a single entity.
 
A single facet (field value and count).
Implement the Hibernate Search controller responsible for processing the work send through JMS by the slave nodes.
Abstract loader which will take care of taking object loading timings.
 
 
Define an Analyzer for a given entity, method, field or Field The order of precedence is as such: - @Field - field / method - entity - default Either describe an explicit implementation through the impl parameter or use an external @AnalyzerDef definition through the def parameter
Reusable analyzer definition.
 
Reusable analyzer definitions.
Allows to dynamically select a named analyzer through a Discriminator implementation.
A DocIdSet built as applying "AND" operation to a list of other DocIdSet(s).
For bridges implementing this interface, provide the type of the object the bridge is applied on: - the return type for a property - the class itself for a class-level bridge
Interface for different types of queue processor factories.
Implementations of this interface are not drop-in replacements for the standard BackendQueueProcessorFactory, but are meant to be used only during batch processing.
Makes sure that several different BatchIndexingWorkspace(s) can be started concurrently, sharing the same batch-backend and IndexWriters.
This runnable will prepare a pipeline for batch indexing of entities, managing the lifecycle of several ThreadPools.
Map a BigDecimal element
Map a BigInteger element.
This backend does not do anything: the Documents are not sent to any index but are discarded.
Map a boolean field
Represents a boolean query that can contains one or more elements to join
Apply a boost factor on a field or a whole entity
Interface to implement boost values as functions of the object value being boosted.
 
This factory is responsible for creating and initializing build-in and custom FieldBridges.
Build context that can be used by some services at initialization
MultiReader ensuring equals returns true if the underlying readers are the same (and in the same order) Especially useful when using CachingWrapperFilter
While extracting values from the index might be faster than extracting them from a Database, it might still involve costly IO operations.
A slightly different version of Lucene's original CachingWrapperFilter which uses SoftReferences instead of WeakReferences in order to cache the filter BitSet.
Defines the temporal resolution of a given field Calendar are stored as String in GMT
 
 
A Filter capable of chaining other filters, so that it's possible to apply several filters on a Query.
Map a character element
Define a CharFilterFactory and its parameters
This annotation allows a user to apply an implementation class to a Lucene document to manipulate it in any way the user sees fit.
Convert a Class back and forth
 
 
Utility class to load instances of other classes by using a fully qualified name, or from a class type.
A FieldCacheCollectorFactory requires two parameters which are inferred from the type of field and it's applied bridges.
Runnable to close the IndexWriter of a Workspace, if open.
Provides some methods for simplified collection instantiation.
 
We customize Lucene's ConcurrentMergeScheduler to route eventual exceptions to our configurable errorhandler.
Provides access to some default configuration settings (eg default Analyzer or default Similarity) and checks whether certain optional libraries are available.
Helper class to avoid managing NumberFormatException and similar code and ensure consistent error messages across Configuration parsing problems.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Assuming connection with the search factory
Assuming connection with the search factory
 
 
Describe the owning entity as being part of the target entity's index (to be more accurate, being part of the indexed object graph).
 
Deprecated.
Wrap the exception with an exception provide contextual feedback
Wrap the exception with an exception provide contextual feedback
Initialize object using one or several criteria queries.
Defines the method used to initialize an object
Defines the temporal resolution of a given field Date are stored as String in GMT
Bridge a java.util.Date to a String, truncated to the resolution Date are stored GMT based
 
 
 
Delegate to a named analyzer.
Extension of DeleteLuceneWork bound to a single entity.
 
Set up and provide a Lucene Directory equals() and hashCode() must guaranty equality between two providers pointing to the same underlying Lucene Store.
 
Create a Lucene directory provider which can be configured through the following properties: hibernate.search.default.* hibernate.search.<indexname>.*, where <indexname> properties have precedence over default ones.
 
 
 
 
Returns the expected discriminator name to use on the element evaluated
Interface created to keep backwards compatibility.
Set up and provide a manager for classes which are indexed via @IndexedEmbedded, but themselves do not contain the @Indexed annotation.
 
Set up and provide a manager for classes which are directly annotated with @Indexed.
DocumentExtractor is a traverser over the full-text results (EntityInfo) This operation is as lazy as possible: - the query is executed eagerly - results are not retrieved until actually requested DocumentExtractor.getFirstIndex() and DocumentExtractor.getMaxIndex() define the boundaries available to DocumentExtractor.extract(int).
DocumentExtractor is a traverser over the full-text results (EntityInfo) This operation is as lazy as possible: - the query is executed eagerly - results are not retrieved until actually requested #getFirstIndex and #getMaxIndex define the boundaries available to #extract.
Declare a field as the document id.
 
Map a double element
We need a collection of similar implementations, one per each FieldCache.DEFAULT.accessmethod to be able to deal with arrays of primitive values without autoboxing all of them.
Double numeric field bridge, capable of decoding double values from Field
 
This is the main client for IndexShardingStrategies.
Apply a dynamic boost factor on a field or a whole entity.
Component of batch-indexing pipeline, using chained producer-consumers.
 
 
Wrapper class describing the loading of an element.
Wrapper class describing the loading of an element.
Used to deal with proxies or lazily-initialized objects.
 
Entity state with regard to indexing possibilities
Map an Enum field
 
 
 
 
Helper methods initializing Hibernate Search event listeners.
Implementation of the transactional context on top of an EventSource (Session)
Helper class to create threads; these threads are grouped and named to be identified in a profiler.
A handler for rejected tasks that will have the caller block until space is available.
A single facet (field value and count).
A custom Collector used for handling facet requests.
 
 
 
 
 
 
Faceting request interface.
Base class for faceting requests.
Interface defining methods around faceting.
Default implementation of the FacetManager implementation.
 
 
 
 
 
 
 
 
Groups a set of Facet to be applied onto a query.
Specifies the order in which the facets are returned.
 
Marks a method as a factory method for a given type.
Annotation used for marking a property as indexable.
specifies a given field bridge implementation
Link between a java property and a Lucene Document Usually a Java property will be linked to a Document Field.
 
Because Lucene's Collector is not an interface, we have to create extensions of it.
Every search needs a fresh instance of a Collector, still for each field the same name and type are going to be used.
Just an indirection to different constructors, pointing to the proper FieldCache extractor per type.
How should we interact with Lucene's FieldCache.
 
 
Using as composition in implementations of FieldCacheCollector, so that we can reuse different loading strategies in different kinds of Collectors.
 
Mark a property as indexable into different fields Useful if the field is used for sorting and searching
Utility class for synchronizing files/directories.
Cache mode strategy for FullTextFilterDefs.
 
Defines the caching filter strategy implementations of getCachedFilter and addCachedFilter must be thread-safe
A wrapper class which encapsulates all required information to create a defined filter.
The key object must implement equals / hashcode so that 2 keys are equals if and only if the given Filter types are the same and the set of parameters are the same.
Helper class to apply some common optimizations when several Filters are applied.
Map a float element
We need a collection of similar implementations, one per each FieldCache.DEFAULT.accessmethod to be able to deal with arrays of primitive values without autoboxing all of them.
Float numeric field bridge, capable of decoding float values from Field
Use a Lucene FSDirectory.
File based DirectoryProvider that takes care of index copy The base directory is represented by hibernate.search..indexBase The index is created in / The source (aka copy) directory is built from / A copy is triggered every refresh seconds
File based directory provider that takes care of getting a version of the index from a given source.
Extends an EntityManager with Full-Text operations
 
represents a FullTextFilter that is about to be applied Used to inject parameters
Defines a FullTextFilter that can be optionally applied to every FullText Queries While not related to a specific indexed entity, the annotation has to be set on one of them
Mapping class responsible for collecting data for constructing FullTextFilterDef annotation.
A list of FullTextFilterDef
 
 
This listener supports setting a parent directory for all generated index files.
 
 
The base interface for Lucene powered searches.
The base interface for lucene powered searches.
 
Implements JPA 2 query interface and delegate the call to a Hibernate Core FullTextQuery.
Implementation of FullTextQuery.
Extends the Hibernate Session with fulltext search and indexing capabilities.
Lucene full text search aware session.
 
 
 
This EntityInitializer is relative to a specific Hibernate Session, so it's able to attach detached collections to it's Session.
To be used for Hibernate initializations which don't need a specific Session.
Defines and executes an Hibernate Search query (wrapping a Lucene query).
 
This Runnable is consuming entity identifiers and producing loaded detached entities for the next queue.
This Runnable is going to feed the indexing queue with the identifiers of all the entities going to be indexed.
This implementation use idInString as the hashKey.
This implementation is never directly exposed to the user, it is always wrapped into a MutableSearchFactory
Optimization strategy triggered after a certain amount of operations
 
Defines how an Field should be indexed
Implementation of the IndexControlMBean JMX attributes and operations.
Defines the Hibernate Search exposed JMX attributes and operations for index creation and purging.
 
 
 
 
A JMX based mass indexer progress monitor.
A MBean for following the progress of mass indexing.
 
Defines how a given virtual index shards data into different DirectoryProviders
Represents possible options to be applied to an org.apache.lucene.index.IndexWriter.
Transaction context that contains transaction boundaries methods.
Map an integer element
Integer numeric field bridge, capable of decoding integer values from Field
We need a collection of similar implementations, one per each FieldCache.DEFAULT.accessmethod to be able to deal with arrays of primitive values without autoboxing all of them.
 
Responsible for sending Lucene works from slave nodes to master node
Common base class for Master and Slave BackendQueueProcessorFactories
Common utility methods shared across subsystems dealing with JGroups
Listen for messages from slave nodes and apply them into LuceneBackendQueueProcessor
 
 
Helper class to register JMX beans.
Helper class for creating an JNDI InitialContext.
Marks a method as a key constructor for a given type.
Interface defining a set of operations in order to load entities which matched a query.
 
To use a custom implementation of org.apache.lucene.store.LockFactory you need to implement this interface and define the fully qualified classname of the factory implementation as a DirectoryProvider parameter for the locking_strategy key.
 
A factory class for class loggers.
 
Map a long element
We need a collection of similar implementations, one per each FieldCache.DEFAULT.accessmethod to be able to deal with arrays of primitive values without autoboxing all of them.
Long numeric field bridge, capable of decoding long values from Field
Initializes objects using lookup by it.
Copied from Hibernate Core's org.hibernate.util.LRUMap A simple LRU cache that implements the Map interface.
This will actually contain the Workspace and LuceneWork visitor implementation, reused per-DirectoryProvider.
This is not meant to be used as a regular backend, only to apply batch changes to the index.
Implements a standalone full text service.
Wrapper class around the Lucene indexing parameters defined in IndexWriterSetting.
 
A helper class for building Field objects and associating them to Documents.
Represent a Serializable Lucene unit work WARNING: This class aims to be serializable and passed in an asynchronous way across VMs any non backward compatible serialization change should be done with great care and publically announced.
 
 
 
A wrapper to Properties, to restrict the availability of values to only those which have a key beginning with some masking String.
A MassIndexer is useful to rebuild the indexes from the data contained in the database.
Prepares and configures a BatchIndexingWorkspace to start rebuilding the indexes for all entity instances in the database.
As a MassIndexer can take some time to finish it's job, a MassIndexerProgressMonitor can be defined in the configuration property hibernate.search.worker.indexing.monitor implementing this interface to track indexing performance.
Backend factory used in JGroups clustering mode in master node.
Keep the most recently used Filters in the cache The cache is at least as big as hibernate.search.filter.cache_strategy.size Above this limit, Filters are kept as soft references
A loader which loads objects of multiple types.
Represents the context in which a must clause is described.
Factory delegating to a concrete implementation of another factory, Useful to swap one factory for another.
Shared factory state
 
 
Open a reader each time
 
Base class for numbers - integer, double, etc.
Extension annotation for @Field supporting Lucene's numeric field feature.
Bridge to index numeric values using a Trie structure (multiple terms representing different precisions)
 
Numeric extension for Fields annotation
Utility class to handle Numeric Fields
 
 
Define whether or not to check if objects are already present in: - the second level cache - the persistence context In most cases, no presence check is necessary.
Initializes a set of objects from EntityInfos
A unit of work triggering an optimize operation.
 
Wrap the subsequent Runnable in a JTA Transaction if necessary: - if the existing Hibernate Core transaction strategy requires a TransactionManager - if no JTA transaction is already started Unfortunately at this time we need to have access to SessionFactoryImplementor
Parameter (basically key/value pattern)
Allow parameter injection to a given bridge.
Analyzer that applies no operation whatsoever to the flux This is useful for queries operating on non tokenized fields.
Interface to implement visitor pattern in combination with DpSelectionVisitor and DpSelectionDelegate to send LuceneWork to the appropriate queues, as defined by an IndexShardingStrategy.
 
 
 
 
 
Helper class which keeps track of all super classes and interfaces of the indexed entities.
Execute some work inside a transaction synchronization
Implements a blocking queue capable of storing a "poison" token to signal consumer threads that the task is finished.
Defined projection constants.
Implementation of the Loader interface used for loading entities which are projected via ProjectionConstants.THIS.
 
 
Objects whose identifier is provided externally and not part of the object state should be marked with this annotation
 
A unit of work used to purge an entire index.
 
Keep the query builder contextual information
Query builder that needs contextualization: A query builder should know which entity or analyzer it relies on.
Operations common to all types of queries
A helper class which gives access to the current query and its hits.
 
Represent a timeout during a Fulltext search in the HSQuery.
Pile work operations No thread safety has to be implemented, the queue being scoped already The implementation must be "stateless" wrt the queue through (ie not store the queue state) FIXME this Interface does not make much sense, since the impl will not be changed
Use a Lucene RAMDirectory
 
 
 
 
 
 
 
 
Responsible for providing and managing the lifecycle of a read only reader.
 
 
 
Date indexing resolution.
A ScopedAnalyzer is a wrapper class containing all analyzers for a given class.
Implements scrollable and paginated resultsets.
Helper class that should be used when building a FullTextEntityManager
Helper class to get a FullTextSession out of a regular session.
Provides configuration to Hibernate Search
Search configuration implementation wrapping an Hibernate Core configuration
Root of all search specific exceptions
Provide application wide operations as well as access to the underlying Lucene resources.
Build a search factory following the builder pattern.
Interface which gives access to the metadata.
Search Factory implementor exposing its sharable state.
This contract is considered experimental.
Represents the sharable state of a search factory
 
package class extracting the SearchMappingFactory if needed
Check if the entity is available in the second level cache and load it if there before falling back to the delegate method.
 
Control the life cycle of a service attached and used by Hibernate Search It allows to: - start the service - stop the service - declare the key the service is exposed to TODO should it be the implementation name itself? - provide access tot he service
 
When using this class in @FullTextFilterDef.impl, Hibernate Search considers the filter to be only influencing the sharding strategy.
Deprecated.
replaced by SharingBufferReaderProvider
This ReaderProvider shares IndexReaders as long as they are "current"; main difference with SharedReaderProvider is the way to update the Readers when needed: this uses IndexReader.reopen() which should improve performance on larger indexes as it shares buffers with previous IndexReader generation for the segments which didn't change.
Map a short element
 
A very simple implementation of MassIndexerProgressMonitor which uses the logger at INFO level to output indexing speed statistics.
Simplest implementation of an ErrorContext, use it to wrap single exceptions in the backend which are hard to relate to the workqueue as a whole.
 
Cache following a "Most Recently Used" (MRU) algorithm for maintaining a bounded in-memory size; the "Least Recently Used" (LRU) entry is the first available for removal from the cache.
Implements a filter key usign all injected parameters to compute equals and hashCode the order the parameters are added is significant
 
Interface which defines several methods allowing to access statistical data.
A concurrent implementation of the Statistics interface.
Statistics SPI for the Search.
 
 
Whether or not the value is stored in the document
Bridge to use a StringBridge as a FieldBridge.
Map a string element
Transform an object into a string representation.
We need a collection of similar implementations, one per each FieldCache.DEFAULT.accessmethod to be able to deal with arrays of primitive values without autoboxing all of them.
 
 
 
 
 
Defines the term vector storing strategy
The internal engine will use this exception factory to throw exceptions of an appropriate type according to a specific API.
 
 
 
Define a TokenFilterFactory and its parameters.
 
Define a TokenizerFactory and its parameters.
Queue works per transaction.
Contract needed by Hibernate Search to batch changes per transaction.
A FieldBridge able to convert the index representation back into an object without losing information.
Bridge to use a TwoWayStringBridge as a TwoWayFieldBridge
StringBridge allowing a translation from the string representation back to the Object.
Wraps a FieldCacheCollector in such a way that TwoWayTransformingFieldCacheCollector.getValue(int) returns objects as transformed by a TwoWayStringBridge to transform from String form to the object.
Allow a BackendQueueProcessorFactory to be notified of DirectoryProvider changes.
Bridge for URI
Bridge for URLs.
 
A hashtable-based Map implementation with weak keys and using reference-equality in place of object-equality when comparing keys (and values).
 
A unit of work.
Perform work for a given context (eg a transaction).
Build context for the worker and other backend Available after all index, entity metadata are built.
 
Represents the set of changes going to be applied to the index for the entities.
 
Lucene workspace for a DirectoryProvider.
Enumeration of the different types of Lucene work.
A visitor delegate to manipulate a LuceneWork needs to implement this interface.
Build context where new built element can be registered.
A utility class to help with xml parsing