org.eclipse.search.core.text
Class TextSearchRequestor
java.lang.Object
org.eclipse.search.core.text.TextSearchRequestor
-
public abstract class TextSearchRequestor
- extends
Object
Collects the results from a search engine query.
Clients implement a subclass to pass to
TextSearchEngine.search(TextSearchScope, TextSearchRequestor, java.util.regex.Pattern, org.eclipse.core.runtime.IProgressMonitor)
and implement the
acceptPatternMatch(TextSearchMatchAccess)
method, and possibly override other life cycle methods.
The search engine calls
beginReporting()
when a search starts,
then calls
acceptFile(IFile)
for a file visited.
If
acceptFile(IFile)
returns true
reportBinaryFile(IFile)
is
called if the file could be binary followed by
acceptPatternMatch(TextSearchMatchAccess)
for each pattern match found
in this file. The end of the search is signaled with a call to
endReporting()
.
Note that
acceptFile(IFile)
is called for all files in the search scope,
even if no match can be found.
The order of the search results is unspecified and may vary from request to request;
when displaying results, clients should not rely on the order but should instead arrange the results
in an order that would be more meaningful to the user.
-
Since:
- 3.2
-
See Also:
-
TextSearchEngine
Method Summary
|
boolean
|
acceptFile
(
IFile file)
Notification sent before search starts in the given file. |
boolean
|
acceptPatternMatch
(
TextSearchMatchAccess matchAccess)
Accepts the given search match and decides if the search should continue for this file. |
void
|
beginReporting
()
Notification sent before starting the search action. |
void
|
endReporting
()
Notification sent after having completed the search action. |
boolean
|
reportBinaryFile
(
IFile file)
Notification sent that a file might contain binary context. |
Methods inherited from class java.lang.
Object
|
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait
|
TextSearchRequestor
public TextSearchRequestor()
beginReporting
public void beginReporting()
- Notification sent before starting the search action.
Typically, this would tell a search requestor to clear previously
recorded search results.
The default implementation of this method does nothing. Subclasses
may override.
-
endReporting
public void endReporting()
- Notification sent after having completed the search action.
Typically, this would tell a search requestor collector that no more
results will be forthcoming in this search.
The default implementation of this method does nothing. Subclasses
may override.
-
acceptFile
public boolean acceptFile(
IFile file)
throws
CoreException
- Notification sent before search starts in the given file. This method is called for all files that are contained
in the search scope.
Implementors can decide if the file content should be searched for search matches or not.
The default behaviour is to search the file for matches.
-
-
Parameters:
-
file
- the file resource to be searched.
-
Returns:
- If false, no pattern matches will be reported for the content of this file.
-
Throws:
-
CoreException
- implementors can throw a
CoreException
if accessing the resource fails or another
problem prevented the processing of the search match.
reportBinaryFile
public boolean reportBinaryFile(
IFile file)
- Notification sent that a file might contain binary context.
It is the choice of the search engine to report binary files and it is the heuristic of the search engine to decide
that a file could be binary.
Implementors can decide if the file content should be searched for search matches or not.
This call is sent after calls {link
acceptFile(IFile)
that return true
and before any matches
reported for this file with
acceptPatternMatch(TextSearchMatchAccess)
.
The default behaviour is to skip binary files
-
-
Parameters:
-
file
- the file that might be binary
-
Returns:
- If false, no pattern matches will be reported for the content of this file.
acceptPatternMatch
public boolean acceptPatternMatch(
TextSearchMatchAccess matchAccess)
throws
CoreException
- Accepts the given search match and decides if the search should continue for this file.
-
-
Parameters:
-
matchAccess
- gives access to information of the match found. The matchAccess is not a value
object. Its value might change after this method is finished, and the element might be reused.
-
Returns:
- If false is returned no further matches will be reported for this file.
-
Throws:
-
CoreException
- implementors can throw a
CoreException
if accessing the resource fails or another
problem prevented the processing of the search match.
Guidelines for using Eclipse APIs.
Copyright (c) Eclipse contributors and others 2000, 2008. All rights reserved.