public class URLDeclarationProvider extends java.lang.Object implements IdDeclarationProvider
| Constructor and Description |
|---|
URLDeclarationProvider() |
| Modifier and Type | Method and Description |
|---|---|
boolean |
canGetDeclaration(Context context)
Determine whether there could be a declaration in the context.
|
boolean |
canGetDeclaration(Context context,
java.lang.String id)
Determine whether this provider can supply the declaration for an ID.
|
boolean |
canGetDeclarations(Context context,
Node node)
Determine whether this provider can get declarations for a Node.
|
Declaration |
getDeclaration(Context context)
Get the declaration for the given context.
|
IdDeclaration |
getDeclaration(Context context,
java.lang.String id)
Get the declaration corresponding to an ID.
|
static java.lang.String |
getDeclarationId(java.net.URL url)
Get the declaration ID for a URL.
|
java.util.Collection<? extends Declaration> |
getDeclarations(Context context,
Node node)
Get all declarations for a Node.
|
java.util.Collection<? extends Declaration> |
getTopLevelDeclarations(Context context,
Node node)
Get all top-level declarations for a Node.
|
static java.net.URL |
getURL(java.lang.String id)
Get the URL for a declaration ID.
|
static boolean |
isURLDeclaration(java.lang.String id) |
public static java.lang.String getDeclarationId(java.net.URL url)
url - the URLpublic static java.net.URL getURL(java.lang.String id)
id - the declaration IDpublic static boolean isURLDeclaration(java.lang.String id)
public boolean canGetDeclaration(Context context, java.lang.String id)
IdDeclarationProvidertrue if they are responsible
for this ID, regardless of whether the declaration actually exists.canGetDeclaration in interface IdDeclarationProvidercontext - the contextid - the declaration IDtrue if the provider can find the declarationpublic IdDeclaration getDeclaration(Context context, java.lang.String id) throws java.lang.InterruptedException
IdDeclarationProvidergetDeclaration in interface IdDeclarationProvidercontext - the contextid - the declaration IDnull if the declaration is not foundjava.lang.InterruptedException - if the operation is interruptedpublic boolean canGetDeclaration(Context context)
DeclarationProvidercanGetDeclaration in interface DeclarationProvidercontext - the contextpublic Declaration getDeclaration(Context context)
DeclarationProviderDeclarationProvider.canGetDeclaration(oracle.ide.Context) returned true for this context.getDeclaration in interface DeclarationProvidercontext - the contextpublic boolean canGetDeclarations(Context context, Node node)
DeclarationProvidercanGetDeclarations in interface DeclarationProvidercontext - the contextnode - the Nodepublic java.util.Collection<? extends Declaration> getDeclarations(Context context, Node node)
DeclarationProvidergetDeclarations in interface DeclarationProvidercontext - the contextnode - the Nodepublic java.util.Collection<? extends Declaration> getTopLevelDeclarations(Context context, Node node)
DeclarationProvider
Some languages have a hierarchy of declarations. Objects further down in
the hierarchy can only be accessed through these top-level declarations.
For example, methods in a Java class can only be referenced directly
through a reference to the Java class. Or columns in a database table
might only be referenced through a reference to the table. In those
cases, it is possible to search for all references to a Node by
searching only for the top-level declarations. This improves performance
compared to searching for every declaration in the Node.
Implementations that do not have such a declaration hierarchy can simply
call DeclarationProvider.getDeclarations(Context,Node).
getTopLevelDeclarations in interface DeclarationProvidercontext - the contextnode - the Node