## org.jfree.xml.generator
Class JavaSourceCollector

    java.lang.Object
      org.jfree.xml.generator.JavaSourceCollector

All Implemented Interfaces:
  SourceCollector

    public class JavaSourceCollector

extends java.lang.Object
implements SourceCollector

The class collects all class-files and loads the class objects named by these files.

Constructor Summary
`JavaSourceCollector(java.io.File startDirectory)` Creates a new source collector.
`JavaSourceCollector(java.io.File startDirectory, java.lang.String packageName)` Creates a new source collector.

Method Summary
`void` `addIgnoredBaseClass(java.lang.Class baseClass)` Adds a class to the list of ignored base classes.
`void` `addIgnoredBaseClass(java.lang.String baseClass)` Adds a base class that should be ignored.
`void` `addIgnoredPackage(java.lang.String pkg)` Adds a package that should be ignored.
`protected java.lang.String` `buildJavaName(java.lang.String packageName, java.lang.String newPackage)` Creates a fully qualified Java class or package name.
`void` `collectFiles()` Collects the files/classes.
`protected void` `collectFiles(java.io.File directory, java.lang.String packageName)` Collects the files/classes.
`java.lang.Class[]` `getClasses()` Returns the list of classes as an array.
`protected boolean` `isIgnoredBaseClass(java.lang.Class c)` Returns `true` if the named class is being ignored (because it is a descendant of an ignored base class), and `false` otherwise.
`protected boolean` `isIgnoredPackage(java.lang.String classname)` Returns `true` if the named class is being ignored (because of the package that it belongs to), and `false` otherwise.
`protected java.lang.Class` `loadClass(java.lang.String name)` Loads a class by its fully qualified name.

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

Constructor Detail

### JavaSourceCollector

    public JavaSourceCollector(java.io.File startDirectory)

  Creates a new source collector.

  Parameters:
    `startDirectory` - the start directory.

### JavaSourceCollector

    public JavaSourceCollector(java.io.File startDirectory,
                               java.lang.String packageName)

  Creates a new source collector.

  Parameters:
    `startDirectory` - the base directory.
    `packageName` - the base package name.

Method Detail

### addIgnoredPackage

    public void addIgnoredPackage(java.lang.String pkg)

  Adds a package that should be ignored.

  Parameters:
    `pkg` - the package name.

### addIgnoredBaseClass

    public void addIgnoredBaseClass(java.lang.String baseClass)

  Adds a base class that should be ignored.

  Parameters:
    `baseClass` - the base class name.

### addIgnoredBaseClass

    public void addIgnoredBaseClass(java.lang.Class baseClass)

  Adds a class to the list of ignored base classes.

  Parameters:
    `baseClass` - the class.

### isIgnoredPackage

    protected boolean isIgnoredPackage(java.lang.String classname)

  Returns `true` if the named class is being ignored (because of the package that it belongs to), and `false` otherwise.

  Parameters:
    `classname` - the name of the class to test.
  Returns:
    A boolean.

### isIgnoredBaseClass

    protected boolean isIgnoredBaseClass(java.lang.Class c)

  Returns `true` if the named class is being ignored (because it is a descendant of an ignored base class), and `false` otherwise.

  Parameters:
    `c` - the class name.
  Returns:
    A boolean.

### collectFiles

    public void collectFiles()

  Collects the files/classes.

### collectFiles

    protected void collectFiles(java.io.File directory,
                                java.lang.String packageName)

  Collects the files/classes.

  Parameters:
    `directory` - the starting directory.
    `packageName` - the initial package name.

### loadClass

    protected java.lang.Class loadClass(java.lang.String name)

  Loads a class by its fully qualified name.

  Parameters:
    `name` - the class name.
  Returns:
    The class (or `null` if there was a problem loading the class).

### buildJavaName

    protected java.lang.String buildJavaName(java.lang.String packageName,
                                             java.lang.String newPackage)

  Creates a fully qualified Java class or package name.

  Parameters:
    `packageName` - the base package name.
    `newPackage` - the class/package name.
  Returns:
    The fully qualified package/class name.

### getClasses

    public java.lang.Class[] getClasses()

  Returns the list of classes as an array.

  Specified by:
    `getClasses` in interface `SourceCollector`
  Returns:
    The list of classes.