| 
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectjava.lang.ClassLoader
com.trackstudio.tools.ShellClassLoader
public class ShellClassLoader
This class is used for control user's abulity to execute some dangerous code from anywhere. It loads allowed classes only
| Constructor Summary | |
|---|---|
protected  | 
ShellClassLoader()
 | 
| Method Summary | |
|---|---|
 void | 
addImport(java.lang.String classPattern)
Adds class or package name to allowed classes (DO NOT use asteriks to specify a package)  | 
 boolean | 
classAllowed(java.lang.String className)
 | 
 java.lang.String | 
getImports()
 | 
static java.lang.ClassLoader | 
getInstance()
getting instance of ClassLoader  | 
 java.lang.Class | 
loadClass(java.lang.String name)
This is a simple version for external clients since they will always want the class resolved before it is returned to them.  | 
 java.lang.Class | 
loadClass(java.lang.String name,
          boolean resolve)
 | 
 void | 
removeAllImport(java.lang.String classPattern)
removes class or package and all it's classes from allowed list  | 
 void | 
removeImport(java.lang.String classPattern)
removes class or package from allowed classes list  | 
| Methods inherited from class java.lang.ClassLoader | 
|---|
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findClass, findLibrary, findLoadedClass, findResource, findResources, findSystemClass, getPackage, getPackages, getParent, getResource, getResourceAsStream, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, resolveClass, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners | 
| Methods inherited from class java.lang.Object | 
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| Constructor Detail | 
|---|
protected ShellClassLoader()
| Method Detail | 
|---|
public java.lang.String getImports()
public static java.lang.ClassLoader getInstance()
public void addImport(java.lang.String classPattern)
classPattern - pattern to usepublic void removeImport(java.lang.String classPattern)
classPattern - pattern of classes namespublic void removeAllImport(java.lang.String classPattern)
classPattern - pattern of package namepublic boolean classAllowed(java.lang.String className)
className - Class name
public java.lang.Class loadClass(java.lang.String name)
                          throws java.lang.ClassNotFoundException
loadClass in class java.lang.ClassLoaderjava.lang.ClassNotFoundException
public java.lang.Class loadClass(java.lang.String name,
                                 boolean resolve)
                          throws java.lang.ClassNotFoundException
loadClass in class java.lang.ClassLoaderjava.lang.ClassNotFoundException
  | 
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||