php.java.bridge
Class JavaBridgeClassLoader

java.lang.Object
  extended by php.java.bridge.SimpleJavaBridgeClassLoader
      extended by php.java.bridge.JavaBridgeClassLoader

public class JavaBridgeClassLoader
extends SimpleJavaBridgeClassLoader

A bridge pattern which allows us to vary the class loader as run-time. The decision is based on whether we are allowed to use a dynamic classloader or not (cl==null) or security exception at run-time.

See Also:
DynamicJavaBridgeClassLoader, ClassLoader

Field Summary
 
Fields inherited from class php.java.bridge.SimpleJavaBridgeClassLoader
DEFAULT_CLASS_LOADER
 
Constructor Summary
JavaBridgeClassLoader()
          Create a bridge class loader using the default class loader.
JavaBridgeClassLoader(DynamicJavaBridgeClassLoader loader)
          Create a bridge ClassLoader using a dynamic loader.
 
Method Summary
 void clear()
          clear the caches and the input vectors, clear the VM cache and set a new ThreadContextClassLoader
 void clearCaches()
          clear all loader caches but not the input vectors, clear the VM cache and set a new ThreadContextClassLoader
 void reset()
          reset loader to the loader to its initial state, clear the VM cache and set a new ThreadContextClassLoader
 void setClassLoader(DynamicJavaBridgeClassLoader loader)
          Set a DynamicJavaBridgeClassLoader.
 
Methods inherited from class php.java.bridge.SimpleJavaBridgeClassLoader
forName, getClassLoader, updateJarLibraryPath
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JavaBridgeClassLoader

public JavaBridgeClassLoader(DynamicJavaBridgeClassLoader loader)
Create a bridge ClassLoader using a dynamic loader.

Parameters:
loader - The dynamic loader, may be null.

JavaBridgeClassLoader

public JavaBridgeClassLoader()
Create a bridge class loader using the default class loader.

Method Detail

setClassLoader

public void setClassLoader(DynamicJavaBridgeClassLoader loader)
                    throws java.io.IOException
Description copied from class: SimpleJavaBridgeClassLoader
Set a DynamicJavaBridgeClassLoader.

Overrides:
setClassLoader in class SimpleJavaBridgeClassLoader
Parameters:
loader - The dynamic class loader
Throws:
java.io.IOException

reset

public void reset()
reset loader to the loader to its initial state, clear the VM cache and set a new ThreadContextClassLoader

Overrides:
reset in class SimpleJavaBridgeClassLoader

clearCaches

public void clearCaches()
clear all loader caches but not the input vectors, clear the VM cache and set a new ThreadContextClassLoader

Overrides:
clearCaches in class SimpleJavaBridgeClassLoader

clear

public void clear()
clear the caches and the input vectors, clear the VM cache and set a new ThreadContextClassLoader

Overrides:
clear in class SimpleJavaBridgeClassLoader