com.ibm.oti.shared
Class SharedClassHelperFactoryImpl

java.lang.Object
  extended by com.ibm.oti.shared.SharedAbstractHelperFactory
      extended by com.ibm.oti.shared.SharedClassHelperFactoryImpl
All Implemented Interfaces:
SharedClassHelperFactory

public class SharedClassHelperFactoryImpl
extends SharedAbstractHelperFactory
implements SharedClassHelperFactory

Implementation of SharedClassHelperFactory.

Version:
initial
Author:
OTI
See Also:
SharedClassHelperFactory, SharedAbstractHelperFactory

Constructor Summary
SharedClassHelperFactoryImpl()
           
 
Method Summary
 SharedClassHelper findHelperForClassLoader(java.lang.ClassLoader loader)
          Utility function which returns a SharedClassHelper for a given ClassLoader.
 SharedClassTokenHelper getTokenHelper(java.lang.ClassLoader loader)
          Return a SharedClassTokenHelper for a given ClassLoader.
 SharedClassTokenHelper getTokenHelper(java.lang.ClassLoader loader, SharedClassFilter filter)
          Return a SharedClassTokenHelper for a given ClassLoader.
 SharedClassURLClasspathHelper getURLClasspathHelper(java.lang.ClassLoader loader, java.net.URL[] classpath)
          Return a SharedClassURLClasspathHelper for a given ClassLoader.
 SharedClassURLClasspathHelper getURLClasspathHelper(java.lang.ClassLoader loader, java.net.URL[] classpath, SharedClassFilter filter)
          Return a SharedClassURLClasspathHelper for a given ClassLoader.
 SharedClassURLHelper getURLHelper(java.lang.ClassLoader loader)
          Return a SharedClassURLHelper for a given ClassLoader.
 SharedClassURLHelper getURLHelper(java.lang.ClassLoader loader, SharedClassFilter filter)
          Return a SharedClassURLHelper for a given ClassLoader.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SharedClassHelperFactoryImpl

public SharedClassHelperFactoryImpl()
Method Detail

findHelperForClassLoader

public SharedClassHelper findHelperForClassLoader(java.lang.ClassLoader loader)
Description copied from interface: SharedClassHelperFactory
Utility function which returns a SharedClassHelper for a given ClassLoader.

Can be used to determine whether a given ClassLoader already has a helper, before calling a getter method.
Returns an existing SharedClassHelper or null.

Specified by:
findHelperForClassLoader in interface SharedClassHelperFactory
Parameters:
loader - ClassLoader. ClassLoader which may or may not have a SharedClassHelper
Returns:
SharedClassHelper. A helper if one exists for this ClassLoader or null otherwise.
See Also:
SharedClassHelper

getTokenHelper

public SharedClassTokenHelper getTokenHelper(java.lang.ClassLoader loader,
                                             SharedClassFilter filter)
                                      throws HelperAlreadyDefinedException
Description copied from interface: SharedClassHelperFactory
Return a SharedClassTokenHelper for a given ClassLoader.

Creates a new SharedClassTokenHelper if one cannot be found, otherwise returns existing SharedClassTokenHelper.
Throws a HelperAlreadyDefinedException if the ClassLoader already has a different type of helper.
Returns null if a SecurityManager is installed and there is no SharedClassPermission for the ClassLoader specified.

Specified by:
getTokenHelper in interface SharedClassHelperFactory
Parameters:
loader - ClassLoader. ClassLoader to which this SharedClassTokenHelper will belong
filter - SharedClassURLFilter. Specify a filter which limits the classes that are found or stored in the cache
Returns:
SharedClassTokenHelper. A new or existing SharedClassTokenHelper
Throws:
HelperAlreadyDefinedException
See Also:
SharedClassTokenHelper

getTokenHelper

public SharedClassTokenHelper getTokenHelper(java.lang.ClassLoader loader)
                                      throws HelperAlreadyDefinedException
Description copied from interface: SharedClassHelperFactory
Return a SharedClassTokenHelper for a given ClassLoader.

Creates a new SharedClassTokenHelper if one cannot be found, otherwise returns existing SharedClassTokenHelper.
Throws a HelperAlreadyDefinedException if the ClassLoader already has a different type of helper.
Returns null if a SecurityManager is installed and there is no SharedClassPermission for the ClassLoader specified.

Specified by:
getTokenHelper in interface SharedClassHelperFactory
Parameters:
loader - ClassLoader. ClassLoader to which this SharedClassTokenHelper will belong
Returns:
SharedClassTokenHelper. A new or existing SharedClassTokenHelper
Throws:
HelperAlreadyDefinedException
See Also:
SharedClassTokenHelper

getURLHelper

public SharedClassURLHelper getURLHelper(java.lang.ClassLoader loader,
                                         SharedClassFilter filter)
                                  throws HelperAlreadyDefinedException
Description copied from interface: SharedClassHelperFactory
Return a SharedClassURLHelper for a given ClassLoader.

Creates a new SharedClassURLHelper if one cannot be found, otherwise returns existing SharedClassURLHelper.
If a new SharedClassHelper is created, the specified SharedClassURLFilter is applied to it. If the filter argument is null, no filter is applied.
Throws a HelperAlreadyDefinedException if the ClassLoader already has a different type of helper.
Returns null if a SecurityManager is installed and there is no SharedClassPermission for the ClassLoader specified.

Specified by:
getURLHelper in interface SharedClassHelperFactory
Parameters:
loader - ClassLoader. ClassLoader to which this SharedClassURLHelper will belong
filter - SharedClassURLFilter. Specify a filter which limits the classes that are found or stored in the cache
Returns:
SharedClassURLHelper. A new or existing SharedClassURLHelper
Throws:
HelperAlreadyDefinedException
See Also:
SharedClassURLHelper, SharedClassFilter

getURLHelper

public SharedClassURLHelper getURLHelper(java.lang.ClassLoader loader)
                                  throws HelperAlreadyDefinedException
Description copied from interface: SharedClassHelperFactory
Return a SharedClassURLHelper for a given ClassLoader.

Creates a new SharedClassURLHelper if one cannot be found, otherwise returns existing SharedClassURLHelper.
Throws a HelperAlreadyDefinedException if the ClassLoader already has a different type of helper.
Returns null if a SecurityManager is installed and there is no SharedClassPermission for the ClassLoader specified.

Specified by:
getURLHelper in interface SharedClassHelperFactory
Parameters:
loader - ClassLoader. ClassLoader to which this SharedClassURLHelper will belong
Returns:
SharedClassURLHelper. A new or existing SharedClassURLHelper
Throws:
HelperAlreadyDefinedException
See Also:
SharedClassURLHelper

getURLClasspathHelper

public SharedClassURLClasspathHelper getURLClasspathHelper(java.lang.ClassLoader loader,
                                                           java.net.URL[] classpath,
                                                           SharedClassFilter filter)
                                                    throws HelperAlreadyDefinedException
Description copied from interface: SharedClassHelperFactory
Return a SharedClassURLClasspathHelper for a given ClassLoader.

Creates a new SharedClassURLClasspathHelper if one cannot be found, otherwise if the classpath specified matches the classpath of an existing helper, returns existing SharedClassURLClasspathHelper.
If a new SharedClassHelper is created, the specified SharedClassURLFilter is applied to it. If the filter argument is null, no filter is applied.
Throws a HelperAlreadyDefinedException if the ClassLoader already has a different type of helper OR if the ClassLoader has a SharedClassURLClasspathHelper with a different classpath.
Returns null if a SecurityManager is installed and there is no SharedClassPermission for the ClassLoader specified.

Specified by:
getURLClasspathHelper in interface SharedClassHelperFactory
Parameters:
loader - ClassLoader. ClassLoader to which this SharedClassURLClasspathHelper will belong
classpath - URL[]. The current URL classpath of this ClassLoader
filter - SharedClassURLFilter. Specify a filter which limits the classes that are found or stored in the cache
Returns:
SharedClassURLClasspathHelper. A new or existing SharedClassURLClasspathHelper
Throws:
HelperAlreadyDefinedException
See Also:
SharedClassURLClasspathHelper, SharedClassFilter

getURLClasspathHelper

public SharedClassURLClasspathHelper getURLClasspathHelper(java.lang.ClassLoader loader,
                                                           java.net.URL[] classpath)
                                                    throws HelperAlreadyDefinedException
Description copied from interface: SharedClassHelperFactory
Return a SharedClassURLClasspathHelper for a given ClassLoader.

Creates a new SharedClassURLClasspathHelper if one cannot be found, otherwise if the classpath specified matches the classpath of an existing helper, returns existing SharedClassURLClasspathHelper.
Throws a HelperAlreadyDefinedException if the ClassLoader already has a different type of helper OR if the ClassLoader has a SharedClassURLClasspathHelper with a different classpath.
Returns null if a SecurityManager is installed and there is no SharedClassPermission for the ClassLoader specified.

Specified by:
getURLClasspathHelper in interface SharedClassHelperFactory
Parameters:
loader - ClassLoader. ClassLoader to which this SharedClassURLClasspathHelper will belong
classpath - URL[]. The current URL classpath of this ClassLoader
Returns:
SharedClassURLClasspathHelper. A new or existing SharedClassURLClasspathHelper
Throws:
HelperAlreadyDefinedException
See Also:
SharedClassURLClasspathHelper