net.sf.antcontrib.logic
Class ForTask

java.lang.Object
  extended by org.apache.tools.ant.ProjectComponent
      extended by org.apache.tools.ant.Task
          extended by net.sf.antcontrib.logic.ForTask

public class ForTask
extends org.apache.tools.ant.Task

Task definition for the for task. This is based on the foreach task but takes a sequential element instead of a target and only works for ant >= 1.6Beta3

Author:
Peter Reilly

Field Summary
 
Fields inherited from class org.apache.tools.ant.Task
description, location, target, taskName, taskType, wrapper
 
Fields inherited from class org.apache.tools.ant.ProjectComponent
project
 
Constructor Summary
ForTask()
          Creates a new For instance.
 
Method Summary
 void add(java.util.Collection collection)
          Add a collection that can be iterated over.
 void add(org.apache.tools.ant.types.DirSet dirset)
          Add a dirset to be iterated over.
 void add(org.apache.tools.ant.types.FileSet fileset)
          Add a fileset to be iterated over.
 void add(java.util.Iterator iterator)
          Add an iterator to be iterated over.
 void add(java.util.Map map)
          Add a Map, iterate over the values
 void add(java.lang.Object obj)
          Add an object that has an Iterator iterator() method that can be iterated over.
 void addConfigured(org.apache.tools.ant.types.Path path)
          This is a path that can be used instread of the list attribute to interate over.
 void addConfiguredPath(org.apache.tools.ant.types.Path path)
          This is a path that can be used instread of the list attribute to interate over.
 void addDirSet(org.apache.tools.ant.types.DirSet dirset)
          Add a dirset to be iterated over.
 void addFileSet(org.apache.tools.ant.types.FileSet fileset)
          Add a fileset to be iterated over.
 java.lang.Object createSequential()
           
 void execute()
          Run the for task.
 void setBegin(int begin)
          Set begin attribute.
 void setDelimiter(java.lang.String delimiter)
          Set the delimiter attribute.
 void setEnd(java.lang.Integer end)
          Set end attribute.
 void setKeepgoing(boolean keepgoing)
          Set the keepgoing attribute, indicating whether we should stop on errors or continue heedlessly onward.
 void setList(java.lang.String list)
          Set the list attribute.
 void setParallel(boolean parallel)
          Attribute whether to execute the loop in parallel or in sequence.
 void setParam(java.lang.String param)
          Set the param attribute.
 void setStep(int step)
          Set step attribute.
 void setThreadCount(int threadCount)
          Set the maximum amount of threads we're going to allow to execute in parallel
 void setTrim(boolean trim)
          Set the trim attribute.
 
Methods inherited from class org.apache.tools.ant.Task
getDescription, getLocation, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, maybeConfigure, perform, reconfigure, setDescription, setLocation, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType
 
Methods inherited from class org.apache.tools.ant.ProjectComponent
getProject, setProject
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ForTask

public ForTask()
Creates a new For instance.

Method Detail

setParallel

public void setParallel(boolean parallel)
Attribute whether to execute the loop in parallel or in sequence.

Parameters:
parallel - if true execute the tasks in parallel. Default is false.

setThreadCount

public void setThreadCount(int threadCount)
Set the maximum amount of threads we're going to allow to execute in parallel

Parameters:
threadCount - the number of threads to use

setTrim

public void setTrim(boolean trim)
Set the trim attribute.

Parameters:
trim - if true, trim the value for each iterator.

setKeepgoing

public void setKeepgoing(boolean keepgoing)
Set the keepgoing attribute, indicating whether we should stop on errors or continue heedlessly onward.

Parameters:
keepgoing - a boolean, if true then we act in the keepgoing manner described.

setList

public void setList(java.lang.String list)
Set the list attribute.

Parameters:
list - a list of delimiter separated tokens.

setDelimiter

public void setDelimiter(java.lang.String delimiter)
Set the delimiter attribute.

Parameters:
delimiter - the delimiter used to separate the tokens in the list attribute. The default is ",".

setParam

public void setParam(java.lang.String param)
Set the param attribute. This is the name of the macrodef attribute that gets set for each iterator of the sequential element.

Parameters:
param - the name of the macrodef attribute.

addConfigured

public void addConfigured(org.apache.tools.ant.types.Path path)
This is a path that can be used instread of the list attribute to interate over. If this is set, each path element in the path is used for an interator of the sequential element.

Parameters:
path - the path to be set by the ant script.

addConfiguredPath

public void addConfiguredPath(org.apache.tools.ant.types.Path path)
This is a path that can be used instread of the list attribute to interate over. If this is set, each path element in the path is used for an interator of the sequential element.

Parameters:
path - the path to be set by the ant script.

createSequential

public java.lang.Object createSequential()
Returns:
a MacroDef#NestedSequential object to be configured

setBegin

public void setBegin(int begin)
Set begin attribute.

Parameters:
begin - the value to use.

setEnd

public void setEnd(java.lang.Integer end)
Set end attribute.

Parameters:
end - the value to use.

setStep

public void setStep(int step)
Set step attribute.


execute

public void execute()
Run the for task. This checks the attributes and nested elements, and if there are ok, it calls doTheTasks() which constructes a macrodef task and a for each interation a macrodef instance.

Overrides:
execute in class org.apache.tools.ant.Task

add

public void add(java.util.Map map)
Add a Map, iterate over the values

Parameters:
map - a Map object - iterate over the values.

add

public void add(org.apache.tools.ant.types.FileSet fileset)
Add a fileset to be iterated over.

Parameters:
fileset - a FileSet value

addFileSet

public void addFileSet(org.apache.tools.ant.types.FileSet fileset)
Add a fileset to be iterated over.

Parameters:
fileset - a FileSet value

add

public void add(org.apache.tools.ant.types.DirSet dirset)
Add a dirset to be iterated over.

Parameters:
dirset - a DirSet value

addDirSet

public void addDirSet(org.apache.tools.ant.types.DirSet dirset)
Add a dirset to be iterated over.

Parameters:
dirset - a DirSet value

add

public void add(java.util.Collection collection)
Add a collection that can be iterated over.

Parameters:
collection - a Collection value.

add

public void add(java.util.Iterator iterator)
Add an iterator to be iterated over.

Parameters:
iterator - an Iterator value

add

public void add(java.lang.Object obj)
Add an object that has an Iterator iterator() method that can be iterated over.

Parameters:
obj - An object that can be iterated over.