Package org.oddjob.io

Class ExistsJob

java.lang.Object
org.oddjob.io.ExistsJob
All Implemented Interfaces:
Serializable, Runnable

public class ExistsJob extends Object implements Runnable, Serializable
See Also:

Description

Test if a file exists. This job will flag complete if the file exists, not complete if it doesn't, and will signal an exception if the path to the file does not exist.

Example

A simple example checking for a single file.
<oddjob id="this">

    <job>

        <exists file="${this.args[0]}/test/io/reference/test1.txt"/>

    </job>

</oddjob>
File polling.
<oddjob id="this" xmlns:scheduling="http://rgordon.co.uk/oddjob/scheduling" xmlns:schedules="http://rgordon.co.uk/oddjob/schedules">

    <job>

        <sequential name="The Classic File Polling Example">

            <jobs>

                <scheduling:retry limits="${timer.current}">

                    <schedule>

                        <schedules:interval interval="00:00:02"/>

                    </schedule>

                    <job>

                        <sequential id="echo-when-file">

                            <jobs>

                                <exists id="check" name="Check File Exists" file="${work.dir}/done.flag"/>

                                <echo>Found ${check.exists[0]}</echo>

                            </jobs>

                        </sequential>

                    </job>

                </scheduling:retry>

            </jobs>

        </sequential>

    </job>

</oddjob>
Using exists and processing the files found.
<oddjob id="this">

    <job>

        <sequential name="Find Files">

            <jobs>

                <exists id="exists" file="${this.args[0]}/test/io/reference/test*.txt"/>

                <foreach id="found">

                    <values>

                        <value value="${exists.exists}"/>

                    </values>

                    <configuration>

                        <xml>

                            <foreach id="found">

                                <job>

                                    <echo>found ${found.current}</echo>

                                </job>

                            </foreach>

                        </xml>

                    </configuration>

                </foreach>

            </jobs>

        </sequential>

    </job>

</oddjob>
  • Constructor Details

    • ExistsJob

      public ExistsJob()
  • Method Details

    • getName

      public String getName()
      Get the name.
      Returns:
      The name.
    • setName

      public void setName(String name)
      Set the name
      Parameters:
      name - The name.
    • getFile

      public String getFile()
      Get the file.
      Returns:
      The file specification.
    • setFile

      public void setFile(String file)
      Set the file.
      Parameters:
      The - file specification.
    • getExists

      public File[] getExists()
    • getResult

      public int getResult()
      Get the result. Used to set complete/not state.
      Returns:
      0 if file exists.
    • run

      public void run()
      Specified by:
      run in interface Runnable
    • getSize

      public long getSize()
      Reference Property:
      size

      Description

      If a single file is found, this is the size of the file in bytes, or -1 if a single file hasn't been found.
      Required:
      R/O.
    • getLastModified

      public Date getLastModified()
      Reference Property:
      lastModified

      Description

      If a single file is found, this is the last modified date of the file.
      Required:
      R/O.
    • toString

      public String toString()
      Overrides:
      toString in class Object