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

java.lang.Object
  extended by org.apache.tools.ant.ProjectComponent
      extended by org.apache.tools.ant.types.DataType
          extended by org.apache.tools.ant.types.selectors.BaseSelector
              extended by org.apache.tools.ant.types.selectors.BaseExtendSelector
                  extended by org.apache.tools.ant.types.selectors.ContainsRegexpSelector
All Implemented Interfaces:
java.lang.Cloneable, Parameterizable, ResourceSelector, ExtendFileSelector, FileSelector

public class ContainsRegexpSelector
extends BaseExtendSelector
implements ResourceSelector

Selector that filters files based on a regular expression.

Since:
Ant 1.6

Field Summary
static java.lang.String EXPRESSION_KEY
          Key to used for parameterized custom selector
 
Fields inherited from class org.apache.tools.ant.types.selectors.BaseExtendSelector
parameters
 
Fields inherited from class org.apache.tools.ant.types.DataType
checked, ref
 
Fields inherited from class org.apache.tools.ant.ProjectComponent
description, location, project
 
Constructor Summary
ContainsRegexpSelector()
          Creates a new ContainsRegexpSelector instance.
 
Method Summary
 boolean isSelected(java.io.File basedir, java.lang.String filename, java.io.File file)
          Tests a regular expression against each line of text in the file.
 boolean isSelected(Resource r)
          Tests a regular expression against each line of text in a Resource.
 void setCaseSensitive(boolean b)
          Whether to ignore case or not.
 void setExpression(java.lang.String theexpression)
          The regular expression used to search the file.
 void setMultiLine(boolean b)
          Whether to match should be multiline.
 void setParameters(Parameter[] parameters)
          When using this as a custom selector, this method will be called.
 void setSingleLine(boolean b)
          Whether to treat input as singleline ('.' matches newline).
 java.lang.String toString()
          Basic DataType toString().
 void verifySettings()
          Checks that an expression was specified.
 
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
checkAttributesAllowed, checkChildrenAllowed, circularReference, clone, dieOnCircularReference, dieOnCircularReference, dieOnCircularReference, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getDataTypeName, getRefid, invokeCircularReferenceCheck, isChecked, isReference, noChildrenAllowed, pushAndInvokeCircularReferenceCheck, setChecked, setRefid, tooManyAttributes
 
Methods inherited from class org.apache.tools.ant.ProjectComponent
getDescription, getLocation, getProject, log, log, setDescription, setLocation, setProject
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

EXPRESSION_KEY

public static final java.lang.String EXPRESSION_KEY
Key to used for parameterized custom selector

See Also:
Constant Field Values
Constructor Detail

ContainsRegexpSelector

public ContainsRegexpSelector()
Creates a new ContainsRegexpSelector instance.

Method Detail

toString

public java.lang.String toString()
Description copied from class: DataType
Basic DataType toString().

Overrides:
toString in class DataType
Returns:
a string describing this object

setExpression

public void setExpression(java.lang.String theexpression)
The regular expression used to search the file.

Parameters:
theexpression - this must match a line in the file to be selected.

setCaseSensitive

public void setCaseSensitive(boolean b)
Whether to ignore case or not.

Parameters:
b - if false, ignore case.
Since:
Ant 1.8.2

setMultiLine

public void setMultiLine(boolean b)
Whether to match should be multiline.

Parameters:
b - the value to set.
Since:
Ant 1.8.2

setSingleLine

public void setSingleLine(boolean b)
Whether to treat input as singleline ('.' matches newline). Corresponds to java.util.regex.Pattern.DOTALL.

Parameters:
b - the value to set.
Since:
Ant 1.8.2

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 that an expression was specified.

Overrides:
verifySettings in class BaseSelector

isSelected

public boolean isSelected(java.io.File basedir,
                          java.lang.String filename,
                          java.io.File file)
Tests a regular expression against each line of text in the file.

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

isSelected

public boolean isSelected(Resource r)
Tests a regular expression against each line of text in a Resource.

Specified by:
isSelected in interface ResourceSelector
Parameters:
r - the Resource to check.
Returns:
whether the Resource is selected or not