DepthSelector (Apache Ant API)

org.apache.tools.ant.types.selectors
Class DepthSelector


java.lang.Object

  |

  +--org.apache.tools.ant.ProjectComponent

        |

        +--org.apache.tools.ant.types.DataType

              |

              +--org.apache.tools.ant.types.selectors.BaseSelector

                    |

                    +--org.apache.tools.ant.types.selectors.BaseExtendSelector

                          |

                          +--org.apache.tools.ant.types.selectors.DepthSelector

All Implemented Interfaces:
ExtendFileSelector, FileSelector, Parameterizable

public class DepthSelector
extends BaseExtendSelector

Selector that filters files based on the how deep in the directory tree they are.

Since:
1.5
Author:
Bruce Atherton

Field Summary
 int max
           
static java.lang.String MAX_KEY
           
 int min
           
static java.lang.String MIN_KEY
           
 
Fields inherited from class org.apache.tools.ant.types.selectors.BaseExtendSelector
parameters
 
Fields inherited from class org.apache.tools.ant.types.DataType
checked, description, ref
 
Fields inherited from class org.apache.tools.ant.ProjectComponent
project
 
Constructor Summary
DepthSelector()
           
 
Method Summary
 boolean isSelected(java.io.File basedir, java.lang.String filename, java.io.File file)
          The heart of the matter.
 void setMax(int max)
          The minimum depth below the basedir before a file is selected.
 void setMin(int min)
          The minimum depth below the basedir before a file is selected.
 void setParameters(Parameter[] parameters)
          When using this as a custom selector, this method will be called.
 java.lang.String toString()
           
 void verifySettings()
          Checks to make sure all settings are kosher.
 
Methods inherited from class org.apache.tools.ant.types.selectors.BaseExtendSelector
getParameters
 
Methods inherited from class org.apache.tools.ant.types.selectors.BaseSelector
getError, setError, validate
 
Methods inherited from class org.apache.tools.ant.types.DataType
circularReference, dieOnCircularReference, getCheckedRef, getDescription, isReference, noChildrenAllowed, setDescription, setRefid, tooManyAttributes
 
Methods inherited from class org.apache.tools.ant.ProjectComponent
getProject, log, log, setProject
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

min


public int min

max


public int max

MIN_KEY


public static final java.lang.String MIN_KEY
See Also:
Constant Field Values

MAX_KEY


public static final java.lang.String MAX_KEY
See Also:
Constant Field Values
Constructor Detail

DepthSelector


public DepthSelector()
Method Detail

toString


public java.lang.String toString()
Overrides:
toString in class java.lang.Object

setMin


public void setMin(int min)
The minimum depth below the basedir before a file is selected.

Parameters:
min - minimum directory levels below basedir to go

setMax


public void setMax(int max)
The minimum depth below the basedir before a file is selected.


setParameters


public void setParameters(Parameter[] parameters)
When using this as a custom selector, this method will be called. It translates each parameter into the appropriate setXXX() call.

Specified by:
setParameters in interface Parameterizable
Overrides:
setParameters in class BaseExtendSelector
Parameters:
parameters - the complete set of parameters for this selector

verifySettings


public void verifySettings()
Checks to make sure all settings are kosher. In this case, it means that the max depth is not lower than the min depth.

Overrides:
verifySettings in class BaseSelector

isSelected


public boolean isSelected(java.io.File basedir,
                          java.lang.String filename,
                          java.io.File file)
The heart of the matter. This is where the selector gets to decide on the inclusion of a file in a particular fileset. Most of the work for this selector is offloaded into SelectorUtils, a static class that provides the same services for both FilenameSelector and DirectoryScanner.

Specified by:
isSelected in interface FileSelector
Specified by:
isSelected in class BaseExtendSelector
Parameters:
basedir - the base directory the scan is being done from
filename - is the name of the file to check
file - is a java.io.File object the selector can use
Returns:
whether the file should be selected or not


Copyright 2000-2002 Apache Software Foundation. All Rights Reserved.