artisynth.core.util
Class ClassFinder

java.lang.Object
  extended by artisynth.core.util.ClassFinder

public class ClassFinder
extends java.lang.Object


Constructor Summary
ClassFinder()
           
 
Method Summary
static java.util.ArrayList<java.lang.Class<?>> findClass(java.lang.String pkg, java.lang.String className)
          Searches for any class with the name "className" in pkg
static java.util.ArrayList<java.lang.Class<?>> findClasses(java.io.File dir, java.lang.String pkg, java.lang.Class<?> T)
          Searches through all subdirectories, gathering classes of type T
static java.util.ArrayList<java.lang.Class<?>> findClasses(java.io.File dir, java.lang.String pkg, java.util.regex.Pattern regex, java.lang.Class<?> T)
          Searches through all subdirectories, gathering classes of type T that match regex
static java.util.ArrayList<java.lang.Class<?>> findClasses(java.io.File dir, java.lang.String pkg, java.lang.String regex, java.lang.Class<?> T)
           
static java.util.ArrayList<java.lang.Class<?>> findClasses(java.lang.String pkg, java.lang.Class<?> T)
           
static java.util.ArrayList<java.lang.Class<?>> findClasses(java.lang.String pkg, java.lang.String regex, java.lang.Class<?> T)
          Scans for all classes accessible from the current one within the supplied package that are a child of the supplied Class T
static java.util.ArrayList<java.lang.String> findClassNames(java.lang.String pkg, java.lang.Class<?> base)
           
static java.util.ArrayList<java.lang.String> findClassNames(java.lang.String pkg, java.lang.String regex, java.lang.Class<?> base)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ClassFinder

public ClassFinder()
Method Detail

findClassNames

public static java.util.ArrayList<java.lang.String> findClassNames(java.lang.String pkg,
                                                                   java.lang.Class<?> base)

findClassNames

public static java.util.ArrayList<java.lang.String> findClassNames(java.lang.String pkg,
                                                                   java.lang.String regex,
                                                                   java.lang.Class<?> base)

findClass

public static java.util.ArrayList<java.lang.Class<?>> findClass(java.lang.String pkg,
                                                                java.lang.String className)
                                                         throws java.lang.ClassNotFoundException,
                                                                java.io.IOException
Searches for any class with the name "className" in pkg

Parameters:
pkg - The package to search
className - The name of the class to find
Returns:
An array of results
Throws:
java.lang.ClassNotFoundException
java.io.IOException

findClasses

public static java.util.ArrayList<java.lang.Class<?>> findClasses(java.lang.String pkg,
                                                                  java.lang.String regex,
                                                                  java.lang.Class<?> T)
                                                           throws java.lang.ClassNotFoundException,
                                                                  java.io.IOException
Scans for all classes accessible from the current one within the supplied package that are a child of the supplied Class T

Parameters:
pkg - string name of package (i.e. artisynth.models)
regex - only keep files matching the regex statement (i.e. ) i.e. regex =".*Demo$" will keep only files ending with "Demo"
T - root class to search for
Throws:
java.lang.ClassNotFoundException
java.io.IOException

findClasses

public static java.util.ArrayList<java.lang.Class<?>> findClasses(java.lang.String pkg,
                                                                  java.lang.Class<?> T)
                                                           throws java.lang.ClassNotFoundException,
                                                                  java.io.IOException
Throws:
java.lang.ClassNotFoundException
java.io.IOException

findClasses

public static java.util.ArrayList<java.lang.Class<?>> findClasses(java.io.File dir,
                                                                  java.lang.String pkg,
                                                                  java.lang.String regex,
                                                                  java.lang.Class<?> T)
                                                           throws java.lang.ClassNotFoundException
Throws:
java.lang.ClassNotFoundException

findClasses

public static java.util.ArrayList<java.lang.Class<?>> findClasses(java.io.File dir,
                                                                  java.lang.String pkg,
                                                                  java.util.regex.Pattern regex,
                                                                  java.lang.Class<?> T)
                                                           throws java.lang.ClassNotFoundException
Searches through all subdirectories, gathering classes of type T that match regex

Throws:
java.lang.ClassNotFoundException

findClasses

public static java.util.ArrayList<java.lang.Class<?>> findClasses(java.io.File dir,
                                                                  java.lang.String pkg,
                                                                  java.lang.Class<?> T)
                                                           throws java.lang.ClassNotFoundException
Searches through all subdirectories, gathering classes of type T

Throws:
java.lang.ClassNotFoundException