Class SearchWorkspaceImpl
- All Implemented Interfaces:
SearchWorkspace
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidflush()Flush to disk the changes to indexes that were not committed yet.Asynchronous version ofSearchWorkspace.flush(), returning as soon as the operation is queued.voidMerge all segments of the indexes targeted by this workspace into a single one.Asynchronous version ofSearchWorkspace.mergeSegments(), returning as soon as the operation is queued.voidpurge()Delete all documents from indexes targeted by this workspace.voidDelete documents from indexes targeted by this workspace that were indexed with any of the given routing keys.Asynchronous version ofSearchWorkspace.purge(), returning as soon as the operation is queued.purgeAsync(Set<String> routingKeys) Asynchronous version ofSearchWorkspace.purge(Set), returning as soon as the operation is queued.voidrefresh()Refresh the indexes so that all changes executed so far will be visible in search queries.Asynchronous version ofSearchWorkspace.refresh(), returning as soon as the operation is queued.
-
Constructor Details
-
SearchWorkspaceImpl
-
-
Method Details
-
mergeSegments
public void mergeSegments()Description copied from interface:SearchWorkspaceMerge all segments of the indexes targeted by this workspace into a single one.Note this operation may affect performance positively as well as negatively. See the reference documentation for more information.
- Specified by:
mergeSegmentsin interfaceSearchWorkspace
-
mergeSegmentsAsync
Description copied from interface:SearchWorkspaceAsynchronous version ofSearchWorkspace.mergeSegments(), returning as soon as the operation is queued.Note this operation may affect performance positively as well as negatively. See the reference documentation for more information.
- Specified by:
mergeSegmentsAsyncin interfaceSearchWorkspace- Returns:
- A
CompletionStagereflecting the completion state of the operation. - See Also:
-
purge
public void purge()Description copied from interface:SearchWorkspaceDelete all documents from indexes targeted by this workspace.With multi-tenancy enabled, only documents of the current tenant will be removed: the tenant that was targeted by the session from where this workspace originated.
- Specified by:
purgein interfaceSearchWorkspace
-
purgeAsync
Description copied from interface:SearchWorkspaceAsynchronous version ofSearchWorkspace.purge(), returning as soon as the operation is queued.- Specified by:
purgeAsyncin interfaceSearchWorkspace- Returns:
- A
CompletionStagereflecting the completion state of the operation. - See Also:
-
purge
Description copied from interface:SearchWorkspaceDelete documents from indexes targeted by this workspace that were indexed with any of the given routing keys.With multi-tenancy enabled, only documents of the current tenant will be removed: the tenant that was targeted by the session from where this workspace originated.
- Specified by:
purgein interfaceSearchWorkspace- Parameters:
routingKeys- The set of routing keys. If non-empty, only documents that were indexed with these routing keys will be deleted. If empty, documents will be deleted regardless of their routing key.
-
purgeAsync
Description copied from interface:SearchWorkspaceAsynchronous version ofSearchWorkspace.purge(Set), returning as soon as the operation is queued.- Specified by:
purgeAsyncin interfaceSearchWorkspace- Parameters:
routingKeys- The set of routing keys.- Returns:
- A
CompletionStagereflecting the completion state of the operation. - See Also:
-
flush
public void flush()Description copied from interface:SearchWorkspaceFlush to disk the changes to indexes that were not committed yet. In the case of backends with a transaction log (Elasticsearch), also apply operations from the transaction log that were not applied yet.This is generally not useful as Hibernate Search commits changes automatically. Only to be used by experts fully aware of the implications.
Note that some operations may still be waiting in a queue when
SearchWorkspace.flush()is called, in particular operations queued as part of processing an indexing plan before a transaction is committed. These operations will not be applied immediately just because a call toSearchWorkspace.flush()is issued: the "flush" here is a very low-level operation handled by the backend.- Specified by:
flushin interfaceSearchWorkspace
-
flushAsync
Description copied from interface:SearchWorkspaceAsynchronous version ofSearchWorkspace.flush(), returning as soon as the operation is queued.- Specified by:
flushAsyncin interfaceSearchWorkspace- Returns:
- A
CompletionStagereflecting the completion state of the operation. - See Also:
-
refresh
public void refresh()Description copied from interface:SearchWorkspaceRefresh the indexes so that all changes executed so far will be visible in search queries.This is generally not useful as indexes are refreshed automatically, either after every change (default for the Lucene backend) or periodically (default for the Elasticsearch backend, possible for the Lucene backend by setting a refresh interval). Only to be used by experts fully aware of the implications.
Note that some operations may still be waiting in a queue when
SearchWorkspace.refresh()is called, in particular operations queued as part of processing an indexing plan before a transaction is committed. These operations will not be applied immediately just because a call toSearchWorkspace.refresh()is issued: the "refresh" here is a very low-level operation handled by the backend.- Specified by:
refreshin interfaceSearchWorkspace
-
refreshAsync
Description copied from interface:SearchWorkspaceAsynchronous version ofSearchWorkspace.refresh(), returning as soon as the operation is queued.- Specified by:
refreshAsyncin interfaceSearchWorkspace- Returns:
- A
CompletionStagereflecting the completion state of the operation. - See Also:
-