Class ClassfileSet

All Implemented Interfaces:
Cloneable, Iterable<Resource>, ResourceCollection, SelectorContainer

public class ClassfileSet extends FileSet
A ClassfileSet is a FileSet that enlists all classes that depend on a certain set of root classes. ClassfileSet extends FileSet, its inherited properties defining the domain searched for dependent classes.
  • Constructor Details

    • ClassfileSet

      public ClassfileSet()
      Default constructor.
    • ClassfileSet

      protected ClassfileSet(ClassfileSet s)
      Create a ClassfileSet from another ClassfileSet.
      Parameters:
      s - the other classfileset.
  • Method Details

    • addRootFileset

      public void addRootFileset(FileSet rootFileSet)
      Add a fileset to which contains a collection of root classes used to drive the search from classes.
      Parameters:
      rootFileSet - a root file set to be used to search for dependent classes.
    • setRootClass

      public void setRootClass(String rootClass)
      Set the root class attribute.
      Parameters:
      rootClass - the name of the root class.
    • getDirectoryScanner

      public DirectoryScanner getDirectoryScanner(Project p)
      Return the DirectoryScanner associated with this FileSet.
      Overrides:
      getDirectoryScanner in class AbstractFileSet
      Parameters:
      p - the project used to resolve dirs, etc.
      Returns:
      a dependency scanner.
    • addConfiguredRoot

      public void addConfiguredRoot(ClassfileSet.ClassRoot root)
      Add a nested root class definition to this class file set.
      Parameters:
      root - the configured class root.
    • clone

      public Object clone()
      Clone this data type.
      Overrides:
      clone in class FileSet
      Returns:
      a clone of the class file set.
    • dieOnCircularReference

      protected void dieOnCircularReference(Stack<Object> stk, Project p)
      Description copied from class: DataType
      Check to see whether any DataType we hold references to is included in the Stack (which holds all DataType instances that directly or indirectly reference this instance, including this instance itself).

      If one is included, throw a BuildException created by circularReference.

      This implementation is appropriate only for a DataType that cannot hold other DataTypes as children.

      The general contract of this method is that it shouldn't do anything if DataType.checked is true and set it to true on exit.

      Overrides:
      dieOnCircularReference in class AbstractFileSet
      Parameters:
      stk - the stack of references to check.
      p - the project to use to dereference the references.