Class Assertions
java.lang.Object
org.apache.tools.ant.ProjectComponent
org.apache.tools.ant.types.DataType
org.apache.tools.ant.types.Assertions
- All Implemented Interfaces:
Cloneable
The assertion datatype. This type describes
assertion settings for the <java> task and others.
One can set the system assertions, and enable/disable those in
packages and classes.
Assertions can only be enabled or disabled when forking Java.
Example: set system assertions and all org.apache packages except
for ant, and the class org.apache.tools.ant.Main.
<assertions enableSystemAssertions="true" > <enable package="org.apache" /> <disable package="org.apache.ant" /> <enable class="org.apache.tools.ant.Main"/> </assertions>Disable system assertions; enable those in the anonymous package
<assertions enableSystemAssertions="false" > <enable package="..." /> </assertions>enable assertions in a class called Test
<assertions > <enable class="Test" /> </assertions>This type is a datatype, so you can declare assertions and use them later
<assertions id="project.assertions" > <enable project="org.apache.test" /> </assertions> <assertions refid="project.assertions" />
- Since:
- Ant 1.6
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classbase class for our assertion elements.static classA disabled assertion disables thingsstatic classan enabled assertion enables things -
Field Summary
Fields inherited from class ProjectComponent
description, location, project -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddDisable(Assertions.DisabledAssertion assertion) disable assertionsvoidaddEnable(Assertions.EnabledAssertion assertion) enable assertionsvoidapplyAssertions(List<String> commandList) add the assertions to a list in a format suitable for adding to a command linevoidapplyAssertions(ListIterator<String> commandIterator) add the assertions to a list in a format suitable for adding to a command linevoidapplyAssertions(CommandlineJava command) apply all the assertions to the command.clone()clone the objects.voidsetEnableSystemAssertions(Boolean enableSystemAssertions) enable or disable system assertions.voidSet the value of the refid attribute.intsize()how many assertions are made...will resolve references before returningMethods inherited from class DataType
checkAttributesAllowed, checkChildrenAllowed, circularReference, dieOnCircularReference, dieOnCircularReference, dieOnCircularReference, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getDataTypeName, getRefid, invokeCircularReferenceCheck, isChecked, isReference, noChildrenAllowed, pushAndInvokeCircularReferenceCheck, setChecked, tooManyAttributes, toStringModifier 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.protected voidConvenience method.protected voiddieOnCircularReference(Stack<Object> stack, Project project) 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).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.protected BuildExceptionCreates an exception that indicates that refid has to be the only attribute if it is set.toString()Basic DataType toString().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.
-
Constructor Details
-
Assertions
public Assertions()
-
-
Method Details
-
addEnable
enable assertions- Parameters:
assertion- an enable assertion nested element
-
addDisable
disable assertions- Parameters:
assertion- a disable assertion nested element
-
setEnableSystemAssertions
enable or disable system assertions. Default is not set (neither -enablesystemassertions or -disablesytemassertions are used on the command line).- Parameters:
enableSystemAssertions- if true enable system assertions
-
setRefid
Set the value of the refid attribute.Subclasses may need to check whether any other attributes have been set as well or child elements have been created and thus override this method. if they do the must call
super.setRefid. -
size
public int size()how many assertions are made...will resolve references before returning- Returns:
- total # of commands to make
-
applyAssertions
-
applyAssertions
apply all the assertions to the command.- Parameters:
command- the command line to format
-
applyAssertions
add the assertions to a list in a format suitable for adding to a command line- Parameters:
commandIterator- list of commands
-
clone
clone the objects. This is not a full depth clone; the list of assertions is cloned, but it does not clone the underlying assertions.- Overrides:
clonein classDataType- Returns:
- a cli
- Throws:
CloneNotSupportedException- if the super class does not support cloning
-