# Package org.hibernate.search.backend.impl

- Interface Summary
  Interface | Description
  --- | ---
  CommitPolicy | Policy for committing changesets.
  QueueingProcessor | 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
  StreamingOperationExecutor | Sends a single operation to the related backends, considering the sharding strategy.
  TransactionalOperationExecutor | Visitor interface to apply the configured sharding strategy to a list of LuceneWork; this list is usually the set of operations to be applied in a transactional context.
  WorkQueueSynchronization | Represents the synchronization work done when a transaction is committed or rollbacked.

- Class Summary
  Class | Description
  --- | ---
  BatchedQueueingProcessor | Batch work until `BatchedQueueingProcessor.performWorks(org.hibernate.search.backend.impl.WorkQueue)` is called.
  DeleteByQuerySupport | This class provides means to convert all (by default) supported DeletionQueries back to Lucene Queries and to their String[] representation and back.
  InternalBackendFactory | Factory to instantiate the correct Search backend or to be more concrete the `BackendQueueProcessor` implementation.
  InTransactionWorkQueueSynchronization | Execute final work inside a transaction.
  LocalBackend | A `Backend` which applies given index changes locally to the corresponding `IndexManager`.
  LocalBackendQueueProcessor | A queue processor for the `LocalBackend`.
  PerTransactionWorker | Queue works per transaction.
  PostTransactionWorkQueueSynchronization | Execute final work in the after transaction synchronization.
  ReflectionBasedBackend |
  StreamingOperationDispatcher | A streaming dispatcher, sending works to the `IndexManager.performStreamOperation(LuceneWork, IndexingMonitor, boolean)` method of their respective index manager.
  StreamingOperationExecutorSelector | This visitor applies the selection logic from the plugged IndexShardingStrategies to stream operations, as used by optimize() and batching operations.
  TransactionalOperationDispatcher | A transactional dispatcher, sending works to the `IndexManager.performOperations(List, org.hibernate.search.backend.IndexingMonitor)` method of their respective index manager.
  TransactionalOperationExecutorSelector | This visitor applies the selection logic from the plugged IndexShardingStrategies to transactional operations, so similar to StreamingSelectionVisitor but preparing a context bound list of operations instead of sending all changes directly to the backend.
  WorkerFactory |
  WorkQueue |
  WorkQueuePerIndexSplitter | Used by `TransactionalOperationExecutor` to split a list of operations according to the multiple IndexManagers it needs to be routed to.

Copyright © 2006-2017 Red Hat, Inc. All Rights Reserved