Class ListableResourceFinder

java.lang.Object
org.codehaus.commons.compiler.util.resource.ResourceFinder
org.codehaus.commons.compiler.util.resource.ListableResourceFinder
Direct Known Subclasses:
FileResourceFinder, MapResourceFinder, MultiResourceFinder

public abstract class ListableResourceFinder extends ResourceFinder
Extends the ResourceFinder class with a list(String, boolean) method.
  • Constructor Details

    • ListableResourceFinder

      public ListableResourceFinder()
  • Method Details

    • list

      @Nullable public abstract Iterable<Resource> list(String resourceNamePrefix, boolean recurse) throws IOException
      Returns all resources who's names start with a given string. Only resources with a content are included, no "special entries" of any kind, e.g. directories.

      If the prefix string ends with "/", you will get a proper directory listing (recurse=false) or directory tree (recurse=true). Example:

         resourceFinder.list("dir/", true) =>
           dir/
           dir/afile
           dir/bfile
           dir/adir/
           dir/adir/file
           dir/bdir/
           dir/bdir/file
       

      Otherwise, you will get a strange subset of a directory listing, resp. directory tree, as follows:

         resourceFinder.list("dir/a", true) =>
           dir/afile
           dir/adir/
           dir/adir/file
       
      Parameters:
      resourceNamePrefix - E.g. "" or "java/lang/"
      Returns:
      All resources who's name starts with the given prefix; null iff a location designated by the resourceNamePrefix does not exist
      Throws:
      IOException