Class WildcardOSFilter

java.lang.Object
org.apache.commons.io.filefilter.AbstractFileFilter
gov.nasa.pds.validate.crawler.WildcardOSFilter
All Implemented Interfaces:
FileFilter, FilenameFilter, org.apache.commons.io.filefilter.IOFileFilter

public class WildcardOSFilter
extends org.apache.commons.io.filefilter.AbstractFileFilter
Filters files using supplied wildcard(s). Based on the Apache WildcardFilter class in the Commons IO package. Difference is that in this class, it uses the org.apache.commons.io.FilenameUtils.wildcardMatchOnSystem() for its matching rules, which means that pattern matching using this class is OS dependent (case-insensitive on Windows and case-sensitive on Unix, Linux, MAC)
Version:
$Revision$
Author:
mcayanan
  • Constructor Details

    • WildcardOSFilter

      public WildcardOSFilter​(String wc)
      Constructor for a single wildcard.
      Parameters:
      wc - a single filter to set
    • WildcardOSFilter

      public WildcardOSFilter​(List<String> wc)
      Constructor for a list of wildcards.
      Parameters:
      wc - a list of filters to set.
  • Method Details

    • getWildcards

      public List<String> getWildcards()
      Returns list of filters that were set.
      Returns:
      a list of filters
    • accept

      public boolean accept​(File file)
      Checks to see if the filename matches one of the wildcards. Matching is case-insensitive for Windows and case-sensitive for Unix.
      Specified by:
      accept in interface FileFilter
      Specified by:
      accept in interface org.apache.commons.io.filefilter.IOFileFilter
      Overrides:
      accept in class org.apache.commons.io.filefilter.AbstractFileFilter
      Parameters:
      file - the file to check.
      Returns:
      true if the filename matches one of the wildcards.
    • accept

      public boolean accept​(File dir, String name)
      Checks to see if the filename matches one of the wildcards. Matching is case-insensitive for Windows and case-sensitive for Unix.
      Specified by:
      accept in interface FilenameFilter
      Specified by:
      accept in interface org.apache.commons.io.filefilter.IOFileFilter
      Overrides:
      accept in class org.apache.commons.io.filefilter.AbstractFileFilter
      Parameters:
      dir - the directory to check.
      name - the file name within the directory to check.
      Returns:
      true if the filename matches one of the wildcards, false otherwise.