Class BaseSelectorContainer
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
- All Implemented Interfaces:
- Cloneable,- ResourceSelector,- FileSelector,- SelectorContainer
- Direct Known Subclasses:
- AndSelector,- MajoritySelector,- NoneSelector,- OrSelector,- SelectSelector
This is the base class for selectors that can contain other selectors.
- Since:
- 1.5
- 
Field SummaryFields inherited from class org.apache.tools.ant.ProjectComponentdescription, location, project
- 
Constructor SummaryConstructors
- 
Method SummaryModifier 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 listvoidvoidappendSelector(FileSelector selector) Add a new selector into this container.protected 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).Returns the set of selectors as an array.booleanIndicates whether there are any selectors here.abstract booleanisSelected(File basedir, String filename, File file) Method that each selector will implement to create their selection behaviour.intGives the count of the number of selectors in this containerReturns an enumerator for accessing the set of selectors.toString()Convert the Selectors within this container to a string.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 org.apache.tools.ant.types.selectors.BaseSelectorgetError, setError, setError, verifySettingsMethods inherited from class org.apache.tools.ant.types.DataTypecheckAttributesAllowed, checkChildrenAllowed, circularReference, clone, dieOnCircularReference, dieOnCircularReference, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getDataTypeName, getRefid, invokeCircularReferenceCheck, isChecked, isReference, noChildrenAllowed, pushAndInvokeCircularReferenceCheck, setChecked, setRefid, tooManyAttributesMethods inherited from class org.apache.tools.ant.ProjectComponentgetDescription, getLocation, getProject, log, log, setDescription, setLocation, setProjectMethods inherited from class java.lang.Objectequals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.tools.ant.types.selectors.FileSelectorisSelected
- 
Constructor Details- 
BaseSelectorContainerpublic BaseSelectorContainer()
 
- 
- 
Method Details- 
hasSelectorspublic boolean hasSelectors()Indicates whether there are any selectors here.- Specified by:
- hasSelectorsin interface- SelectorContainer
- Returns:
- true if there are selectors
 
- 
selectorCountpublic int selectorCount()Gives the count of the number of selectors in this container- Specified by:
- selectorCountin interface- SelectorContainer
- Returns:
- the number of selectors
 
- 
getSelectorsReturns the set of selectors as an array.- Specified by:
- getSelectorsin interface- SelectorContainer
- Parameters:
- p- the current project
- Returns:
- an array of selectors
 
- 
selectorElementsReturns an enumerator for accessing the set of selectors.- Specified by:
- selectorElementsin interface- SelectorContainer
- Returns:
- an enumerator for the selectors
 
- 
toStringConvert 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.
- 
appendSelectorAdd a new selector into this container.- Specified by:
- appendSelectorin interface- SelectorContainer
- Parameters:
- selector- the new selector to add
 
- 
validatepublic void validate()This implementation validates the container by calling verifySettings() and then validates each contained selector provided that the selector implements the validate interface. Ordinarily, this will validate all the elements of a selector container even if the isSelected() method of some elements is never called. This has two effects: - Validation will often occur twice.
- Since it is not required that selectors derive from BaseSelector, there could be selectors in the container whose error conditions are not detected if their isSelected() call is never made.
 - Overrides:
- validatein class- BaseSelector
 
- 
isSelectedMethod that each selector will implement to create their selection behaviour. This is what makes SelectorContainer abstract.- Specified by:
- isSelectedin interface- FileSelector
- Specified by:
- isSelectedin class- BaseSelector
- Parameters:
- basedir- the base directory the scan is being done from
- filename- the name of the file to check
- file- a java.io.File object for the filename that the selector can use
- Returns:
- whether the file should be selected or not
 
- 
addSelectoradd a "Select" selector entry on the selector list- Specified by:
- addSelectorin interface- SelectorContainer
- Parameters:
- selector- the selector to add
 
- 
addAndadd an "And" selector entry on the selector list- Specified by:
- addAndin interface- SelectorContainer
- Parameters:
- selector- the selector to add
 
- 
addOradd an "Or" selector entry on the selector list- Specified by:
- addOrin interface- SelectorContainer
- Parameters:
- selector- the selector to add
 
- 
addNotadd a "Not" selector entry on the selector list- Specified by:
- addNotin interface- SelectorContainer
- Parameters:
- selector- the selector to add
 
- 
addNoneadd a "None" selector entry on the selector list- Specified by:
- addNonein interface- SelectorContainer
- Parameters:
- selector- the selector to add
 
- 
addMajorityadd a majority selector entry on the selector list- Specified by:
- addMajorityin interface- SelectorContainer
- Parameters:
- selector- the selector to add
 
- 
addDateadd a selector date entry on the selector list- Specified by:
- addDatein interface- SelectorContainer
- Parameters:
- selector- the selector to add
 
- 
addSizeadd a selector size entry on the selector list- Specified by:
- addSizein interface- SelectorContainer
- Parameters:
- selector- the selector to add
 
- 
addFilenameadd a selector filename entry on the selector list- Specified by:
- addFilenamein interface- SelectorContainer
- Parameters:
- selector- the selector to add
 
- 
addCustomadd an extended selector entry on the selector list- Specified by:
- addCustomin interface- SelectorContainer
- Parameters:
- selector- the selector to add
 
- 
addContainsadd a contains selector entry on the selector list- Specified by:
- addContainsin interface- SelectorContainer
- Parameters:
- selector- the selector to add
 
- 
addPresentadd a present selector entry on the selector list- Specified by:
- addPresentin interface- SelectorContainer
- Parameters:
- selector- the selector to add
 
- 
addDepthadd a depth selector entry on the selector list- Specified by:
- addDepthin interface- SelectorContainer
- Parameters:
- selector- the selector to add
 
- 
addDependadd a depends selector entry on the selector list- Specified by:
- addDependin interface- SelectorContainer
- Parameters:
- selector- the selector to add
 
- 
addDifferentadds a different selector to the selector list- Specified by:
- addDifferentin interface- SelectorContainer
- Parameters:
- selector- the selector to add
 
- 
addTypeadds a type selector to the selector list- Specified by:
- addTypein interface- SelectorContainer
- Parameters:
- selector- the selector to add
 
- 
addContainsRegexpadd a regular expression selector entry on the selector list- Specified by:
- addContainsRegexpin interface- SelectorContainer
- Parameters:
- selector- the selector to add
 
- 
addModifiedadd the modified selector- Specified by:
- addModifiedin interface- SelectorContainer
- Parameters:
- selector- the selector to add
- Since:
- ant 1.6
 
- 
addReadable
- 
addWritable
- 
addExecutable- Parameters:
- e- ExecutableSelector
- Since:
- 1.10.0
 
- 
addSymlink- Parameters:
- e- SymlinkSelector
- Since:
- 1.10.0
 
- 
addOwnedBy- Parameters:
- o- OwnedBySelector
- Since:
- 1.10.0
 
- 
addPosixGroup- Parameters:
- o- PosixGroupSelector
- Since:
- 1.10.4
 
- 
addPosixPermissions- Parameters:
- o- PosixPermissionsSelector
- Since:
- 1.10.4
 
- 
addadd an arbitrary selector- Specified by:
- addin interface- SelectorContainer
- Parameters:
- selector- the selector to add
- Since:
- Ant 1.6
 
- 
dieOnCircularReferenceDescription copied from class:DataTypeCheck 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).If one is included, throw a BuildException created by circularReference.This implementation is appropriate only for a DataType that cannot hold other DataTypes as children. The general contract of this method is that it shouldn't do anything if DataType.checkedis true and set it to true on exit.- Overrides:
- dieOnCircularReferencein class- DataType
- Parameters:
- stk- the stack of references to check.
- p- the project to use to dereference the references.
- Throws:
- BuildException- on error.
 
 
-