Skip navigation links

Oracle Fusion Middleware Java API Reference for Oracle Extension SDK
11g Release 2 (11.1.2.2.0)

E17493-03


oracle.jdeveloper.java.locator
Class ArrayClassLocator

java.lang.Object
  extended by oracle.jdeveloper.java.locator.BaseClassLocator
      extended by oracle.jdeveloper.java.locator.ArrayClassLocator

All Implemented Interfaces:
JavaClassLocator, JavaClassLocator2, JavaResourceLocator

public class ArrayClassLocator
extends BaseClassLocator

The ArrayClassLocator is an implementation of the JavaClassLocator that delegates the task of locating classes to an array of BaseClassLocator instances.


Field Summary

 

Fields inherited from class oracle.jdeveloper.java.locator.BaseClassLocator
EMPTY_COLLECTION, EMPTY_LOCATOR, EMPTY_STRING_ARRAY

 

Constructor Summary
ArrayClassLocator(BaseClassLocator[] locators)
          Constructs a new ArrayClassLocator for the given set of BaseClassLocator instances.

 

Method Summary
 void buildIndex()
          Instructs this class locator to start building its index for locating files.
 void buildIndexInterruptibly()
          Instructs this class locator to start building its index for locating files.
 void getAllClasses(java.util.Collection<java.lang.String> out, ClassNameFilter filter)
          Fetch all of the top-level classes that are known by this locator.
 void getAllClassesInterruptibly(java.util.Collection<java.lang.String> out, ClassNameFilter filter)
          Get all of the top-level classes that are known by this locator.
 void getAllPackages(java.util.Collection<java.lang.String> out, PackageNameFilter filter)
          Fetch all of the full packges that are known by this locator.
 void getAllPackagesInterruptibly(java.util.Collection<java.lang.String> out, PackageNameFilter filter)
          Get all of the full packges that are known by this locator.
 void getClassesInPackage(java.lang.String packagePrefix, java.util.Collection<java.lang.String> out)
          Fetch the list of top-level classes within the given package, adding them to the out collection provided.
 void getClassesInPackageInterruptibly(java.lang.String packagePrefix, java.util.Collection<java.lang.String> out)
          Get the list of top-level classes within the package.
 java.net.URL getClassURL(java.lang.String fqClassName)
          Fetch the URL for the JavaFile for the given fully-qualified Java class name.
 java.net.URL getClassURLInterruptibly(java.lang.String fqClassName)
          Fetch the URL for the JavaFile for the given fully-qualified Java class name.
 void getPackages(java.lang.String packagePrefix, java.util.Collection<java.lang.String> out)
          Fetch the list of subpackages within the given package, adding them to the out collection provided.
 void getPackagesInterruptibly(java.lang.String packagePrefix, java.util.Collection<java.lang.String> out)
          Get the list of subpackages within the given package.
 java.net.URL getResourceURL(java.lang.String resourceName)
          Fetch the URL for the Java resource file given the resource name.
 java.util.Collection<java.net.URL> getResourceURLs(java.lang.String resourceName)
          Fetch all the URL's for the Java resource file given the resource name.
 java.net.URL getSourceURL(java.lang.String fqClassName)
          Fetch the URL for the SourceFile for the given fully-qualified Java class name.
 java.net.URL getSourceURLInterruptibly(java.lang.String fqClassName)
          Fetch the URL for the SourceFile for the given fully-qualified Java class name.
 java.net.URL getURL(java.lang.String fqClassName)
          Fetch the URL for the JavaFile for the given fully-qualified Java class name.
 java.net.URL getURLInterruptibly(java.lang.String fqClassName)
          Fetch the URL for the JavaFile for the given fully-qualified Java class name.

 

Methods inherited from class oracle.jdeveloper.java.locator.BaseClassLocator
addToCollection, buildFQName, checkInterrupt, ensureValid, getAllClasses, getAllClasses, getAllClassesInterruptibly, getAllClassesInterruptibly, getAllPackages, getAllPackages, getAllPackagesInterruptibly, getAllPackagesInterruptibly, getClassesByName, getClassesByNameInterruptibly, getClassesByPrefix, getClassesByPrefixInterruptibly, getClassesInPackage, getClassesInPackageInterruptibly, getNameCascades, getNameParts, getPackages, getPackagesInterruptibly, getStringArray

 

Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

 

Constructor Detail

ArrayClassLocator

public ArrayClassLocator(BaseClassLocator[] locators)
Constructs a new ArrayClassLocator for the given set of BaseClassLocator instances.
Parameters:
locators - the array of BaseClassLocator instances

Method Detail

buildIndex

public void buildIndex()
Instructs this class locator to start building its index for locating files. This method runs on the current thread and blocks until the index build is completed. To build the index in the background, call this method on a background thread.

buildIndexInterruptibly

public void buildIndexInterruptibly()
                             throws java.lang.InterruptedException
Description copied from interface: JavaClassLocator2
Instructs this class locator to start building its index for locating files. This method runs on the current thread and blocks until the index build is completed. To build the index in the background, call this method on a background thread.
Specified by:
buildIndexInterruptibly in interface JavaClassLocator2
Overrides:
buildIndexInterruptibly in class BaseClassLocator
Throws:
java.lang.InterruptedException - if the build is interrupted

getPackages

public void getPackages(java.lang.String packagePrefix,
                        java.util.Collection<java.lang.String> out)
Fetch the list of subpackages within the given package, adding them to the out collection provided.
Specified by:
getPackages in class BaseClassLocator
Parameters:
packagePrefix - the package prefix, i.e., "java.io"
out - the collection to add the packages

getPackagesInterruptibly

public void getPackagesInterruptibly(java.lang.String packagePrefix,
                                     java.util.Collection<java.lang.String> out)
                              throws java.lang.InterruptedException
Description copied from class: BaseClassLocator
Get the list of subpackages within the given package. Can be overridden by subclasses that support interruption.
Overrides:
getPackagesInterruptibly in class BaseClassLocator
Parameters:
packagePrefix - the package prefix
out - the collection where packages are added
Throws:
java.lang.InterruptedException - if the operation is interrupted

getClassesInPackage

public void getClassesInPackage(java.lang.String packagePrefix,
                                java.util.Collection<java.lang.String> out)
Fetch the list of top-level classes within the given package, adding them to the out collection provided.
Specified by:
getClassesInPackage in class BaseClassLocator
Parameters:
packagePrefix - the package prefix, i.e., "java.io"
out - the collection to add the class names

getClassesInPackageInterruptibly

public void getClassesInPackageInterruptibly(java.lang.String packagePrefix,
                                             java.util.Collection<java.lang.String> out)
                                      throws java.lang.InterruptedException
Description copied from class: BaseClassLocator
Get the list of top-level classes within the package. Can be overridden by subclasses that support interruption.
Overrides:
getClassesInPackageInterruptibly in class BaseClassLocator
Parameters:
packagePrefix - the package prefix
out - the collection where packages are added
Throws:
java.lang.InterruptedException - if the operation is interrupted

getAllClasses

public void getAllClasses(java.util.Collection<java.lang.String> out,
                          ClassNameFilter filter)
Fetch all of the top-level classes that are known by this locator. This will return fully-qualified class names, such as "java.util.List".
Specified by:
getAllClasses in class BaseClassLocator
Parameters:
out - the collection to add the fully-qualified class names
filter - the class name filter to use

getAllClassesInterruptibly

public void getAllClassesInterruptibly(java.util.Collection<java.lang.String> out,
                                       ClassNameFilter filter)
                                throws java.lang.InterruptedException
Description copied from class: BaseClassLocator
Get all of the top-level classes that are known by this locator. This can be overridden by subclasses that provide support for interruption.
Overrides:
getAllClassesInterruptibly in class BaseClassLocator
Parameters:
out - the collection where fully qualified class names are added
filter - the class name filter to use
Throws:
java.lang.InterruptedException - if the operation is interrupted

getAllPackages

public void getAllPackages(java.util.Collection<java.lang.String> out,
                           PackageNameFilter filter)
Fetch all of the full packges that are known by this locator. This will return fully-qualified package names, such as "java.util" or "java.io". This collection will not include the top-level package "".
Specified by:
getAllPackages in class BaseClassLocator
Parameters:
out - the collection to add the full package names
filter - the package name filter to use

getAllPackagesInterruptibly

public void getAllPackagesInterruptibly(java.util.Collection<java.lang.String> out,
                                        PackageNameFilter filter)
                                 throws java.lang.InterruptedException
Description copied from class: BaseClassLocator
Get all of the full packges that are known by this locator. Can be overridden by subclasses that support interruption.
Overrides:
getAllPackagesInterruptibly in class BaseClassLocator
Parameters:
out - the collection where package names are added
filter - the package name filter to use
Throws:
java.lang.InterruptedException - if the operation is interrupted

getURL

public java.net.URL getURL(java.lang.String fqClassName)
Fetch the URL for the JavaFile for the given fully-qualified Java class name. The implementation may choose either a class URL or source URL. For example, an implementation may decide to return the URL that is more up-to-date, or an URL that would be faster to load. Note that if the given class is an inner class, this routine may return the URL for the Java source that contains the owning outer class.
Parameters:
fqClassName - the fully-qualified class name in dotted notation, i.e., java.util.List
Returns:
the URL for the JavaFile containing the given class

getURLInterruptibly

public java.net.URL getURLInterruptibly(java.lang.String fqClassName)
                                 throws java.lang.InterruptedException
Description copied from interface: JavaClassLocator2
Fetch the URL for the JavaFile for the given fully-qualified Java class name. The implementation may choose either a class URL or source URL. For example, an implementation may decide to return the URL that is more up-to-date, or an URL that would be faster to load. Note that if the given class is an inner class, this routine may return the URL for the Java source that contains the owning outer class.
Specified by:
getURLInterruptibly in interface JavaClassLocator2
Overrides:
getURLInterruptibly in class BaseClassLocator
Parameters:
fqClassName - the fully-qualified class name in dotted notation, i.e., java.util.List
Returns:
the URL for the JavaFile containing the given class
Throws:
java.lang.InterruptedException - if the operation is interrupted

getSourceURL

public java.net.URL getSourceURL(java.lang.String fqClassName)
Fetch the URL for the SourceFile for the given fully-qualified Java class name. This may return null if a source URL is not available for the given fully-qualified class name.
Parameters:
fqClassName - the fully-qualified class name in dotted notation

getSourceURLInterruptibly

public java.net.URL getSourceURLInterruptibly(java.lang.String fqClassName)
                                       throws java.lang.InterruptedException
Description copied from interface: JavaClassLocator2
Fetch the URL for the SourceFile for the given fully-qualified Java class name. This may return null if a source URL is not available for the given fully-qualified class name.
Specified by:
getSourceURLInterruptibly in interface JavaClassLocator2
Overrides:
getSourceURLInterruptibly in class BaseClassLocator
Parameters:
fqClassName - the fully-qualified class name in dotted notation
Throws:
java.lang.InterruptedException - if the operation is interrupted

getClassURL

public java.net.URL getClassURL(java.lang.String fqClassName)
Fetch the URL for the JavaFile for the given fully-qualified Java class name. This may return null if a given class URL is not available for the given fully-qualified class name.
Parameters:
fqClassName - the fully-qualified class name in dotted notation
Returns:
the Java *.class URL, or null if it is not found

getClassURLInterruptibly

public java.net.URL getClassURLInterruptibly(java.lang.String fqClassName)
                                      throws java.lang.InterruptedException
Description copied from interface: JavaClassLocator2
Fetch the URL for the JavaFile for the given fully-qualified Java class name. This may return null if a given class URL is not available for the given fully-qualified class name.
Specified by:
getClassURLInterruptibly in interface JavaClassLocator2
Overrides:
getClassURLInterruptibly in class BaseClassLocator
Parameters:
fqClassName - the fully-qualified class name in dotted notation
Throws:
java.lang.InterruptedException - if the operation is interrupted

getResourceURL

public java.net.URL getResourceURL(java.lang.String resourceName)
Fetch the URL for the Java resource file given the resource name. This should include the full path of the resource, minus any root directory that is part of the class path.
Parameters:
resourceName - the full name of the resource including any file extensions
Returns:
the Java resource URL, or null if it is not found

getResourceURLs

public java.util.Collection<java.net.URL> getResourceURLs(java.lang.String resourceName)
Description copied from interface: JavaResourceLocator
Fetch all the URL's for the Java resource file given the resource name. This should include the full path of the resource.
Specified by:
getResourceURLs in interface JavaResourceLocator
Overrides:
getResourceURLs in class BaseClassLocator
Parameters:
resourceName - the full name of the resource including any file extensions
Returns:
the collection of Java resource URL's, may be empty but not null.

Skip navigation links

Oracle Fusion Middleware Java API Reference for Oracle Extension SDK
11g Release 2 (11.1.2.2.0)

E17493-03


Copyright © 1997, 2012, Oracle. All rights reserved.