|
|
|
|
org.eclipse.jdt.core.search
Class SearchEngine
java.lang.Object
org.eclipse.jdt.core.search.SearchEngine
-
public class SearchEngine
- extends
Object
A
SearchEngine searches for Java elements following a search pattern.
The search can be limited to a search scope.
Various search patterns can be created using the factory methods
SearchPattern.createPattern(String, int, int, int) ,
SearchPattern.createPattern(IJavaElement, int) ,
SearchPattern.createOrPattern(SearchPattern, SearchPattern) .
For example, one can search for references to a method in the hierarchy of a type,
or one can search for the declarations of types starting with "Abstract" in a project.
This class may be instantiated.
-
Restriction:
- This class is not intended to be subclassed by clients.
Method Summary
|
static
IJavaSearchScope
|
createHierarchyScope
(
IType type)
Returns a Java search scope limited to the hierarchy of the given type. |
static
IJavaSearchScope
|
createHierarchyScope
(
IType type,
WorkingCopyOwner owner)
Returns a Java search scope limited to the hierarchy of the given type. |
static
IJavaSearchScope
|
createJavaSearchScope
(
IJavaElement[] elements)
Returns a Java search scope limited to the given Java elements. |
static
IJavaSearchScope
|
createJavaSearchScope
(
IJavaElement[] elements,
boolean includeReferencedProjects)
Returns a Java search scope limited to the given Java elements. |
static
IJavaSearchScope
|
createJavaSearchScope
(
IJavaElement[] elements,
int includeMask)
Returns a Java search scope limited to the given Java elements. |
static
IJavaSearchScope
|
createJavaSearchScope
(
IResource[] resources)
Deprecated. Use
createJavaSearchScope(IJavaElement[]) instead.
|
static
ISearchPattern
|
createOrSearchPattern
(
ISearchPattern leftPattern,
ISearchPattern rightPattern)
Deprecated. Use
SearchPattern.createOrPattern(SearchPattern, SearchPattern) instead.
|
static
ISearchPattern
|
createSearchPattern
(
IJavaElement element,
int limitTo)
Deprecated. Use
SearchPattern.createPattern(IJavaElement, int) instead.
|
static
ISearchPattern
|
createSearchPattern
(
String stringPattern,
int searchFor,
int limitTo,
boolean isCaseSensitive)
Deprecated. Use
SearchPattern.createPattern(String, int, int, int) instead.
|
static
TypeNameMatch
|
createTypeNameMatch
(
IType type,
int modifiers)
Create a type name match on a given type with specific modifiers. |
static
IJavaSearchScope
|
createWorkspaceScope
()
Returns a Java search scope with the workspace as the only limit. |
static
SearchParticipant
|
getDefaultSearchParticipant
()
Returns a new default Java search participant. |
void
|
search
(
IWorkspace workspace,
IJavaElement element,
int limitTo,
IJavaSearchScope scope,
IJavaSearchResultCollector resultCollector)
Deprecated. Use
search(SearchPattern, SearchParticipant[], IJavaSearchScope, SearchRequestor, IProgressMonitor) instead.
|
void
|
search
(
IWorkspace workspace,
ISearchPattern searchPattern,
IJavaSearchScope scope,
IJavaSearchResultCollector resultCollector)
Deprecated. Use
search(SearchPattern, SearchParticipant[], IJavaSearchScope, SearchRequestor, IProgressMonitor) instead.
|
void
|
search
(
IWorkspace workspace,
String patternString,
int searchFor,
int limitTo,
IJavaSearchScope scope,
IJavaSearchResultCollector resultCollector)
Deprecated. Use
search(SearchPattern, SearchParticipant[], IJavaSearchScope, SearchRequestor, IProgressMonitor) instead.
|
void
|
search
(
SearchPattern pattern,
SearchParticipant[] participants,
IJavaSearchScope scope,
SearchRequestor requestor,
IProgressMonitor monitor)
Searches for matches of a given search pattern. |
void
|
searchAllTypeNames
(char[][] qualifications,
char[][] typeNames,
IJavaSearchScope scope,
TypeNameMatchRequestor nameMatchRequestor,
int waitingPolicy,
IProgressMonitor progressMonitor)
Searches for all top-level types and member types in the given scope matching any of the given qualifications
and type names in a case sensitive way. |
void
|
searchAllTypeNames
(char[][] qualifications,
char[][] typeNames,
IJavaSearchScope scope,
TypeNameRequestor nameRequestor,
int waitingPolicy,
IProgressMonitor progressMonitor)
Searches for all top-level types and member types in the given scope matching any of the given qualifications
and type names in a case sensitive way. |
void
|
searchAllTypeNames
(char[] packageName,
char[] typeName,
int matchRule,
int searchFor,
IJavaSearchScope scope,
ITypeNameRequestor nameRequestor,
int waitingPolicy,
IProgressMonitor progressMonitor)
Deprecated. Use
searchAllTypeNames(char[], char[], int, int, IJavaSearchScope, TypeNameRequestor, int, IProgressMonitor) instead
|
void
|
searchAllTypeNames
(char[] packageExactName,
char[] typeName,
int matchRule,
int searchFor,
IJavaSearchScope scope,
TypeNameRequestor nameRequestor,
int waitingPolicy,
IProgressMonitor progressMonitor)
Deprecated. Use
searchAllTypeNames(char[], int, char[], int, int, IJavaSearchScope, TypeNameRequestor, int, IProgressMonitor)
instead
|
void
|
searchAllTypeNames
(char[] packageName,
int packageMatchRule,
char[] typeName,
int typeMatchRule,
int searchFor,
IJavaSearchScope scope,
TypeNameMatchRequestor nameMatchRequestor,
int waitingPolicy,
IProgressMonitor progressMonitor)
Searches for all top-level types and member types in the given scope. |
void
|
searchAllTypeNames
(char[] packageName,
int packageMatchRule,
char[] typeName,
int typeMatchRule,
int searchFor,
IJavaSearchScope scope,
TypeNameRequestor nameRequestor,
int waitingPolicy,
IProgressMonitor progressMonitor)
Searches for all top-level types and member types in the given scope. |
void
|
searchAllTypeNames
(
IWorkspace workspace,
char[] packageName,
char[] typeName,
int matchMode,
boolean isCaseSensitive,
int searchFor,
IJavaSearchScope scope,
ITypeNameRequestor nameRequestor,
int waitingPolicy,
IProgressMonitor progressMonitor)
Deprecated. Use
searchAllTypeNames(char[], char[], int, int, IJavaSearchScope, ITypeNameRequestor, int, IProgressMonitor) instead
|
void
|
searchDeclarationsOfAccessedFields
(
IJavaElement enclosingElement,
SearchRequestor requestor,
IProgressMonitor monitor)
Searches for all declarations of the fields accessed in the given element. |
void
|
searchDeclarationsOfAccessedFields
(
IWorkspace workspace,
IJavaElement enclosingElement,
IJavaSearchResultCollector resultCollector)
Deprecated. Use
searchDeclarationsOfAccessedFields(IJavaElement, SearchRequestor, IProgressMonitor) instead.
|
void
|
searchDeclarationsOfReferencedTypes
(
IJavaElement enclosingElement,
SearchRequestor requestor,
IProgressMonitor monitor)
Searches for all declarations of the types referenced in the given element. |
void
|
searchDeclarationsOfReferencedTypes
(
IWorkspace workspace,
IJavaElement enclosingElement,
IJavaSearchResultCollector resultCollector)
Deprecated. Use
searchDeclarationsOfReferencedTypes(IJavaElement, SearchRequestor, IProgressMonitor) instead.
|
void
|
searchDeclarationsOfSentMessages
(
IJavaElement enclosingElement,
SearchRequestor requestor,
IProgressMonitor monitor)
Searches for all declarations of the methods invoked in the given element. |
void
|
searchDeclarationsOfSentMessages
(
IWorkspace workspace,
IJavaElement enclosingElement,
IJavaSearchResultCollector resultCollector)
Deprecated. Use
searchDeclarationsOfSentMessages(IJavaElement, SearchRequestor, IProgressMonitor) instead.
|
Methods inherited from class java.lang.
Object
|
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait
|
SearchEngine
public SearchEngine()
- Creates a new search engine.
SearchEngine
public SearchEngine(
ICompilationUnit[] workingCopies)
- Creates a new search engine with a list of working copies that will take precedence over
their original compilation units in the subsequent search operations.
Note that passing an empty working copy will be as if the original compilation
unit had been deleted.
Since 3.0 the given working copies take precedence over primary working copies (if any).
-
Parameters:
-
workingCopies - the working copies that take precedence over their original compilation units -
Since:
- 3.0
SearchEngine
public SearchEngine(
IWorkingCopy[] workingCopies)
-
Deprecated. Use
SearchEngine(ICompilationUnit[]) instead.
- Creates a new search engine with a list of working copies that will take precedence over
their original compilation units in the subsequent search operations.
Note that passing an empty working copy will be as if the original compilation
unit had been deleted.
Since 3.0 the given working copies take precedence over primary working copies (if any).
-
Parameters:
-
workingCopies - the working copies that take precedence over their original compilation units -
Since:
- 2.0
SearchEngine
public SearchEngine(
WorkingCopyOwner workingCopyOwner)
- Creates a new search engine with the given working copy owner.
The working copies owned by this owner will take precedence over
the primary compilation units in the subsequent search operations.
-
Parameters:
-
workingCopyOwner - the owner of the working copies that take precedence over their original compilation units -
Since:
- 3.0
createHierarchyScope
public static
IJavaSearchScope createHierarchyScope(
IType type)
throws
JavaModelException
- Returns a Java search scope limited to the hierarchy of the given type.
The Java elements resulting from a search with this scope will
be types in this hierarchy, or members of the types in this hierarchy.
-
-
Parameters:
-
type - the focus of the hierarchy scope
-
Returns:
- a new hierarchy scope
-
Throws:
-
JavaModelException
- if the hierarchy could not be computed on the given type
createHierarchyScope
public static
IJavaSearchScope createHierarchyScope(
IType type,
WorkingCopyOwner owner)
throws
JavaModelException
- Returns a Java search scope limited to the hierarchy of the given type.
When the hierarchy is computed, the types defined in the working copies owned
by the given owner take precedence over the original compilation units.
The Java elements resulting from a search with this scope will
be types in this hierarchy, or members of the types in this hierarchy.
-
-
Parameters:
-
type - the focus of the hierarchy scope -
owner - the owner of working copies that take precedence over original compilation units
-
Returns:
- a new hierarchy scope
-
Throws:
-
JavaModelException
- if the hierarchy could not be computed on the given type -
Since:
- 3.0
createJavaSearchScope
public static
IJavaSearchScope createJavaSearchScope(
IResource[] resources)
-
Deprecated. Use
createJavaSearchScope(IJavaElement[]) instead.
- Returns a Java search scope limited to the given resources.
The Java elements resulting from a search with this scope will
have their underlying resource included in or equals to one of the given
resources.
Resources must not overlap, for example, one cannot include a folder and its children.
-
-
Parameters:
-
resources - the resources the scope is limited to
-
Returns:
- a new Java search scope
createJavaSearchScope
public static
IJavaSearchScope createJavaSearchScope(
IJavaElement[] elements)
- Returns a Java search scope limited to the given Java elements.
The Java elements resulting from a search with this scope will
be children of the given elements.
If an element is an IJavaProject, then the project's source folders,
its jars (external and internal) and its referenced projects (with their source
folders and jars, recursively) will be included.
If an element is an IPackageFragmentRoot, then only the package fragments of
this package fragment root will be included.
If an element is an IPackageFragment, then only the compilation unit and class
files of this package fragment will be included. Subpackages will NOT be
included.
In other words, this is equivalent to using SearchEngine.createJavaSearchScope(elements, true).
-
-
Parameters:
-
elements - the Java elements the scope is limited to
-
Returns:
- a new Java search scope
-
Since:
- 2.0
createJavaSearchScope
public static
IJavaSearchScope createJavaSearchScope(
IJavaElement[] elements,
boolean includeReferencedProjects)
- Returns a Java search scope limited to the given Java elements.
The Java elements resulting from a search with this scope will
be children of the given elements.
If an element is an IJavaProject, then the project's source folders,
its jars (external and internal) and - if specified - its referenced projects
(with their source folders and jars, recursively) will be included.
If an element is an IPackageFragmentRoot, then only the package fragments of
this package fragment root will be included.
If an element is an IPackageFragment, then only the compilation unit and class
files of this package fragment will be included. Subpackages will NOT be
included.
-
-
Parameters:
-
elements - the Java elements the scope is limited to -
includeReferencedProjects - a flag indicating if referenced projects must be
recursively included
-
Returns:
- a new Java search scope
-
Since:
- 2.0
createJavaSearchScope
public static
IJavaSearchScope createJavaSearchScope(
IJavaElement[] elements,
int includeMask)
- Returns a Java search scope limited to the given Java elements.
The Java elements resulting from a search with this scope will
be children of the given elements.
If an element is an IJavaProject, then it includes:
- its source folders if IJavaSearchScope.SOURCES is specified,
- its application libraries (internal and external jars, class folders that are on the raw classpath,
or the ones that are coming from a classpath path variable,
or the ones that are coming from a classpath container with the K_APPLICATION kind)
if IJavaSearchScope.APPLICATION_LIBRARIES is specified
- its system libraries (internal and external jars, class folders that are coming from an
IClasspathContainer with the K_SYSTEM kind)
if IJavaSearchScope.APPLICATION_LIBRARIES is specified
- its referenced projects (with their source folders and jars, recursively)
if IJavaSearchScope.REFERENCED_PROJECTS is specified.
If an element is an IPackageFragmentRoot, then only the package fragments of
this package fragment root will be included.
If an element is an IPackageFragment, then only the compilation unit and class
files of this package fragment will be included. Subpackages will NOT be
included.
-
-
Parameters:
-
elements - the Java elements the scope is limited to -
includeMask - the bit-wise OR of all include types of interest
-
Returns:
- a new Java search scope
-
Since:
- 3.0
-
See Also:
-
IJavaSearchScope.SOURCES ,
IJavaSearchScope.APPLICATION_LIBRARIES ,
IJavaSearchScope.SYSTEM_LIBRARIES ,
IJavaSearchScope.REFERENCED_PROJECTS
createOrSearchPattern
public static
ISearchPattern createOrSearchPattern(
ISearchPattern leftPattern,
ISearchPattern rightPattern)
-
Deprecated. Use
SearchPattern.createOrPattern(SearchPattern, SearchPattern) instead.
- Returns a search pattern that combines the given two patterns into a "or" pattern.
The search result will match either the left pattern or the right pattern.
-
-
Parameters:
-
leftPattern - the left pattern -
rightPattern - the right pattern
-
Returns:
- a "or" pattern
createSearchPattern
public static
ISearchPattern createSearchPattern(
String stringPattern,
int searchFor,
int limitTo,
boolean isCaseSensitive)
-
Deprecated. Use
SearchPattern.createPattern(String, int, int, int) instead.
- Returns a search pattern based on a given string pattern. The string patterns support '*' wild-cards.
The remaining parameters are used to narrow down the type of expected results.
Examples:
- search for case insensitive references to
Object :
createSearchPattern("Object", TYPE, REFERENCES, false);
- search for case sensitive references to exact
Object() constructor:
createSearchPattern("java.lang.Object()", CONSTRUCTOR, REFERENCES, true);
- search for implementers of
java.lang.Runnable :
createSearchPattern("java.lang.Runnable", TYPE, IMPLEMENTORS, true);
-
-
Parameters:
-
stringPattern - the given pattern -
searchFor - determines the nature of the searched elements
-
limitTo - determines the nature of the expected matches
-
isCaseSensitive - indicates whether the search is case sensitive or not.
-
Returns:
- a search pattern on the given string pattern, or
null if the string pattern is ill-formed.
createSearchPattern
public static
ISearchPattern createSearchPattern(
IJavaElement element,
int limitTo)
-
Deprecated. Use
SearchPattern.createPattern(IJavaElement, int) instead.
- Returns a search pattern based on a given Java element.
The pattern is used to trigger the appropriate search, and can be parameterized as follows:
-
-
Parameters:
-
element - the Java element the search pattern is based on -
limitTo - determines the nature of the expected matches
-
Returns:
- a search pattern for a Java element or
null if the given element is ill-formed
createTypeNameMatch
public static
TypeNameMatch createTypeNameMatch(
IType type,
int modifiers)
- Create a type name match on a given type with specific modifiers.
-
-
Parameters:
-
type - The java model handle of the type -
modifiers - Modifiers of the type
-
Returns:
- A non-null match on the given type.
-
Since:
- 3.3
createWorkspaceScope
public static
IJavaSearchScope createWorkspaceScope()
- Returns a Java search scope with the workspace as the only limit.
-
-
Returns:
- a new workspace scope
getDefaultSearchParticipant
public static
SearchParticipant getDefaultSearchParticipant()
- Returns a new default Java search participant.
-
-
Returns:
- a new default Java search participant
-
Since:
- 3.0
search
public void search(
IWorkspace workspace,
String patternString,
int searchFor,
int limitTo,
IJavaSearchScope scope,
IJavaSearchResultCollector resultCollector)
throws
JavaModelException
-
Deprecated. Use
search(SearchPattern, SearchParticipant[], IJavaSearchScope, SearchRequestor, IProgressMonitor) instead.
- Searches for the Java element determined by the given signature. The signature
can be incomplete. For example, a call like
search(ws, "run()", METHOD,REFERENCES, col)
searches for all references to the method run .
Note that by default the pattern will be case insensitive. For specifying case s
sensitive search, use search(workspace, createSearchPattern(patternString, searchFor, limitTo, true), scope, resultCollector);
-
-
Parameters:
-
workspace - the workspace -
patternString - the pattern to be searched for -
searchFor - a hint what kind of Java element the string pattern represents.
Look into
IJavaSearchConstants for valid values -
limitTo - one of the following values:
-
scope - the search result has to be limited to the given scope -
resultCollector - a callback object to which each match is reported
-
Throws:
-
JavaModelException
- if the search failed. Reasons include:
- the classpath is incorrectly set
search
public void search(
IWorkspace workspace,
IJavaElement element,
int limitTo,
IJavaSearchScope scope,
IJavaSearchResultCollector resultCollector)
throws
JavaModelException
-
Deprecated. Use
search(SearchPattern, SearchParticipant[], IJavaSearchScope, SearchRequestor, IProgressMonitor) instead.
- Searches for the given Java element.
-
-
Parameters:
-
workspace - the workspace -
element - the Java element to be searched for -
limitTo - one of the following values:
-
scope - the search result has to be limited to the given scope -
resultCollector - a callback object to which each match is reported
-
Throws:
-
JavaModelException
- if the search failed. Reasons include:
- the element doesn't exist
- the classpath is incorrectly set
search
public void search(
IWorkspace workspace,
ISearchPattern searchPattern,
IJavaSearchScope scope,
IJavaSearchResultCollector resultCollector)
throws
JavaModelException
-
Deprecated. Use
search(SearchPattern, SearchParticipant[], IJavaSearchScope, SearchRequestor, IProgressMonitor) instead.
- Searches for matches of a given search pattern. Search patterns can be created using helper
methods (from a String pattern or a Java element) and encapsulate the description of what is
being searched (for example, search method declarations in a case sensitive way).
-
-
Parameters:
-
workspace - the workspace -
searchPattern - the pattern to be searched for -
scope - the search result has to be limited to the given scope -
resultCollector - a callback object to which each match is reported
-
Throws:
-
JavaModelException
- if the search failed. Reasons include:
- the classpath is incorrectly set
search
public void search(
SearchPattern pattern,
SearchParticipant[] participants,
IJavaSearchScope scope,
SearchRequestor requestor,
IProgressMonitor monitor)
throws
CoreException
- Searches for matches of a given search pattern. Search patterns can be created using helper
methods (from a String pattern or a Java element) and encapsulate the description of what is
being searched (for example, search method declarations in a case sensitive way).
-
-
Parameters:
-
pattern - the pattern to search -
participants - the particpants in the search -
scope - the search scope -
requestor - the requestor to report the matches to -
monitor - the progress monitor used to report progress
-
Throws:
-
CoreException
- if the search failed. Reasons include:
- the classpath is incorrectly set
-
Since:
- 3.0
searchAllTypeNames
public void searchAllTypeNames(char[] packageExactName,
char[] typeName,
int matchRule,
int searchFor,
IJavaSearchScope scope,
TypeNameRequestor nameRequestor,
int waitingPolicy,
IProgressMonitor progressMonitor)
throws
JavaModelException
-
Deprecated. Use
searchAllTypeNames(char[], int, char[], int, int, IJavaSearchScope, TypeNameRequestor, int, IProgressMonitor)
instead
- Searches for all top-level types and member types in the given scope.
The search can be selecting specific types (given a package exact full name or
a type name with specific match mode).
-
-
Parameters:
-
packageExactName - the exact package full name of the searched types.
If you want to use a prefix or a wild-carded string for package, you need to use
searchAllTypeNames(char[], int, char[], int, int, IJavaSearchScope, TypeNameRequestor, int, IProgressMonitor)
method instead. May be null , then any package name is accepted. -
typeName - the dot-separated qualified name of the searched type (the qualification include
the enclosing types if the searched type is a member type), or a prefix
for this type, or a wild-carded string for this type.
May be null , then any type name is accepted. -
matchRule - type name match rule one of
combined with
SearchPattern.R_CASE_SENSITIVE ,
e.g.
SearchPattern.R_EXACT_MATCH |
SearchPattern.R_CASE_SENSITIVE if an exact and case sensitive match is requested,
or
SearchPattern.R_PREFIX_MATCH if a prefix non case sensitive match is requested. -
searchFor - determines the nature of the searched elements
-
scope - the scope to search in -
nameRequestor - the requestor that collects the results of the search -
waitingPolicy - one of
-
progressMonitor - the progress monitor to report progress to, or null if no progress
monitor is provided
-
Throws:
-
JavaModelException
- if the search failed. Reasons include:
- the classpath is incorrectly set
-
Since:
- 3.1
searchAllTypeNames
public void searchAllTypeNames(char[] packageName,
int packageMatchRule,
char[] typeName,
int typeMatchRule,
int searchFor,
IJavaSearchScope scope,
TypeNameRequestor nameRequestor,
int waitingPolicy,
IProgressMonitor progressMonitor)
throws
JavaModelException
- Searches for all top-level types and member types in the given scope.
The search can be selecting specific types (given a package name using specific match mode
and/or a type name using another specific match mode).
-
-
Parameters:
-
packageName - the full name of the package of the searched types, or a prefix for this
package, or a wild-carded string for this package.
May be null , then any package name is accepted. -
typeName - the dot-separated qualified name of the searched type (the qualification include
the enclosing types if the searched type is a member type), or a prefix
for this type, or a wild-carded string for this type.
May be null , then any type name is accepted. -
packageMatchRule - one of
combined with
SearchPattern.R_CASE_SENSITIVE ,
e.g.
SearchPattern.R_EXACT_MATCH |
SearchPattern.R_CASE_SENSITIVE if an exact and case sensitive match is requested,
or
SearchPattern.R_PREFIX_MATCH if a prefix non case sensitive match is requested. -
typeMatchRule - one of
combined with
SearchPattern.R_CASE_SENSITIVE ,
e.g.
SearchPattern.R_EXACT_MATCH |
SearchPattern.R_CASE_SENSITIVE if an exact and case sensitive match is requested,
or
SearchPattern.R_PREFIX_MATCH if a prefix non case sensitive match is requested. -
searchFor - determines the nature of the searched elements
-
scope - the scope to search in -
nameRequestor - the requestor that collects the results of the search -
waitingPolicy - one of
-
progressMonitor - the progress monitor to report progress to, or null if no progress
monitor is provided
-
Throws:
-
JavaModelException
- if the search failed. Reasons include:
- the classpath is incorrectly set
-
Since:
- 3.3
searchAllTypeNames
public void searchAllTypeNames(char[] packageName,
int packageMatchRule,
char[] typeName,
int typeMatchRule,
int searchFor,
IJavaSearchScope scope,
TypeNameMatchRequestor nameMatchRequestor,
int waitingPolicy,
IProgressMonitor progressMonitor)
throws
JavaModelException
- Searches for all top-level types and member types in the given scope.
The search can be selecting specific types (given a package name using specific match mode
and/or a type name using another specific match mode).
Provided
TypeNameMatchRequestor requestor will collect
TypeNameMatch
matches found during the search.
-
-
Parameters:
-
packageName - the full name of the package of the searched types, or a prefix for this
package, or a wild-carded string for this package.
May be null , then any package name is accepted. -
packageMatchRule - one of
combined with
SearchPattern.R_CASE_SENSITIVE ,
e.g.
SearchPattern.R_EXACT_MATCH |
SearchPattern.R_CASE_SENSITIVE if an exact and case sensitive match is requested,
or
SearchPattern.R_PREFIX_MATCH if a prefix non case sensitive match is requested. -
typeName - the dot-separated qualified name of the searched type (the qualification include
the enclosing types if the searched type is a member type), or a prefix
for this type, or a wild-carded string for this type.
May be null , then any type name is accepted. -
typeMatchRule - one of
combined with
SearchPattern.R_CASE_SENSITIVE ,
e.g.
SearchPattern.R_EXACT_MATCH |
SearchPattern.R_CASE_SENSITIVE if an exact and case sensitive match is requested,
or
SearchPattern.R_PREFIX_MATCH if a prefix non case sensitive match is requested. -
searchFor - determines the nature of the searched elements
-
scope - the scope to search in -
nameMatchRequestor - the
requestor that collects
matches of the search. -
waitingPolicy - one of
-
progressMonitor - the progress monitor to report progress to, or null if no progress
monitor is provided
-
Throws:
-
JavaModelException
- if the search failed. Reasons include:
- the classpath is incorrectly set
-
Since:
- 3.3
searchAllTypeNames
public void searchAllTypeNames(char[][] qualifications,
char[][] typeNames,
IJavaSearchScope scope,
TypeNameRequestor nameRequestor,
int waitingPolicy,
IProgressMonitor progressMonitor)
throws
JavaModelException
- Searches for all top-level types and member types in the given scope matching any of the given qualifications
and type names in a case sensitive way.
-
-
Parameters:
-
qualifications - the qualified name of the package/enclosing type of the searched types.
May be null , then any package name is accepted. -
typeNames - the simple names of the searched types.
If this parameter is null , then no type will be found. -
scope - the scope to search in -
nameRequestor - the requestor that collects the results of the search -
waitingPolicy - one of
-
progressMonitor - the progress monitor to report progress to, or null if no progress
monitor is provided
-
Throws:
-
JavaModelException
- if the search failed. Reasons include:
- the classpath is incorrectly set
-
Since:
- 3.1
searchAllTypeNames
public void searchAllTypeNames(char[][] qualifications,
char[][] typeNames,
IJavaSearchScope scope,
TypeNameMatchRequestor nameMatchRequestor,
int waitingPolicy,
IProgressMonitor progressMonitor)
throws
JavaModelException
- Searches for all top-level types and member types in the given scope matching any of the given qualifications
and type names in a case sensitive way.
Provided
TypeNameMatchRequestor requestor will collect
TypeNameMatch
matches found during the search.
-
-
Parameters:
-
qualifications - the qualified name of the package/enclosing type of the searched types.
May be null , then any package name is accepted. -
typeNames - the simple names of the searched types.
If this parameter is null , then no type will be found. -
scope - the scope to search in -
nameMatchRequestor - the
requestor that collects
matches of the search. -
waitingPolicy - one of
-
progressMonitor - the progress monitor to report progress to, or null if no progress
monitor is provided
-
Throws:
-
JavaModelException
- if the search failed. Reasons include:
- the classpath is incorrectly set
-
Since:
- 3.3
searchAllTypeNames
public void searchAllTypeNames(char[] packageName,
char[] typeName,
int matchRule,
int searchFor,
IJavaSearchScope scope,
ITypeNameRequestor nameRequestor,
int waitingPolicy,
IProgressMonitor progressMonitor)
throws
JavaModelException
-
Deprecated. Use
searchAllTypeNames(char[], char[], int, int, IJavaSearchScope, TypeNameRequestor, int, IProgressMonitor) instead
- Searches for all top-level types and member types in the given scope.
The search can be selecting specific types (given a package or a type name
prefix and match modes).
-
-
Parameters:
-
packageName - the full name of the package of the searched types, or a prefix for this
package, or a wild-carded string for this package. -
typeName - the dot-separated qualified name of the searched type (the qualification include
the enclosing types if the searched type is a member type), or a prefix
for this type, or a wild-carded string for this type. -
matchRule - one of
combined with
SearchPattern.R_CASE_SENSITIVE ,
e.g.
SearchPattern.R_EXACT_MATCH |
SearchPattern.R_CASE_SENSITIVE if an exact and case sensitive match is requested,
or
SearchPattern.R_PREFIX_MATCH if a prefix non case sensitive match is requested. -
searchFor - one of
-
scope - the scope to search in -
nameRequestor - the requestor that collects the results of the search -
waitingPolicy - one of
-
progressMonitor - the progress monitor to report progress to, or null if no progress
monitor is provided
-
Throws:
-
JavaModelException
- if the search failed. Reasons include:
- the classpath is incorrectly set
-
Since:
- 3.0
searchAllTypeNames
public void searchAllTypeNames(
IWorkspace workspace,
char[] packageName,
char[] typeName,
int matchMode,
boolean isCaseSensitive,
int searchFor,
IJavaSearchScope scope,
ITypeNameRequestor nameRequestor,
int waitingPolicy,
IProgressMonitor progressMonitor)
throws
JavaModelException
-
Deprecated. Use
searchAllTypeNames(char[], char[], int, int, IJavaSearchScope, ITypeNameRequestor, int, IProgressMonitor) instead
- Searches for all top-level types and member types in the given scope.
The search can be selecting specific types (given a package or a type name
prefix and match modes).
-
-
Parameters:
-
workspace - the workspace to search in -
packageName - the full name of the package of the searched types, or a prefix for this
package, or a wild-carded string for this package. -
typeName - the dot-separated qualified name of the searched type (the qualification include
the enclosing types if the searched type is a member type), or a prefix
for this type, or a wild-carded string for this type. -
matchMode - one of
-
isCaseSensitive - whether the search should be case sensitive -
searchFor - one of
-
scope - the scope to search in -
nameRequestor - the requestor that collects the results of the search -
waitingPolicy - one of
-
progressMonitor - the progress monitor to report progress to, or null if no progress
monitor is provided
-
Throws:
-
JavaModelException
- if the search failed. Reasons include:
- the classpath is incorrectly set
searchDeclarationsOfAccessedFields
public void searchDeclarationsOfAccessedFields(
IJavaElement enclosingElement,
SearchRequestor requestor,
IProgressMonitor monitor)
throws
JavaModelException
- Searches for all declarations of the fields accessed in the given element.
The element can be a compilation unit or a source type/method/field.
Reports the field declarations using the given requestor.
Consider the following code:
class A {
int field1;
}
class B extends A {
String value;
}
class X {
void test() {
B b = new B();
System.out.println(b.value + b.field1);
};
}
then searching for declarations of accessed fields in method
X.test() would collect the fields
B.value and A.field1 .
-
-
Parameters:
-
enclosingElement - the field, method, type, or compilation unit to be searched in -
requestor - a callback object to which each match is reported -
monitor - the progress monitor used to report progress
-
Throws:
-
JavaModelException
- if the search failed. Reasons include:
- the element doesn't exist
- the classpath is incorrectly set
-
IllegalArgumentException
- if the given java element has not the right type -
Since:
- 3.0
searchDeclarationsOfAccessedFields
public void searchDeclarationsOfAccessedFields(
IWorkspace workspace,
IJavaElement enclosingElement,
IJavaSearchResultCollector resultCollector)
throws
JavaModelException
-
Deprecated. Use
searchDeclarationsOfAccessedFields(IJavaElement, SearchRequestor, IProgressMonitor) instead.
- Searches for all declarations of the fields accessed in the given element.
The element can be a compilation unit, a source type, or a source method.
Reports the field declarations using the given collector.
Consider the following code:
class A {
int field1;
}
class B extends A {
String value;
}
class X {
void test() {
B b = new B();
System.out.println(b.value + b.field1);
};
}
then searching for declarations of accessed fields in method
X.test() would collect the fields
B.value and A.field1 .
-
-
Parameters:
-
workspace - the workspace -
enclosingElement - the method, type, or compilation unit to be searched in -
resultCollector - a callback object to which each match is reported
-
Throws:
-
JavaModelException
- if the search failed. Reasons include:
- the element doesn't exist
- the classpath is incorrectly set
searchDeclarationsOfReferencedTypes
public void searchDeclarationsOfReferencedTypes(
IJavaElement enclosingElement,
SearchRequestor requestor,
IProgressMonitor monitor)
throws
JavaModelException
- Searches for all declarations of the types referenced in the given element.
The element can be a compilation unit or a source type/method/field.
Reports the type declarations using the given requestor.
Consider the following code:
class A {
}
class B extends A {
}
interface I {
int VALUE = 0;
}
class X {
void test() {
B b = new B();
this.foo(b, I.VALUE);
};
}
then searching for declarations of referenced types in method X.test()
would collect the class B and the interface I .
-
-
Parameters:
-
enclosingElement - the field, method, type, or compilation unit to be searched in -
requestor - a callback object to which each match is reported -
monitor - the progress monitor used to report progress
-
Throws:
-
JavaModelException
- if the search failed. Reasons include:
- the element doesn't exist
- the classpath is incorrectly set
-
IllegalArgumentException
- if the given java element has not the right type -
Since:
- 3.0
searchDeclarationsOfReferencedTypes
public void searchDeclarationsOfReferencedTypes(
IWorkspace workspace,
IJavaElement enclosingElement,
IJavaSearchResultCollector resultCollector)
throws
JavaModelException
-
Deprecated. Use
searchDeclarationsOfReferencedTypes(IJavaElement, SearchRequestor, IProgressMonitor) instead.
- Searches for all declarations of the types referenced in the given element.
The element can be a compilation unit, a source type, or a source method.
Reports the type declarations using the given collector.
Consider the following code:
class A {
}
class B extends A {
}
interface I {
int VALUE = 0;
}
class X {
void test() {
B b = new B();
this.foo(b, I.VALUE);
};
}
then searching for declarations of referenced types in method X.test()
would collect the class B and the interface I .
-
-
Parameters:
-
workspace - the workspace -
enclosingElement - the method, type, or compilation unit to be searched in -
resultCollector - a callback object to which each match is reported
-
Throws:
-
JavaModelException
- if the search failed. Reasons include:
- the element doesn't exist
- the classpath is incorrectly set
searchDeclarationsOfSentMessages
public void searchDeclarationsOfSentMessages(
IJavaElement enclosingElement,
SearchRequestor requestor,
IProgressMonitor monitor)
throws
JavaModelException
- Searches for all declarations of the methods invoked in the given element.
The element can be a compilation unit or a source type/method/field.
Reports the method declarations using the given requestor.
Consider the following code:
class A {
void foo() {};
void bar() {};
}
class B extends A {
void foo() {};
}
class X {
void test() {
A a = new B();
a.foo();
B b = (B)a;
b.bar();
};
}
then searching for declarations of sent messages in method
X.test() would collect the methods
A.foo() , B.foo() , and A.bar() .
-
-
Parameters:
-
enclosingElement - the field, method, type or compilation unit to be searched in -
requestor - a callback object to which each match is reported -
monitor - the progress monitor used to report progress
-
Throws:
-
JavaModelException
- if the search failed. Reasons include:
- the element doesn't exist
- the classpath is incorrectly set
-
IllegalArgumentException
- if the given java element has not the right type -
Since:
- 3.0
searchDeclarationsOfSentMessages
public void searchDeclarationsOfSentMessages(
IWorkspace workspace,
IJavaElement enclosingElement,
IJavaSearchResultCollector resultCollector)
throws
JavaModelException
-
Deprecated. Use
searchDeclarationsOfSentMessages(IJavaElement, SearchRequestor, IProgressMonitor) instead.
- Searches for all declarations of the methods invoked in the given element.
The element can be a compilation unit, a source type, or a source method.
Reports the method declarations using the given collector.
Consider the following code:
class A {
void foo() {};
void bar() {};
}
class B extends A {
void foo() {};
}
class X {
void test() {
A a = new B();
a.foo();
B b = (B)a;
b.bar();
};
}
then searching for declarations of sent messages in method
X.test() would collect the methods
A.foo() , B.foo() , and A.bar() .
-
-
Parameters:
-
workspace - the workspace -
enclosingElement - the method, type, or compilation unit to be searched in -
resultCollector - a callback object to which each match is reported
-
Throws:
-
JavaModelException
- if the search failed. Reasons include:
- the element doesn't exist
- the classpath is incorrectly set
Copyright (c) IBM Corp. and others 2000, 2008. All Rights Reserved.
|
|
|