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