org.schmant.task.jdk.javadoc.ext
Class ExtJavadocTask

java.lang.Object
  extended by org.schmant.support.AbstractArgumentChecker
      extended by org.schmant.task.stub.AbstractTask<T>
          extended by org.schmant.task.stub.AbstractActionTask<T>
              extended by org.schmant.task.template.jdk.javadoc.AbstractJavadocTask<ExtJavadocTask>
                  extended by org.schmant.task.jdk.javadoc.ext.ExtJavadocTask
All Implemented Interfaces:
TaskDependency, ActionTaskConfigurable<ExtJavadocTask>, ActionTaskSpec<ExtJavadocTask>, LoggingConfigurable<ExtJavadocTask>, SourceConfigurable<ExtJavadocTask>, SourceConfigured, Task, TaskRunnable, TaskSpecification<ExtJavadocTask>, ExtProcessConfigured, ExtProcessTask<ExtJavadocTask>

public final class ExtJavadocTask
extends AbstractJavadocTask<ExtJavadocTask>
implements ExtProcessTask<ExtJavadocTask>

See ExtJavadocTF

Since:
0.5
Author:
Karl Gustafsson
Task_package:
org.schmant.task.base

Method Summary
 void copyProperties(ExtJavadocTask spec)
          Override the implementation from AbstractTask to copy the source properties.
protected  String getDefaultLogHeader()
          Get the default log header to log (to level INFO) before the task is run if the task user has not set a custom header.
 List<String> getEnvironmentVariables()
           
 ProcessResult getProcessResult()
          Get the result from the external program.
 ProcessOutputStrategy getStderrStrategy()
           
 ProcessOutputStrategy getStdoutStrategy()
           
 File getWorkingDirectory()
           
 boolean isFailOnErrors()
           
 boolean isInheritEnvironmentVariables()
           
protected  void runInternal(Report r)
          Subclasses implement this.
 String toString()
          Default implementation for tasks.
 
Methods inherited from class org.schmant.task.template.jdk.javadoc.AbstractJavadocTask
getClasspathDecorators, getClasspathEntries, getClasspathFromDecorators, getDecorators, getEncoding, getExcludePackages, getExtDirectories, getLocale, getOverview, getPackageNames, getSourceCodeVersion, getSourceFileNames, getVisibilityLevel, isBreakIterator, isMoreThanOneSourceAllowed, isSubPackages, validate
 
Methods inherited from class org.schmant.task.stub.AbstractActionTask
addSource, addSources, clearSources, getRelativeToBase, getSource, getSources, isSourcesMandatory, setRelativeToBase, setSource, setSources
 
Methods inherited from class org.schmant.task.stub.AbstractTask
cancel, createTask, getDefaultLogFooter, getDependencyForTasksScheduledByThisTask, getDependencyObservable, getFailureCause, getLogFooter, getLogHeader, getSatisfiedStateLock, getThis, isCancelled, isDone, isInterrupted, isRunning, isSatisfied, isSuccessful, run, setLogFooter, setLogHeader, setReportLevel, setTraceLogging
 
Methods inherited from class org.schmant.support.AbstractArgumentChecker
check, check, check, check
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.schmant.task.Task
cancel, getDependencyForTasksScheduledByThisTask, getFailureCause, isCancelled, isDone, isInterrupted, isRunning, isSuccessful
 
Methods inherited from interface org.schmant.run.TaskDependency
getDependencyObservable, getSatisfiedStateLock, isSatisfied
 
Methods inherited from interface org.schmant.task.TaskRunnable
run
 
Methods inherited from interface org.schmant.task.TaskSpecification
createTask
 
Methods inherited from interface org.schmant.task.confable.LoggingConfigurable
setLogFooter, setLogHeader, setReportLevel, setTraceLogging
 

Method Detail

getEnvironmentVariables

public List<String> getEnvironmentVariables()
Specified by:
getEnvironmentVariables in interface ExtProcessConfigured

isInheritEnvironmentVariables

public boolean isInheritEnvironmentVariables()
Specified by:
isInheritEnvironmentVariables in interface ExtProcessConfigured

isFailOnErrors

public boolean isFailOnErrors()
Specified by:
isFailOnErrors in interface ExtProcessConfigured

getWorkingDirectory

public File getWorkingDirectory()
Specified by:
getWorkingDirectory in interface ExtProcessConfigured

getStdoutStrategy

public ProcessOutputStrategy getStdoutStrategy()
Specified by:
getStdoutStrategy in interface ExtProcessConfigured

getStderrStrategy

public ProcessOutputStrategy getStderrStrategy()
Specified by:
getStderrStrategy in interface ExtProcessConfigured

getProcessResult

public ProcessResult getProcessResult()
Description copied from interface: ExtProcessTask
Get the result from the external program.

Specified by:
getProcessResult in interface ExtProcessTask<ExtJavadocTask>
Returns:
The program result.

getDefaultLogHeader

protected String getDefaultLogHeader()
Description copied from class: AbstractTask
Get the default log header to log (to level INFO) before the task is run if the task user has not set a custom header. Subclasses may override this to return better headers.

This is called after validating the task.

Return null to disable logging.

Overrides:
getDefaultLogHeader in class AbstractTask<ExtJavadocTask>
Returns:
"Running " + toString()

runInternal

protected void runInternal(Report r)
                    throws InterruptedException
Description copied from class: AbstractTask
Subclasses implement this. The task is AbstractTask.validate(Report):d before this method is called, see AbstractTask.run().

Specified by:
runInternal in class AbstractTask<ExtJavadocTask>
Parameters:
r - The current thread's Report.
Throws:
InterruptedException

copyProperties

public void copyProperties(ExtJavadocTask spec)
Description copied from class: AbstractActionTask
Override the implementation from AbstractTask to copy the source properties. Subclasses must override this to copy their own properties.

Specified by:
copyProperties in interface TaskSpecification<ExtJavadocTask>
Overrides:
copyProperties in class AbstractJavadocTask<ExtJavadocTask>
Parameters:
spec - The specification to copy properties to.

toString

public String toString()
Description copied from class: AbstractTask
Default implementation for tasks. Task implementations may override this. It is used in the default log header that is written (level INFO) before a task is run.

This implementation just returns the class name.

Overrides:
toString in class AbstractActionTask<ExtJavadocTask>