net.sf.antcontrib.logic
Class OutOfDate

java.lang.Object
  extended by org.apache.tools.ant.ProjectComponent
      extended by org.apache.tools.ant.Task
          extended by net.sf.antcontrib.logic.OutOfDate
All Implemented Interfaces:
org.apache.tools.ant.taskdefs.condition.Condition

public class OutOfDate
extends org.apache.tools.ant.Task
implements org.apache.tools.ant.taskdefs.condition.Condition

Task to help in calling tasks if generated files are older than source files. Sets a given property or runs an internal task. Based on org.apache.org.apache.tools.ant.taskdefs.UpToDate

Author:
peter reilly

Nested Class Summary
static class OutOfDate.CollectionEnum
          Enumerated type for collection attribute
 class OutOfDate.DeleteTargets
          nested delete targets
static class OutOfDate.MyMapper
          Wrapper for mapper - includes dir
 
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
OutOfDate()
           
 
Method Summary
 void addParallel(org.apache.tools.ant.taskdefs.Parallel doTask)
          Embedded do parallel
 void addSequential(org.apache.tools.ant.taskdefs.Sequential doTask)
          Embedded do sequential.
 OutOfDate.DeleteTargets createDeleteTargets()
          optional nested delete element
 org.apache.tools.ant.types.Mapper createMapper()
          Defines the FileNameMapper to use (nested mapper element).
 org.apache.tools.ant.types.Path createSourcefiles()
          Add to the source files
 org.apache.tools.ant.types.Path createTargetfiles()
          Add to the target files
 boolean eval()
          Evaluate (all) target and source file(s) to see if the target(s) is/are outoutdate.
 void execute()
          Sets property to true and/or executes embedded do if any of the target file(s) do not have a more recent timestamp than (each of) the source file(s).
 java.util.Iterator iterator()
          Call evalute and return an iterator over the result
 void setAllTargets(java.lang.String allTargets)
          A property to contain all the target filenames
 void setAllTargetsPath(java.lang.String allTargetsPath)
          A refernce to contain the path of all the targets
 void setCollection(OutOfDate.CollectionEnum collection)
          Set the collection attribute, controls what is returned by the iterator method.
 void setForce(boolean force)
          whether to allways be outofdate
 void setOutputSources(java.lang.String outputSources)
          A property to contain the output source files
 void setOutputSourcesPath(java.lang.String outputSourcesPath)
          A reference to the path containing all the sources files.
 void setOutputTargets(java.lang.String outputTargets)
          A property to contain the output target files
 void setOutputTargetsPath(java.lang.String outputTargetsPath)
          A reference to contain the path of target files that are outofdate
 void setProperty(java.lang.String property)
          The property to set if any of the target files are outofdate with regard to any of the source files.
 void setSeparator(java.lang.String separator)
          The separator to use to separate the files
 void setValue(java.lang.String value)
          The value to set the named property to the target files are outofdate
 void setVerbose(boolean verbose)
          whether to have verbose output
 
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

OutOfDate

public OutOfDate()
Method Detail

setCollection

public void setCollection(OutOfDate.CollectionEnum collection)
Set the collection attribute, controls what is returned by the iterator method.
  • "sources" the sources that are newer than the corresponding targets.
  • "targets" the targets that are older or not present than the corresponding sources.
  • "allsources" all the sources
  • "alltargets" all the targets
  • Parameters:
    collection - "sources" the changes

    createMapper

    public org.apache.tools.ant.types.Mapper createMapper()
    Defines the FileNameMapper to use (nested mapper element).

    Returns:
    Mappper to be configured

    setProperty

    public void setProperty(java.lang.String property)
    The property to set if any of the target files are outofdate with regard to any of the source files.

    Parameters:
    property - the name of the property to set if Target is outofdate.

    setSeparator

    public void setSeparator(java.lang.String separator)
    The separator to use to separate the files

    Parameters:
    separator - separator used in outout properties

    setValue

    public void setValue(java.lang.String value)
    The value to set the named property to the target files are outofdate

    Parameters:
    value - the value to set the property

    setForce

    public void setForce(boolean force)
    whether to allways be outofdate

    Parameters:
    force - true means that outofdate is always set, default false

    setVerbose

    public void setVerbose(boolean verbose)
    whether to have verbose output

    Parameters:
    verbose - true means that outofdate outputs debug info

    createTargetfiles

    public org.apache.tools.ant.types.Path createTargetfiles()
    Add to the target files

    Returns:
    a path to be configured

    createSourcefiles

    public org.apache.tools.ant.types.Path createSourcefiles()
    Add to the source files

    Returns:
    a path to be configured

    setOutputSources

    public void setOutputSources(java.lang.String outputSources)
    A property to contain the output source files

    Parameters:
    outputSources - the name of the property

    setOutputTargets

    public void setOutputTargets(java.lang.String outputTargets)
    A property to contain the output target files

    Parameters:
    outputTargets - the name of the property

    setOutputTargetsPath

    public void setOutputTargetsPath(java.lang.String outputTargetsPath)
    A reference to contain the path of target files that are outofdate

    Parameters:
    outputTargetsPath - the name of the reference

    setAllTargetsPath

    public void setAllTargetsPath(java.lang.String allTargetsPath)
    A refernce to contain the path of all the targets

    Parameters:
    allTargetsPath - the name of the reference

    setAllTargets

    public void setAllTargets(java.lang.String allTargets)
    A property to contain all the target filenames

    Parameters:
    allTargets - the name of the property

    setOutputSourcesPath

    public void setOutputSourcesPath(java.lang.String outputSourcesPath)
    A reference to the path containing all the sources files.

    Parameters:
    outputSourcesPath - the name of the reference

    createDeleteTargets

    public OutOfDate.DeleteTargets createDeleteTargets()
    optional nested delete element

    Returns:
    an element to be configured

    addParallel

    public void addParallel(org.apache.tools.ant.taskdefs.Parallel doTask)
    Embedded do parallel

    Parameters:
    doTask - the parallel to embed

    addSequential

    public void addSequential(org.apache.tools.ant.taskdefs.Sequential doTask)
    Embedded do sequential.

    Parameters:
    doTask - the sequential to embed

    eval

    public boolean eval()
    Evaluate (all) target and source file(s) to see if the target(s) is/are outoutdate.

    Specified by:
    eval in interface org.apache.tools.ant.taskdefs.condition.Condition
    Returns:
    true if any of the targets are outofdate

    iterator

    public java.util.Iterator iterator()
    Call evalute and return an iterator over the result

    Returns:
    an iterator over the result

    execute

    public void execute()
    Sets property to true and/or executes embedded do if any of the target file(s) do not have a more recent timestamp than (each of) the source file(s).

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