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.SizeSelector
|Nested Class Summary:|
|public static class||SizeSelector.ByteUnits||Enumerated attribute with the values for units.
This treats the standard SI units as representing powers of ten,
as they should. If you want the powers of 2 that approximate
the SI units, use the first two characters followed by a
This binary prefix system is approved by the IEC and appears on its way for approval by other agencies, but it is not an SI standard. It disambiguates things for us, though.
|public static class||SizeSelector.SizeComparisons||Enumerated attribute with the values for size comparison.|
|public static final String||SIZE_KEY||Used for parameterized custom selector|
|public static final String||UNITS_KEY||Used for parameterized custom selector|
|public static final String||WHEN_KEY||Used for parameterized custom selector|
|Fields inherited from org.apache.tools.ant.types.selectors.BaseExtendSelector:|
|Fields inherited from org.apache.tools.ant.types.DataType:|
|Fields inherited from org.apache.tools.ant.ProjectComponent:|
|project, location, description|
|Method from org.apache.tools.ant.types.selectors.SizeSelector Summary:|
|isSelected, setParameters, setUnits, setValue, setWhen, toString, verifySettings|
|Methods from org.apache.tools.ant.types.selectors.BaseExtendSelector:|
|getParameters, isSelected, setParameters|
|Methods from org.apache.tools.ant.types.selectors.BaseSelector:|
|getError, isSelected, setError, validate, verifySettings|
|Methods from 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, toString, tooManyAttributes|
|Methods from org.apache.tools.ant.ProjectComponent:|
|clone, getDescription, getLocation, getProject, log, log, setDescription, setLocation, setProject|
|Methods from java.lang.Object:|
|clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait|
|Method from org.apache.tools.ant.types.selectors.SizeSelector Detail:|
public boolean isSelected(File basedir, String filename, File file)
public void setParameters(Parameter parameters)
To get around this complexity, a number of standards bodies have proposed the 2^10 standard, and at least one has adopted it. But we are still left with a populace that isn't clear on how capitalization should work.
We therefore ignore capitalization as much as possible. Completely mixed case is not possible, but all upper and lower forms are accepted for all long and short forms. Since we have no need to work with the 0.001 case, this practice works here.
This function translates all the long and short forms that a unit prefix can occur in and translates them into a single multiplier.
public void setValue(long size)
public void setWhen(SizeComparisons when)
public String toString()
public void verifySettings()
Checks to make sure all settings are kosher. In this case, it means that the size attribute has been set (to a positive value), that the multiplier has a valid setting, and that the size limit is valid. Since the latter is a calculated value, this can only fail due to a programming error.
If a problem is detected, the setError() method is called.