Class ExtensibleFilter

  • All Implemented Interfaces:
    VirtualFileFilter

    public class ExtensibleFilter
    extends Object
    implements VirtualFileFilter
    An extensible filter for VFS files. Three arrays are maintained for checking: a prefix, suffix, and match array. If the filename starts with any of the prefixes, ends with any of the suffixes, or exactly matches any of the matches, then the accepts method will return false.

    NOTE: the arrays *must* be sorted for the string matching to work, and suffixes use the 'reverseComparator'

    Version:
    $Revision: 57108 $
    Author:
    somebody@jboss.org, Scott.Stark@jboss.org
    • Constructor Detail

      • ExtensibleFilter

        public ExtensibleFilter()
        Use the default values for suffixes, prefixes, and matches
      • ExtensibleFilter

        public ExtensibleFilter​(String[] matches,
                                String[] prefixes,
                                String[] suffixes)
        Create using a custom set of matches, prefixes, and suffixes. If any of these arrays are null, then the corresponding default will be substituted.
        Parameters:
        matches - the matches
        prefixes - the prefixes
        suffixes - the suffixes
    • Method Detail

      • addPrefix

        public void addPrefix​(String prefix)
      • addPrefixes

        public void addPrefixes​(String[] prefixes)
      • delPrefix

        public void delPrefix​(String prefix)
      • delPrefixes

        public void delPrefixes​(String[] prefixes)
      • addSuffix

        public void addSuffix​(String suffix)
      • addSuffixes

        public void addSuffixes​(String[] suffixes)
      • delSuffix

        public void delSuffix​(String suffix)
      • delSuffixes

        public void delSuffixes​(String[] suffixes)
      • getSuffixes

        public String[] getSuffixes()
      • setSuffixes

        public void setSuffixes​(String[] suffixes)
      • getPrefixes

        public String[] getPrefixes()
      • setPrefixes

        public void setPrefixes​(String[] prefixes)
      • getMatches

        public String[] getMatches()
      • setMatches

        public void setMatches​(String[] matches)
      • accepts

        public boolean accepts​(VirtualFile file)
        If the filename matches any string in the prefix, suffix, or matches array, return false. Perhaps a bit of overkill, but this method operates in log(n) time, where n is the size of the arrays.
        Specified by:
        accepts in interface VirtualFileFilter
        Parameters:
        file - The file to be tested
        Returns:
        false if the filename matches any of the prefixes, suffixes, or matches.