Package org.apache.tools.ant.taskdefs

# Class Length

java.lang.Object
org.apache.tools.ant.ProjectComponent
org.apache.tools.ant.Task
org.apache.tools.ant.taskdefs.Length

All Implemented Interfaces:
  `Cloneable`, `Condition`

public class Length extends Task implements Condition
Gets lengths: of files/resources, byte size; of strings, length (optionally trimmed). The task is overloaded in this way for semantic reasons, much like Available.

Since:
  Ant 1.6.3

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static class`
  `Length.FileMode`
  EnumeratedAttribute operation mode
  `static class`
  `Length.When`
  EnumeratedAttribute for the when attribute.

- ## Field Summary

  ### Fields inherited from class org.apache.tools.ant.Task

  `target, taskName, taskType, wrapper`

  ### Fields inherited from class org.apache.tools.ant.ProjectComponent

  `description, location, project`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `Length()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `add(FileSet fs)`
  Add a FileSet.
  `void`
  `add(ResourceCollection c)`
  Add a ResourceCollection.
  `boolean`
  `eval()`
  Fulfill the condition contract.
  `void`
  `execute()`
  Execute the length task.
  `boolean`
  `getTrim()`
  Learn whether strings will be trimmed.
  `void`
  `setFile(File file)`
  Set the single file for this task.
  `void`
  `setLength(long ell)`
  Set the target count number for use as a Condition.
  `void`
  `setMode(Length.FileMode m)`
  Set the execution mode for working with files.
  `void`
  `setProperty(String property)`
  The property in which the length will be stored.
  `void`
  `setResource(Resource resource)`
  Set the single resource for this task.
  `void`
  `setString(String string)`
  Set the string whose length to get.
  `void`
  `setTrim(boolean trim)`
  Set whether to trim in string mode.
  `void`
  `setWhen(Length.When w)`
  Set the comparison for use as a Condition.
  `void`
  `setWhen(Comparison c)`
  Set the comparison for use as a Condition.

  ### Methods inherited from class org.apache.tools.ant.Task

  `bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType`

  ### Methods inherited from class org.apache.tools.ant.ProjectComponent

  `clone, getDescription, getLocation, getProject, setDescription, setLocation, setProject`

  ### Methods inherited from class java.lang.Object

  `equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### Length

    public Length()

- ## Method Details

  - ### setProperty

    public void setProperty(String property)
    The property in which the length will be stored.
    Parameters:
      `property` - the `String` property key.

  - ### setResource

    public void setResource(Resource resource)
    Set the single resource for this task.
    Parameters:
      `resource` - the Resource whose length to retrieve.

  - ### setFile

    public void setFile(File file)
    Set the single file for this task.
    Parameters:
      `file` - the `File` whose length to retrieve.

  - ### add

    public void add(FileSet fs)
    Add a FileSet.
    Parameters:
      `fs` - the `FileSet` to add.

  - ### add

    public void add(ResourceCollection c)
    Add a ResourceCollection.
    Parameters:
      `c` - the `ResourceCollection` to add.
    Since:
      Ant 1.7

  - ### setLength

    public void setLength(long ell)
    Set the target count number for use as a Condition.
    Parameters:
      `ell` - the long length to compare with.

  - ### setWhen

    public void setWhen(Length.When w)
    Set the comparison for use as a Condition.
    Parameters:
      `w` - EnumeratedAttribute When.
    See Also:
      - `Comparison`

  - ### setWhen

    public void setWhen(Comparison c)
    Set the comparison for use as a Condition.
    Parameters:
      `c` - Comparison.
    Since:
      Ant 1.7
    See Also:
      - `Comparison`

  - ### setMode

    public void setMode(Length.FileMode m)
    Set the execution mode for working with files.
    Parameters:
      `m` - the `FileMode` to use.

  - ### setString

    public void setString(String string)
    Set the string whose length to get.
    Parameters:
      `string` - `String`.

  - ### setTrim

    public void setTrim(boolean trim)
    Set whether to trim in string mode. Default false.
    Parameters:
      `trim` - `boolean`.

  - ### getTrim

    public boolean getTrim()
    Learn whether strings will be trimmed. Default false.
    Returns:
      boolean trim setting.

  - ### execute

    public void execute()
    Execute the length task.
    Overrides:
      `execute` in class `Task`

  - ### eval

    public boolean eval()
    Fulfill the condition contract.
    Specified by:
      `eval` in interface `Condition`
    Returns:
      true if the condition is true.
    Throws:
      `BuildException` - if an error occurs.