public interface SearchProvider
Modifier and Type | Interface and Description |
---|---|
static interface |
SearchProvider.SelectedObjectsHandler
Passed to the search provider when the user wants to select which objects to search.
|
Modifier and Type | Method and Description |
---|---|
java.util.List<java.lang.Object> |
getCategories()
Returns a list of "categories", or sub-selectable units, supported by this search provider.
|
java.lang.String |
getName()
Returns the name of the search provider, which will be used in the UI.
|
boolean |
hasSelectableObjects()
Whether or not the set of objects searched by this provider is selectable- for examples, which groups or windows
are to be searched.
|
void |
notifySearchClosed()
Called when the search dialog box is closed, so that the search provider can release any cached resources
|
java.util.Iterator<SearchObject> |
retrieveSearchableObjects(java.util.Collection<java.lang.Object> categories,
java.util.List<java.lang.Object> searchObjects,
TaskProgressListener progress)
Returns an iterator that provides all of the objects described by the parameters.
|
java.lang.String |
selectedObjectsToString(java.util.List<java.lang.Object> objects)
Formats the list of selected objects as a brief string.
|
void |
selectObjects(SearchProvider.SelectedObjectsHandler handler)
Instructs the SearchProvider to show a dialog in order to select the objects to search.
|
java.lang.String getName()
java.util.List<java.lang.Object> getCategories()
boolean hasSelectableObjects()
java.lang.String selectedObjectsToString(java.util.List<java.lang.Object> objects)
void selectObjects(SearchProvider.SelectedObjectsHandler handler)
java.util.Iterator<SearchObject> retrieveSearchableObjects(java.util.Collection<java.lang.Object> categories, java.util.List<java.lang.Object> searchObjects, TaskProgressListener progress)
The provided ProgressListener can be used to provide progress information as the Iterator is processed. Some providers may not be able to calculate progress, in which case they should call setIndeterminate(true), but the provider implementors are encouraged to provide anything they can, even if it's very coarse.
categories
- indicates the user selection (if applicable) of which categories should be searched.searchObjects
- the user selected objects (if applicable) to be searched.progress
- a progress listener for this provider, which can be updated as the returned Iterator is
used. If not supported, the provider should call setIndeterminate(true).void notifySearchClosed()