org.apache.tools.ant.types
Class Assertions

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.Assertions
All Implemented Interfaces:
java.lang.Cloneable

public class Assertions
extends DataType
implements java.lang.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
static class Assertions.BaseAssertion
          base class for our assertion elements.
static class Assertions.DisabledAssertion
          A disabled assertion disables things
static class Assertions.EnabledAssertion
          an enabled assertion enables things
 
Field Summary
 
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
Assertions()
           
 
Method Summary
 void addDisable(Assertions.DisabledAssertion assertion)
          disable assertions
 void addEnable(Assertions.EnabledAssertion assertion)
          enable assertions
 void applyAssertions(CommandlineJava command)
          apply all the assertions to the command.
 void applyAssertions(java.util.List commandList)
          add the assertions to a list in a format suitable for adding to a command line
 void applyAssertions(java.util.ListIterator commandIterator)
          add the assertions to a list in a format suitable for adding to a command line
 java.lang.Object clone()
          clone the objects.
 void setEnableSystemAssertions(java.lang.Boolean enableSystemAssertions)
          enable or disable system assertions.
 void setRefid(Reference ref)
          Set the value of the refid attribute.
 int size()
          how many assertions are made...will resolve references before returning
 
Methods inherited from class org.apache.tools.ant.types.DataType
checkAttributesAllowed, checkChildrenAllowed, circularReference, dieOnCircularReference, dieOnCircularReference, dieOnCircularReference, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getDataTypeName, getRefid, invokeCircularReferenceCheck, isChecked, isReference, noChildrenAllowed, setChecked, tooManyAttributes, toString
 
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
 

Constructor Detail

Assertions

public Assertions()
Method Detail

addEnable

public void addEnable(Assertions.EnabledAssertion assertion)
enable assertions

Parameters:
assertion - an enable assertion nested element

addDisable

public void addDisable(Assertions.DisabledAssertion assertion)
disable assertions

Parameters:
assertion - a disable assertion nested element

setEnableSystemAssertions

public void setEnableSystemAssertions(java.lang.Boolean enableSystemAssertions)
enable or disable system assertions. Default is not set (neither -enablesystemassersions or -disablesytemassertions are used on the command line).

Parameters:
enableSystemAssertions - if true enable system assertions

setRefid

public void setRefid(Reference ref)
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.

Overrides:
setRefid in class DataType
Parameters:
ref - the reference to use

size

public int size()
how many assertions are made...will resolve references before returning

Returns:
total # of commands to make

applyAssertions

public void applyAssertions(java.util.List commandList)
add the assertions to a list in a format suitable for adding to a command line

Parameters:
commandList - the command line to format

applyAssertions

public void applyAssertions(CommandlineJava command)
apply all the assertions to the command.

Parameters:
command - the command line to format

applyAssertions

public void applyAssertions(java.util.ListIterator commandIterator)
add the assertions to a list in a format suitable for adding to a command line

Parameters:
commandIterator - list of commands

clone

public java.lang.Object clone()
                       throws java.lang.CloneNotSupportedException
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:
clone in class DataType
Returns:
a cli
Throws:
java.lang.CloneNotSupportedException - if the super class does not support cloning