## php.java.bridge
Class JavaBridgeClassLoader

    java.lang.Object
      php.java.bridge.JavaBridgeClassLoader

    public class JavaBridgeClassLoader

extends java.lang.Object

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 (loader==null) or security exception at run-time.

See Also:
  `DynamicJavaBridgeClassLoader`, `ClassLoader`

Constructor Summary
`JavaBridgeClassLoader(JavaBridge bridge1, DynamicJavaBridgeClassLoader loader)`

Method Summary
`void` `clear()` clear the input vectors
`void` `clearCaches()` clear all loader caches but not the input vectors
`java.lang.Class` `forName(java.lang.String name)` Load a class.
`java.lang.ClassLoader` `getClassLoader()` Only for internal use
`void` `reset()` reset loader to the initial state
`void` `setClassLoader(DynamicJavaBridgeClassLoader loader)` Set a DynamicJavaBridgeClassLoader.
`void` `updateJarLibraryPath(java.lang.String path, java.lang.String extensionDir)` Append the path to the current library path

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

Constructor Detail

### JavaBridgeClassLoader

    public JavaBridgeClassLoader(JavaBridge bridge1,
                                 DynamicJavaBridgeClassLoader loader)

Method Detail

### setClassLoader

    public void setClassLoader(DynamicJavaBridgeClassLoader loader)

  Set a DynamicJavaBridgeClassLoader.

  Parameters:
    `loader` - The dynamic class loader

### updateJarLibraryPath

    public void updateJarLibraryPath(java.lang.String path,
                                     java.lang.String extensionDir)

  Append the path to the current library path

  Parameters:
    `path` - A file or url list, separated by ';'
    `extensionDir` - Usually ini_get("extension_dir");

### getClassLoader

    public java.lang.ClassLoader getClassLoader()

  Only for internal use

  Returns:
    the classloader

### reset

    public void reset()

  reset loader to the initial state

### clearCaches

    public void clearCaches()

  clear all loader caches but not the input vectors

### forName

    public java.lang.Class forName(java.lang.String name)
                            throws java.lang.ClassNotFoundException

  Load a class.

  Parameters:
    `name` - The class, for example java.lang.String
  Returns:
    the class
  Throws:
    `java.lang.ClassNotFoundException`

### clear

    public void clear()

  clear the input vectors