org.jboss.virtual.plugins.vfs.helpers
Class ExtensibleFilter

java.lang.Object
  extended by org.jboss.virtual.plugins.vfs.helpers.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 Summary
ExtensibleFilter()
          Use the default values for suffixes, prefixes, and matches
ExtensibleFilter(String[] matches, String[] prefixes, String[] suffixes)
          Create using a custom set of matches, prefixes, and suffixes.
 
Method Summary
 boolean accepts(VirtualFile file)
          If the filename matches any string in the prefix, suffix, or matches array, return false.
 void addPrefix(String prefix)
           
 void addPrefixes(String[] prefixes)
           
 void addSuffix(String suffix)
           
 void addSuffixes(String[] suffixes)
           
 void delPrefix(String prefix)
           
 void delPrefixes(String[] prefixes)
           
 void delSuffix(String suffix)
           
 void delSuffixes(String[] suffixes)
           
 String[] getMatches()
           
 String[] getPrefixes()
           
 String[] getSuffixes()
           
 void setMatches(String[] matches)
           
 void setPrefixes(String[] prefixes)
           
 void setSuffixes(String[] suffixes)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

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.


Copyright © 2011 JBoss, A division of Red Hat, Inc. All Rights Reserved.