Class SelectSelector
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.BaseSelectorContainer
org.apache.tools.ant.types.selectors.SelectSelector
- All Implemented Interfaces:
Cloneable, ResourceSelector, FileSelector, SelectorContainer
This selector just holds one other selector and forwards all
requests to it. It exists so that there is a single selector
type that can exist outside of any targets, as an element of
project. It overrides all of the reference stuff so that it
works as expected. Note that this is the only selector you
can reference.
- Since:
- 1.5
-
Field Summary
Fields inherited from class ProjectComponent
description, location, project -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidappendSelector(FileSelector selector) Add a new selector into this container.Returns the set of selectors as an array.booleanIndicates whether there are any selectors here.booleanisSelected(File basedir, String filename, File file) Returns true (the file is selected) only if the if property (if any) exists, the unless property (if any) doesn't exist, and the contained selector (if any) selects the file.booleanEnsures that the selector passes the conditions placed on it withifandunless.intGives the count of the number of selectors in this containerReturns an enumerator for accessing the set of selectors.voidSets the if attribute to an expression which must evaluate to true or the name of an existing property for the selector to select any files.voidSets the if attribute to an expression which must evaluate to true or the name of an existing property for the selector to select any files.voidSets the unless attribute to an expression which must evaluate to false or the name of a property which cannot exist for the selector to select any files.voidSets the unless attribute to an expression which must evaluate to false or the name of a property which cannot exist for the selector to select any files.toString()Convert the Selectors within this container to a string.voidMakes sure that there is only one entry, sets an error message if not.Methods inherited from class BaseSelectorContainer
add, addAnd, addContains, addContainsRegexp, addCustom, addDate, addDepend, addDepth, addDifferent, addExecutable, addFilename, addMajority, addModified, addNone, addNot, addOr, addOwnedBy, addPosixGroup, addPosixPermissions, addPresent, addReadable, addSelector, addSize, addSymlink, addType, addWindowsJunction, addWritable, dieOnCircularReference, validateModifier and TypeMethodDescriptionvoidadd(FileSelector selector) add an arbitrary selectorvoidaddAnd(AndSelector selector) add an "And" selector entry on the selector listvoidaddContains(ContainsSelector selector) add a contains selector entry on the selector listvoidaddContainsRegexp(ContainsRegexpSelector selector) add a regular expression selector entry on the selector listvoidaddCustom(ExtendSelector selector) add an extended selector entry on the selector listvoidaddDate(DateSelector selector) add a selector date entry on the selector listvoidaddDepend(DependSelector selector) add a depends selector entry on the selector listvoidaddDepth(DepthSelector selector) add a depth selector entry on the selector listvoidaddDifferent(DifferentSelector selector) adds a different selector to the selector listvoidvoidaddFilename(FilenameSelector selector) add a selector filename entry on the selector listvoidaddMajority(MajoritySelector selector) add a majority selector entry on the selector listvoidaddModified(ModifiedSelector selector) add the modified selectorvoidaddNone(NoneSelector selector) add a "None" selector entry on the selector listvoidaddNot(NotSelector selector) add a "Not" selector entry on the selector listvoidaddOr(OrSelector selector) add an "Or" selector entry on the selector listvoidvoidvoidvoidaddPresent(PresentSelector selector) add a present selector entry on the selector listvoidvoidaddSelector(SelectSelector selector) add a "Select" selector entry on the selector listvoidaddSize(SizeSelector selector) add a selector size entry on the selector listvoidvoidaddType(TypeSelector selector) adds a type selector to the selector listvoidvoidprotected voiddieOnCircularReference(Stack<Object> stk, Project p) Check to see whether any DataType we hold references to is included in the Stack (which holds all DataType instances that directly or indirectly reference this instance, including this instance itself).voidvalidate()This implementation validates the container by calling verifySettings() and then validates each contained selector provided that the selector implements the validate interface.Methods inherited from class BaseSelector
getError, setError, setErrorMethods inherited from class DataType
checkAttributesAllowed, checkChildrenAllowed, circularReference, clone, dieOnCircularReference, dieOnCircularReference, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getDataTypeName, getRefid, invokeCircularReferenceCheck, isChecked, isReference, noChildrenAllowed, pushAndInvokeCircularReferenceCheck, setChecked, setRefid, tooManyAttributesModifier and TypeMethodDescriptionprotected voidcheck that it is ok to set attributes, i.e that no reference is definedprotected voidcheck that it is ok to add children, i.e that no reference is definedprotected BuildExceptionCreates an exception that indicates the user has generated a loop of data types referencing each other.clone()protected voidConvenience method.protected voidConvenience method.protected <T> TDeprecated.use getCheckedRef(Class)protected <T> TgetCheckedRef(Class<T> requiredClass) Performs the check for circular references and returns the referenced object.protected <T> TgetCheckedRef(Class<T> requiredClass, String dataTypeName) Performs the check for circular references and returns the referenced object.protected <T> TgetCheckedRef(Class<T> requiredClass, String dataTypeName, Project project) Performs the check for circular references and returns the referenced object.protected <T> TDeprecated.use getCheckedRef(Class)protected StringGets as descriptive as possible a name used for this datatype instance.getRefid()get the reference set on this objectstatic voidinvokeCircularReferenceCheck(DataType dt, Stack<Object> stk, Project p) Allow DataTypes outside org.apache.tools.ant.types to indirectly call dieOnCircularReference on nested DataTypes.protected booleanThe flag that is used to indicate that circular references have been checked.booleanHas the refid attribute of this element been set?protected BuildExceptionCreates an exception that indicates that this XML element must not have child elements if the refid attribute is set.static voidpushAndInvokeCircularReferenceCheck(DataType dt, Stack<Object> stk, Project p) Allow DataTypes outside org.apache.tools.ant.types to indirectly call dieOnCircularReference on nested DataTypes.protected voidsetChecked(boolean checked) Set the flag that is used to indicate that circular references have been checked.voidSet the value of the refid attribute.protected BuildExceptionCreates an exception that indicates that refid has to be the only attribute if it is set.Methods inherited from class ProjectComponent
getDescription, getLocation, getProject, log, log, setDescription, setLocation, setProjectModifier and TypeMethodDescriptionReturns the description of the current action.Returns the file/location where this task was defined.Returns the project to which this component belongs.voidLogs a message with the default (INFO) priority.voidLogs a message with the given priority.voidsetDescription(String desc) Sets a description of the current action.voidsetLocation(Location location) Sets the file/location where this task was defined.voidsetProject(Project project) Sets the project object of this component.Methods inherited from class Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface FileSelector
isSelectedModifier and TypeMethodDescriptiondefault booleanImplement a basicResourceselection that delegates to thisFileSelector.
-
Constructor Details
-
SelectSelector
public SelectSelector()
-
-
Method Details
-
toString
Description copied from class:BaseSelectorContainerConvert the Selectors within this container to a string. This will just be a helper class for the subclasses that put their own name around the contents listed here.- Overrides:
toStringin classBaseSelectorContainer- Returns:
- a string describing this object
-
hasSelectors
public boolean hasSelectors()Indicates whether there are any selectors here.- Specified by:
hasSelectorsin interfaceSelectorContainer- Overrides:
hasSelectorsin classBaseSelectorContainer- Returns:
- whether any selectors are in this container
-
selectorCount
public int selectorCount()Gives the count of the number of selectors in this container- Specified by:
selectorCountin interfaceSelectorContainer- Overrides:
selectorCountin classBaseSelectorContainer- Returns:
- the number of selectors in this container
-
getSelectors
Returns the set of selectors as an array.- Specified by:
getSelectorsin interfaceSelectorContainer- Overrides:
getSelectorsin classBaseSelectorContainer- Parameters:
p- the current project- Returns:
- an array of selectors in this container
-
selectorElements
Returns an enumerator for accessing the set of selectors.- Specified by:
selectorElementsin interfaceSelectorContainer- Overrides:
selectorElementsin classBaseSelectorContainer- Returns:
- an enumerator that goes through each of the selectors
-
appendSelector
Add a new selector into this container.- Specified by:
appendSelectorin interfaceSelectorContainer- Overrides:
appendSelectorin classBaseSelectorContainer- Parameters:
selector- the new selector to add
-
verifySettings
public void verifySettings()Makes sure that there is only one entry, sets an error message if not.- Overrides:
verifySettingsin classBaseSelector
-
passesConditions
public boolean passesConditions()Ensures that the selector passes the conditions placed on it withifandunless.- Returns:
- true if conditions are passed
-
setIf
Sets the if attribute to an expression which must evaluate to true or the name of an existing property for the selector to select any files.- Parameters:
ifProperty- the expression to check- Since:
- Ant 1.8.0
-
setIf
Sets the if attribute to an expression which must evaluate to true or the name of an existing property for the selector to select any files.- Parameters:
ifProperty- the expression to check
-
setUnless
Sets the unless attribute to an expression which must evaluate to false or the name of a property which cannot exist for the selector to select any files.- Parameters:
unlessProperty- the expression to check- Since:
- Ant 1.8.0
-
setUnless
Sets the unless attribute to an expression which must evaluate to false or the name of a property which cannot exist for the selector to select any files.- Parameters:
unlessProperty- the expression to check
-
isSelected
Returns true (the file is selected) only if the if property (if any) exists, the unless property (if any) doesn't exist, and the contained selector (if any) selects the file. If there is no contained selector, return true (because we assume that the point was to test the if and unless conditions).- Specified by:
isSelectedin interfaceFileSelector- Specified by:
isSelectedin classBaseSelectorContainer- Parameters:
basedir- the base directory the scan is being done fromfilename- the name of the file to checkfile- a java.io.File object for the filename that the selector can use- Returns:
- whether the file should be selected or not
-