Package org.apache.tools.ant.taskdefs.optional.jdepend

# Class JDependTask

java.lang.Object
org.apache.tools.ant.ProjectComponent
org.apache.tools.ant.Task
org.apache.tools.ant.taskdefs.optional.jdepend.JDependTask

All Implemented Interfaces:
  `java.lang.Cloneable`

    public class JDependTask
    extends Task

Runs JDepend tests.

JDepend is a tool to generate design quality metrics for each Java package. It has been initially created by Mike Clark. JDepend can be found at https://github.com/clarkware/jdepend. The current implementation spawn a new Java VM.

- ## Nested Class Summary

  Nested Classes
  Modifier and Type | Class | Description
  --- | --- | ---
  `static class` | `JDependTask.FormatAttribute` | A class for the enumerated attribute format, values are xml and text.

- ## 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
  --- | ---
  `JDependTask()` |

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `Path` | `createClassespath()` | Adds a path to class code to analyze.
  `Path` | `createClasspath()` | Adds a path to the classpath.
  `PatternSet.NameEntry` | `createExclude()` | add a name entry on the exclude list
  `Commandline.Argument` | `createJvmarg​(CommandlineJava commandline)` | Create a new JVM argument.
  `Path` | `createSourcespath()` | Deprecated. since 1.6.x.
  `protected ExecuteWatchdog` | `createWatchdog()` |
  `void` | `execute()` | execute the task
  `int` | `executeAsForked​(CommandlineJava commandline, ExecuteWatchdog watchdog)` | Execute the task by forking a new JVM.
  `int` | `executeInVM​(CommandlineJava commandline)` | Execute inside VM.
  `Path` | `getClassespath()` | Gets the classespath.
  `Path` | `getClasspath()` | Gets the classpath to be used for this compilation.
  `java.io.File` | `getDir()` |
  `PatternSet` | `getExcludes()` |
  `boolean` | `getFork()` |
  `boolean` | `getHaltonerror()` |
  `java.io.File` | `getOutputFile()` |
  `Path` | `getSourcespath()` | Deprecated. since 1.6.x.
  `java.lang.Long` | `getTimeout()` |
  `void` | `setClasspath​(Path classpath)` | Set the classpath to be used for this compilation.
  `void` | `setClasspathRef​(Reference r)` | Adds a reference to a classpath defined elsewhere.
  `void` | `setDir​(java.io.File dir)` | The directory to invoke the VM in.
  `void` | `setFork​(boolean value)` | If true, forks into a new JVM.
  `void` | `setFormat​(JDependTask.FormatAttribute ea)` | The format to write the output in, "xml" or "text".
  `void` | `setHaltonerror​(boolean haltonerror)` | Whether or not to halt on failure.
  `void` | `setIncluderuntime​(boolean b)` | If true, include jdepend.jar in the forked VM.
  `void` | `setJvm​(java.lang.String value)` | The command used to invoke a forked Java Virtual Machine.
  `void` | `setOutputFile​(java.io.File outputFile)` | The output file name.
  `void` | `setTimeout​(java.lang.Long value)` | Set the timeout value (in milliseconds).

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

  - ### JDependTask

    public JDependTask()

- ## Method Details

  - ### setIncluderuntime

    public void setIncluderuntime​(boolean b)
    If true, include jdepend.jar in the forked VM.
    Parameters:
      `b` - include ant run time yes or no
    Since:
      Ant 1.6

  - ### setTimeout

    public void setTimeout​(java.lang.Long value)
    Set the timeout value (in milliseconds).

    If the operation is running for more than this value, the jdepend will be canceled. (works only when in 'fork' mode).

    Parameters:
      `value` - the maximum time (in milliseconds) allowed before declaring the test as 'timed-out'
    See Also:
      `setFork(boolean)`

  - ### getTimeout

    public java.lang.Long getTimeout()
    Returns:
      the timeout value

  - ### setOutputFile

    public void setOutputFile​(java.io.File outputFile)
    The output file name.
    Parameters:
      `outputFile` - the output file name

  - ### getOutputFile

    public java.io.File getOutputFile()
    Returns:
      the output file name

  - ### setHaltonerror

    public void setHaltonerror​(boolean haltonerror)
    Whether or not to halt on failure. Default: false.
    Parameters:
      `haltonerror` - the value to set

  - ### getHaltonerror

    public boolean getHaltonerror()
    Returns:
      the value of the haltonerror attribute

  - ### setFork

    public void setFork​(boolean value)
    If true, forks into a new JVM. Default: false.
    Parameters:
      `value` - `true` if a JVM should be forked, otherwise `false`

  - ### getFork

    public boolean getFork()
    Returns:
      the value of the fork attribute

  - ### setJvm

    public void setJvm​(java.lang.String value)
    The command used to invoke a forked Java Virtual Machine. Default is `java`. Ignored if no JVM is forked.
    Parameters:
      `value` - the new VM to use instead of `java`
    See Also:
      `setFork(boolean)`

  - ### createSourcespath

    @Deprecated public Path createSourcespath()
    Deprecated.
    since 1.6.x.
    Adds a path to source code to analyze.
    Returns:
      a source path

  - ### getSourcespath

    @Deprecated public Path getSourcespath()
    Deprecated.
    since 1.6.x.
    Gets the sourcepath.
    Returns:
      the sources path

  - ### createClassespath

    public Path createClassespath()
    Adds a path to class code to analyze.
    Returns:
      a classes path

  - ### getClassespath

    public Path getClassespath()
    Gets the classespath.
    Returns:
      the classes path

  - ### setDir

    public void setDir​(java.io.File dir)
    The directory to invoke the VM in. Ignored if no JVM is forked.
    Parameters:
      `dir` - the directory to invoke the JVM from.
    See Also:
      `setFork(boolean)`

  - ### getDir

    public java.io.File getDir()
    Returns:
      the dir attribute

  - ### setClasspath

    public void setClasspath​(Path classpath)
    Set the classpath to be used for this compilation.
    Parameters:
      `classpath` - a class path to be used

  - ### getClasspath

    public Path getClasspath()
    Gets the classpath to be used for this compilation.
    Returns:
      the class path used for compilation

  - ### createClasspath

    public Path createClasspath()
    Adds a path to the classpath.
    Returns:
      a classpath

  - ### createJvmarg

    public Commandline.Argument createJvmarg​(CommandlineJava commandline)
    Create a new JVM argument. Ignored if no JVM is forked.
    Parameters:
      `commandline` - the commandline to create the argument on
    Returns:
      create a new JVM argument so that any argument can be passed to the JVM.
    See Also:
      `setFork(boolean)`

  - ### setClasspathRef

    public void setClasspathRef​(Reference r)
    Adds a reference to a classpath defined elsewhere.
    Parameters:
      `r` - a classpath reference

  - ### createExclude

    public PatternSet.NameEntry createExclude()
    add a name entry on the exclude list
    Returns:
      a pattern for the excludes

  - ### getExcludes

    public PatternSet getExcludes()
    Returns:
      the excludes patterns

  - ### setFormat

    public void setFormat​(JDependTask.FormatAttribute ea)
    The format to write the output in, "xml" or "text".
    Parameters:
      `ea` - xml or text

  - ### execute

    public void execute() throws BuildException
    execute the task
    Overrides:
      `execute` in class `Task`
    Throws:
      `BuildException` - if an error occurs

  - ### executeInVM

    public int executeInVM​(CommandlineJava commandline) throws BuildException
    Execute inside VM.
    Parameters:
      `commandline` - the command line
    Returns:
      the return value of the mvm
    Throws:
      `BuildException` - if an error occurs

  - ### executeAsForked

    public int executeAsForked​(CommandlineJava commandline, ExecuteWatchdog watchdog) throws BuildException
    Execute the task by forking a new JVM. The command will block until it finishes. To know if the process was destroyed or not, use the `killedProcess()` method of the watchdog class.
    Parameters:
      `commandline` - the commandline for forked jvm
      `watchdog` - the watchdog in charge of cancelling the test if it exceeds a certain amount of time. Can be `null`.
    Returns:
      the result of running the jdepend
    Throws:
      `BuildException` - in case of error

  - ### createWatchdog

    protected ExecuteWatchdog createWatchdog() throws BuildException
    Returns:
      `null` if there is a timeout value, otherwise the watchdog instance.
    Throws:
      `BuildException` - in case of error