org.apache.catalina.startup
Class ClassLoaderFactory

java.lang.Object
  |
  +--org.apache.catalina.startup.ClassLoaderFactory

public final class ClassLoaderFactory
extends java.lang.Object

Utility class for building class loaders for Catalina. The factory method requires the following parameters in order to build a new class loader (with suitable defaults in all cases):

Version:
$Revision: 1.1.2.3 $ $Date: 2001/09/25 23:54:26 $
Author:
Craig R. McClanahan

Constructor Summary
ClassLoaderFactory()
           
 
Method Summary
static java.lang.ClassLoader createClassLoader(java.io.File[] unpacked, java.io.File[] packed, java.lang.ClassLoader parent)
          Create and return a new class loader, based on the configuration defaults and the specified directory paths:
static int getDebug()
          Return the debugging detail level.
static java.lang.String[] getTriggers()
          Return the trigger class names that we check for.
static void setDebug(int newDebug)
          Set the debugging detail level.
static void setTriggers(java.lang.String[] newTriggers)
          Set the trigger class names that we check for.
static boolean validateDirectory(java.io.File directory)
          Check the specified directory, and return true if it does not contain any of the trigger classes.
static boolean validateJarFile(java.io.File jarfile)
          Check the specified JAR file, and return true if it does not contain any of the trigger classes.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ClassLoaderFactory

public ClassLoaderFactory()
Method Detail

getDebug

public static int getDebug()
Return the debugging detail level.

setDebug

public static void setDebug(int newDebug)
Set the debugging detail level.
Parameters:
newDebug - The new debugging detail level

getTriggers

public static java.lang.String[] getTriggers()
Return the trigger class names that we check for.

setTriggers

public static void setTriggers(java.lang.String[] newTriggers)
Set the trigger class names that we check for.
Parameters:
newTriggers - The new trigger class names

createClassLoader

public static java.lang.ClassLoader createClassLoader(java.io.File[] unpacked,
                                                      java.io.File[] packed,
                                                      java.lang.ClassLoader parent)
                                               throws java.lang.Exception
Create and return a new class loader, based on the configuration defaults and the specified directory paths:
Parameters:
unpacked - Array of pathnames to unpacked directories that should be added to the repositories of the class loader unless they contain one of the trigger classes, or null for no unpacked directories to be considered
packed - Array of pathnames to directories containing JAR files that should be added to the repositories of the class loader unless they contain one of the trigger classes, or null for no directories of JAR files to be considered
parent - Parent class loader for the new class loader, or null for the system class loader.
Throws:
java.lang.Exception - if an error occurs constructing the class loader

validateDirectory

public static boolean validateDirectory(java.io.File directory)
                                 throws java.io.IOException
Check the specified directory, and return true if it does not contain any of the trigger classes.
Parameters:
directory - The directory to be checked
Throws:
java.io.IOException - if an input/output error occurs

validateJarFile

public static boolean validateJarFile(java.io.File jarfile)
                               throws java.io.IOException
Check the specified JAR file, and return true if it does not contain any of the trigger classes.
Parameters:
jarfile - The JAR file to be checked
Throws:
java.io.IOException - if an input/output error occurs


Copyright © 2000-2001 Apache Software Foundation. All Rights Reserved.