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:
Cloneable
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 ClassesModifier and TypeClassDescriptionstatic classA class for the enumerated attribute format, values are xml and text. -
Field Summary
Fields inherited from class ProjectComponent
description, location, project -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionAdds a path to class code to analyze.Adds a path to the classpath.add a name entry on the exclude listcreateJvmarg(CommandlineJava commandline) Create a new JVM argument.Deprecated.since 1.6.x.protected ExecuteWatchdogvoidexecute()execute the taskintexecuteAsForked(CommandlineJava commandline, ExecuteWatchdog watchdog) Execute the task by forking a new JVM.intexecuteInVM(CommandlineJava commandline) Execute inside VM.Gets the classespath.Gets the classpath to be used for this compilation.getDir()booleangetFork()booleanDeprecated.since 1.6.x.voidsetClasspath(Path classpath) Set the classpath to be used for this compilation.voidAdds a reference to a classpath defined elsewhere.voidThe directory to invoke the VM in.voidsetFork(boolean value) If true, forks into a new JVM.voidThe format to write the output in, "xml" or "text".voidsetHaltonerror(boolean haltonerror) Whether or not to halt on failure.voidsetIncluderuntime(boolean b) If true, include jdepend.jar in the forked VM.voidThe command used to invoke a forked Java Virtual Machine.voidsetOutputFile(File outputFile) The output file name.voidsetTimeout(Long value) Set the timeout value (in milliseconds).Methods inherited from class Task
bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskTypeModifier and TypeMethodDescriptionfinal voidbindToOwner(Task owner) Bind a task to another; use this when configuring a newly created task to do work on behalf of another.Returns the container target of this task.Returns the wrapper used for runtime configuration.Returns the name to use in logging messages.Return the type of task.protected RuntimeConfigurableReturn the runtime configurable structure for this task.protected voidhandleErrorFlush(String output) Handles an error line by logging it with the WARN priority.protected voidhandleErrorOutput(String output) Handles an error output by logging it with the WARN priority.protected voidhandleFlush(String output) Handles output by logging it with the INFO priority.protected inthandleInput(byte[] buffer, int offset, int length) Handle an input request by this task.protected voidhandleOutput(String output) Handles output by logging it with the INFO priority.voidinit()Called by the project to let the task initialize properly.protected final booleanHas this task been marked invalid?voidLogs a message with the default (INFO) priority.voidLogs a message with the given priority.voidLogs a message with the given priority.voidLogs a message with the given priority.voidConfigures this task - if it hasn't been done already.final voidperform()Performs this task if it's still valid, or gets a replacement version and performs that otherwise.voidForce the task to be reconfigured from its RuntimeConfigurable.voidsetOwningTarget(Target target) Sets the target container of this task.voidSets the wrapper to be used for runtime configuration.voidsetTaskName(String name) Sets the name to use in logging messages.voidsetTaskType(String type) Sets the name with which the task has been invoked.Methods inherited from class ProjectComponent
clone, getDescription, getLocation, getProject, setDescription, setLocation, setProjectModifier and TypeMethodDescriptionclone()Returns the description of the current action.Returns the file/location where this task was defined.Returns the project to which this component belongs.voidsetDescription(String desc) Sets a description of the current action.voidsetLocation(Location location) Sets the file/location where this task was defined.voidsetProject(Project project) Sets the project object of this component.
-
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
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:
-
getTimeout
- Returns:
- the timeout value
-
setOutputFile
The output file name.- Parameters:
outputFile- the output file name
-
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-trueif a JVM should be forked, otherwisefalse
-
getFork
public boolean getFork()- Returns:
- the value of the fork attribute
-
setJvm
The command used to invoke a forked Java Virtual Machine. Default isjava. Ignored if no JVM is forked.- Parameters:
value- the new VM to use instead ofjava- See Also:
-
createSourcespath
Deprecated.since 1.6.x.Adds a path to source code to analyze.- Returns:
- a source path
-
getSourcespath
Deprecated.since 1.6.x.Gets the sourcepath.- Returns:
- the sources path
-
createClassespath
-
getClassespath
-
setDir
The directory to invoke the VM in. Ignored if no JVM is forked.- Parameters:
dir- the directory to invoke the JVM from.- See Also:
-
getDir
- Returns:
- the dir attribute
-
setClasspath
Set the classpath to be used for this compilation.- Parameters:
classpath- a class path to be used
-
getClasspath
Gets the classpath to be used for this compilation.- Returns:
- the class path used for compilation
-
createClasspath
-
createJvmarg
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:
-
setClasspathRef
Adds a reference to a classpath defined elsewhere.- Parameters:
r- a classpath reference
-
createExclude
add a name entry on the exclude list- Returns:
- a pattern for the excludes
-
getExcludes
- Returns:
- the excludes patterns
-
setFormat
The format to write the output in, "xml" or "text".- Parameters:
ea- xml or text
-
execute
execute the task- Overrides:
executein classTask- Throws:
BuildException- if an error occurs
-
executeInVM
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 thekilledProcess()method of the watchdog class.- Parameters:
commandline- the commandline for forked jvmwatchdog- the watchdog in charge of cancelling the test if it exceeds a certain amount of time. Can benull.- Returns:
- the result of running the jdepend
- Throws:
BuildException- in case of error
-
createWatchdog
- Returns:
nullif there is a timeout value, otherwise the watchdog instance.- Throws:
BuildException- in case of error
-