hudson.plugins.tasks
Class TasksReporter

java.lang.Object
  extended by hudson.maven.MavenReporter
      extended by hudson.plugins.tasks.util.HealthAwareMavenReporter
          extended by hudson.plugins.tasks.TasksReporter
All Implemented Interfaces:
hudson.ExtensionPoint, hudson.model.Describable<hudson.maven.MavenReporter>, HealthDescriptor, java.io.Serializable

public class TasksReporter
extends HealthAwareMavenReporter

Publishes the results of the task scanner (maven 2 project type).

Author:
Ulli Hafner
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from interface hudson.ExtensionPoint
hudson.ExtensionPoint.LegacyInstancesAreScopedToHudson
 
Field Summary
static TasksReporterDescriptor TASK_SCANNER_DESCRIPTOR
          Descriptor of this publisher.
 
Constructor Summary
TasksReporter(java.lang.String pattern, java.lang.String excludePattern, java.lang.String threshold, java.lang.String newThreshold, java.lang.String failureThreshold, java.lang.String newFailureThreshold, java.lang.String healthy, java.lang.String unHealthy, java.lang.String thresholdLimit, java.lang.String high, java.lang.String normal, java.lang.String low, boolean ignoreCase, boolean canRunOnFailed)
          Creates a new instance of TasksReporter.
 
Method Summary
protected  boolean acceptGoal(java.lang.String goal)
          Determines whether this plug-in will accept the specified goal.
protected  boolean canContinue(hudson.model.Result result)
          Returns whether the reporter can continue processing.
 boolean getCanRunOnFailed()
          Returns whether this plug-in can run for failed builds, too.
 hudson.maven.MavenReporterDescriptor getDescriptor()
          
 java.lang.String getExcludePattern()
          Returns the Ant file-set pattern of files to exclude from work.
 java.lang.String getHigh()
          Returns the high priority task identifiers.
 boolean getIgnoreCase()
          Returns whether case should be ignored during the scanning.
 java.lang.String getLow()
          Returns the low priority task identifiers.
 java.lang.String getNormal()
          Returns the normal priority task identifiers.
 java.lang.String getPattern()
          Returns the Ant file-set pattern to the workspace files.
 hudson.model.Action getProjectAction(hudson.maven.MavenModule module)
          
protected  java.lang.Class<? extends hudson.model.Action> getResultActionClass()
          Returns the type of the result action.
 TasksParserResult perform(hudson.maven.MavenBuildProxy build, org.apache.maven.project.MavenProject pom, hudson.maven.MojoInfo mojo, PluginLogger logger)
          Performs the publishing of the results of this plug-in.
protected  BuildResult persistResult(ParserResult project, hudson.maven.MavenBuild build)
          Persists the result in the build (on the master).
 
Methods inherited from class hudson.plugins.tasks.util.HealthAwareMavenReporter
getDefaultEncoding, getFailureThreshold, getHealthy, getMinimumPriority, getNewFailureThreshold, getNewThreshold, getTargetPath, getThreshold, getThresholdLimit, getUnHealthy, postExecute
 
Methods inherited from class hudson.maven.MavenReporter
end, enterModule, getAggregatedProjectAction, leaveModule, postBuild, preBuild, preExecute, reportGenerated
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

TASK_SCANNER_DESCRIPTOR

public static final TasksReporterDescriptor TASK_SCANNER_DESCRIPTOR
Descriptor of this publisher.

Constructor Detail

TasksReporter

@DataBoundConstructor
public TasksReporter(java.lang.String pattern,
                                          java.lang.String excludePattern,
                                          java.lang.String threshold,
                                          java.lang.String newThreshold,
                                          java.lang.String failureThreshold,
                                          java.lang.String newFailureThreshold,
                                          java.lang.String healthy,
                                          java.lang.String unHealthy,
                                          java.lang.String thresholdLimit,
                                          java.lang.String high,
                                          java.lang.String normal,
                                          java.lang.String low,
                                          boolean ignoreCase,
                                          boolean canRunOnFailed)
Creates a new instance of TasksReporter.

Parameters:
pattern - Ant file-set pattern of files to scan for open tasks in
excludePattern - Ant file-set pattern of files to exclude from scan
threshold - Annotation threshold to be reached if a build should be considered as unstable.
newThreshold - New annotations threshold to be reached if a build should be considered as unstable.
failureThreshold - Annotation threshold to be reached if a build should be considered as failure.
newFailureThreshold - New annotations threshold to be reached if a build should be considered as failure.
healthy - Report health as 100% when the number of open tasks is less than this value
unHealthy - Report health as 0% when the number of open tasks is greater than this value
thresholdLimit - determines which warning priorities should be considered when evaluating the build stability and health
high - tag identifiers indicating high priority
normal - tag identifiers indicating normal priority
low - tag identifiers indicating low priority
ignoreCase - if case should be ignored during matching
canRunOnFailed - determines whether the plug-in can run for failed builds, too
Method Detail

getCanRunOnFailed

public boolean getCanRunOnFailed()
Returns whether this plug-in can run for failed builds, too.

Returns:
the can run on failed

canContinue

protected boolean canContinue(hudson.model.Result result)
Returns whether the reporter can continue processing. This default implementation returns true if the build is not aborted or failed.

Overrides:
canContinue in class HealthAwareMavenReporter
Parameters:
result - build result
Returns:
true if the build can continue

getPattern

public java.lang.String getPattern()
Returns the Ant file-set pattern to the workspace files.

Returns:
ant file-set pattern to the workspace files.

getExcludePattern

public java.lang.String getExcludePattern()
Returns the Ant file-set pattern of files to exclude from work.

Returns:
Ant file-set pattern of files to exclude from work.

getHigh

public java.lang.String getHigh()
Returns the high priority task identifiers.

Returns:
the high priority task identifiers

getNormal

public java.lang.String getNormal()
Returns the normal priority task identifiers.

Returns:
the normal priority task identifiers

getLow

public java.lang.String getLow()
Returns the low priority task identifiers.

Returns:
the low priority task identifiers

getIgnoreCase

public boolean getIgnoreCase()
Returns whether case should be ignored during the scanning.

Returns:
true if case should be ignored during the scanning

acceptGoal

protected boolean acceptGoal(java.lang.String goal)
Determines whether this plug-in will accept the specified goal. The HealthAwareMavenReporter.postExecute(MavenBuildProxy, MavenProject, MojoInfo, BuildListener, Throwable) will only by invoked if the plug-in returns true.

Specified by:
acceptGoal in class HealthAwareMavenReporter
Parameters:
goal - the maven goal
Returns:
true if the plug-in accepts this goal

perform

public TasksParserResult perform(hudson.maven.MavenBuildProxy build,
                                 org.apache.maven.project.MavenProject pom,
                                 hudson.maven.MojoInfo mojo,
                                 PluginLogger logger)
                          throws java.lang.InterruptedException,
                                 java.io.IOException
Performs the publishing of the results of this plug-in.

Specified by:
perform in class HealthAwareMavenReporter
Parameters:
build - the build proxy (on the slave)
pom - the pom of the module
mojo - the executed mojo
logger - the logger to report the progress to
Returns:
the java project containing the found annotations
Throws:
java.lang.InterruptedException - If the build is interrupted by the user (in an attempt to abort the build.) Normally the BuildStep implementations may simply forward the exception it got from its lower-level functions.
java.io.IOException - If the implementation wants to abort the processing when an IOException happens, it can simply propagate the exception to the caller. This will cause the build to fail, with the default error message. Implementations are encouraged to catch IOException on its own to provide a better error message, if it can do so, so that users have better understanding on why it failed.

persistResult

protected BuildResult persistResult(ParserResult project,
                                    hudson.maven.MavenBuild build)
Persists the result in the build (on the master).

Specified by:
persistResult in class HealthAwareMavenReporter
Parameters:
project - the created project
build - the build (on the master)
Returns:
the created result

getProjectAction

public hudson.model.Action getProjectAction(hudson.maven.MavenModule module)

Overrides:
getProjectAction in class hudson.maven.MavenReporter

getResultActionClass

protected java.lang.Class<? extends hudson.model.Action> getResultActionClass()
Returns the type of the result action.

Specified by:
getResultActionClass in class HealthAwareMavenReporter
Returns:
the type of the result action

getDescriptor

public hudson.maven.MavenReporterDescriptor getDescriptor()

Specified by:
getDescriptor in interface hudson.model.Describable<hudson.maven.MavenReporter>
Overrides:
getDescriptor in class hudson.maven.MavenReporter


Copyright © 2009. All Rights Reserved.