TempFile (Apache Ant API)
Date: 2015-07-03

org.apache.tools.ant.taskdefs

## Class TempFile

- java.lang.Object
- - org.apache.tools.ant.ProjectComponent
  - - org.apache.tools.ant.Task
    - - org.apache.tools.ant.taskdefs.TempFile

- All Implemented Interfaces:
    java.lang.Cloneable

      public class TempFile
      extends Task

  This task sets a property to the name of a temporary file. Unlike `File.createTempFile(java.lang.String, java.lang.String, java.io.File)`, this task does not (by default) actually create the temporary file, but it does guarantee that the file did not exist when the task was executed.

  Examples

      <tempfile property="temp.file" />

  create a temporary file

      <tempfile property="temp.file" suffix=".xml" />

  create a temporary file with the .xml suffix.

      <tempfile property="temp.file" destDir="build"/>

  create a temp file in the build subdir
  Since:
    Ant 1.5

- - ### 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 and Description
    `TempFile()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `execute()` Creates the temporary file.
    `boolean` | `isCreateFile()` Learn whether createFile flag is set for this tempfile task.
    `boolean` | `isDeleteOnExit()` Learn whether deleteOnExit is set for this tempfile task.
    `void` | `setCreateFile(boolean createFile)` If set the file is actually created, if not just a name is created.
    `void` | `setDeleteOnExit(boolean deleteOnExit)` Set whether the tempfile created by this task should be set for deletion on normal VM exit.
    `void` | `setDestDir(java.io.File destDir)` Sets the destination directory.
    `void` | `setPrefix(java.lang.String prefix)` Sets the optional prefix string for the temp file.
    `void` | `setProperty(java.lang.String property)` Sets the property you wish to assign the temporary file to.
    `void` | `setSuffix(java.lang.String suffix)` Sets the optional suffix string for the temp file.

    - ### 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 Detail

    - #### TempFile

          public TempFile()

  - ### Method Detail

    - #### setProperty

          public void setProperty(java.lang.String property)

      Sets the property you wish to assign the temporary file to.
      Parameters:
        `property` - The property to set

    - #### setDestDir

          public void setDestDir(java.io.File destDir)

      Sets the destination directory. If not set, the basedir directory is used instead.
      Parameters:
        `destDir` - The new destDir value

    - #### setPrefix

          public void setPrefix(java.lang.String prefix)

      Sets the optional prefix string for the temp file.
      Parameters:
        `prefix` - string to prepend to generated string

    - #### setSuffix

          public void setSuffix(java.lang.String suffix)

      Sets the optional suffix string for the temp file.
      Parameters:
        `suffix` - suffix including any "." , e.g ".xml"

    - #### setDeleteOnExit

          public void setDeleteOnExit(boolean deleteOnExit)

      Set whether the tempfile created by this task should be set for deletion on normal VM exit.
      Parameters:
        `deleteOnExit` - boolean flag.

    - #### isDeleteOnExit

          public boolean isDeleteOnExit()

      Learn whether deleteOnExit is set for this tempfile task.
      Returns:
        boolean deleteOnExit flag.

    - #### setCreateFile

          public void setCreateFile(boolean createFile)

      If set the file is actually created, if not just a name is created.
      Parameters:
        `createFile` - boolean flag.

    - #### isCreateFile

          public boolean isCreateFile()

      Learn whether createFile flag is set for this tempfile task.
      Returns:
        the createFile flag.

    - #### execute

          public void execute()
                       throws BuildException

      Creates the temporary file.
      Overrides:
        `execute` in class `Task`
      Throws:
        `BuildException` - if something goes wrong with the build