hudson.plugins.serenitec.util
Class AbstractResultAction<T extends EntriesProvider>

java.lang.Object
  extended by hudson.plugins.serenitec.util.AbstractResultAction<T>
Type Parameters:
T - type of the result of this action
All Implemented Interfaces:
hudson.model.Action, hudson.model.HealthReportingAction, hudson.model.ModelObject, ResultAction<T>, ToolTipProvider, java.io.Serializable, org.kohsuke.stapler.StaplerProxy
Direct Known Subclasses:
SerenitecResultAction

public abstract class AbstractResultAction<T extends EntriesProvider>
extends java.lang.Object
implements org.kohsuke.stapler.StaplerProxy, hudson.model.HealthReportingAction, ToolTipProvider, ResultAction<T>

Controls the live cycle of Hudson results. This action persists the results of a build and displays them on the build page. The actual visualization of the results is defined in the matching summary.jelly file.

Moreover, this class renders the results trend.

Author:
Ulli Hafner
See Also:
Serialized Form

Constructor Summary
AbstractResultAction(hudson.model.AbstractBuild<?,?> owner, HealthReportBuilder healthReportBuilder)
          Creates a new instance of AbstractResultAction.
AbstractResultAction(hudson.model.AbstractBuild<?,?> owner, HealthReportBuilder healthReportBuilder, T result)
          Creates a new instance of AbstractResultAction.
 
Method Summary
protected  org.jfree.data.category.CategoryDataset buildDataSet(boolean useHealthBuilder)
          Returns the data set that represents the result.
protected  org.jfree.data.category.CategoryDataset buildDetailsDataSet(boolean useHealthBuilder, java.lang.String param)
           
 void doDetailsGraph(org.kohsuke.stapler.StaplerRequest request, org.kohsuke.stapler.StaplerResponse response, java.lang.String param)
          Generates a PNG image for the repository trend
 void doGraph(org.kohsuke.stapler.StaplerRequest request, org.kohsuke.stapler.StaplerResponse response, int height)
          Generates a PNG image for the result trend.
 void doGraphMap(org.kohsuke.stapler.StaplerRequest request, org.kohsuke.stapler.StaplerResponse response, int height)
          Generates a PNG image for the result trend.
 void doPersonalGraph(org.kohsuke.stapler.StaplerRequest request, org.kohsuke.stapler.StaplerResponse response, int height, java.lang.String type)
          Generates a PNG image for the result personal trend.
 void doRulesRepartitionPie(org.kohsuke.stapler.StaplerRequest request, org.kohsuke.stapler.StaplerResponse response, int size, int n1, int n2, java.lang.String titre)
          Generates a PNG image for the result personal trend.
 hudson.model.HealthReport getBuildHealth()
          
protected abstract  SerenitecDescriptor getDescriptor()
          Returns the descriptor of the associated plug-in.
 HealthReportBuilder getHealthReportBuilder()
          Returns the associated health report builder.
 java.lang.String getIconFileName()
          
 hudson.model.AbstractBuild<?,?> getOwner()
          Returns the associated build of this action.
protected  AbstractResultAction<T> getPreviousBuild()
          Gets the result of a previous build if it's recorded, or null if not.
 T getResult()
          Returns the current result of this action.
 java.lang.Object getTarget()
          
 java.lang.String getUrlName()
          
 boolean hasPreviousResultAction()
          Returns whether a previous build already has a result action of this type attached.
 void setResult(T result)
          Sets the result for this build.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface hudson.plugins.serenitec.util.ToolTipProvider
getMultipleItemsTooltip, getSingleItemTooltip
 
Methods inherited from interface hudson.plugins.serenitec.util.ResultAction
getPreviousResultAction
 
Methods inherited from interface hudson.model.Action
getDisplayName
 

Constructor Detail

AbstractResultAction

public AbstractResultAction(hudson.model.AbstractBuild<?,?> owner,
                            HealthReportBuilder healthReportBuilder)
Creates a new instance of AbstractResultAction.

Parameters:
owner - the associated build of this action
healthReportBuilder - health builder to use

AbstractResultAction

public AbstractResultAction(hudson.model.AbstractBuild<?,?> owner,
                            HealthReportBuilder healthReportBuilder,
                            T result)
Creates a new instance of AbstractResultAction.

Parameters:
owner - the associated build of this action
healthReportBuilder - health builder to use
result - the result of the action
Method Detail

buildDataSet

protected org.jfree.data.category.CategoryDataset buildDataSet(boolean useHealthBuilder)
Returns the data set that represents the result. For each build, the number of warnings is used as result value.

Parameters:
useHealthBuilder - determines whether the health builder should be used to create the data set
Returns:
the data set

buildDetailsDataSet

protected org.jfree.data.category.CategoryDataset buildDetailsDataSet(boolean useHealthBuilder,
                                                                      java.lang.String param)

doGraph

public final void doGraph(org.kohsuke.stapler.StaplerRequest request,
                          org.kohsuke.stapler.StaplerResponse response,
                          int height)
                   throws java.io.IOException
Generates a PNG image for the result trend.

Specified by:
doGraph in interface ResultAction<T extends EntriesProvider>
Parameters:
request - Stapler request
response - Stapler response
height - the height of the trend graph
Throws:
java.io.IOException - in case of an error

doPersonalGraph

public final void doPersonalGraph(org.kohsuke.stapler.StaplerRequest request,
                                  org.kohsuke.stapler.StaplerResponse response,
                                  int height,
                                  java.lang.String type)
                           throws java.io.IOException
Generates a PNG image for the result personal trend.

Specified by:
doPersonalGraph in interface ResultAction<T extends EntriesProvider>
Parameters:
request - Stapler request
response - Stapler response
height - the height of the trend graph
Throws:
java.io.IOException - in case of an error

doRulesRepartitionPie

public final void doRulesRepartitionPie(org.kohsuke.stapler.StaplerRequest request,
                                        org.kohsuke.stapler.StaplerResponse response,
                                        int size,
                                        int n1,
                                        int n2,
                                        java.lang.String titre)
                                 throws java.io.IOException
Generates a PNG image for the result personal trend.

Specified by:
doRulesRepartitionPie in interface ResultAction<T extends EntriesProvider>
Parameters:
request - Stapler request
response - Stapler response
height - the height of the trend graph
Throws:
java.io.IOException - in case of an error

doDetailsGraph

public void doDetailsGraph(org.kohsuke.stapler.StaplerRequest request,
                           org.kohsuke.stapler.StaplerResponse response,
                           java.lang.String param)
                    throws java.io.IOException
Generates a PNG image for the repository trend

Parameters:
request - Stapler request
response - Stapler response
Throws:
java.io.IOException - in case of an error

doGraphMap

public final void doGraphMap(org.kohsuke.stapler.StaplerRequest request,
                             org.kohsuke.stapler.StaplerResponse response,
                             int height)
                      throws java.io.IOException
Generates a PNG image for the result trend.

Specified by:
doGraphMap in interface ResultAction<T extends EntriesProvider>
Parameters:
request - Stapler request
response - Stapler response
height - the height of the trend graph
Throws:
java.io.IOException - in case of an error

getBuildHealth

public final hudson.model.HealthReport getBuildHealth()

Specified by:
getBuildHealth in interface hudson.model.HealthReportingAction

getDescriptor

protected abstract SerenitecDescriptor getDescriptor()
Returns the descriptor of the associated plug-in.

Returns:
the descriptor of the associated plug-in

getHealthReportBuilder

public final HealthReportBuilder getHealthReportBuilder()
Returns the associated health report builder.

Specified by:
getHealthReportBuilder in interface ResultAction<T extends EntriesProvider>
Returns:
the associated health report builder

getIconFileName

public java.lang.String getIconFileName()

Specified by:
getIconFileName in interface hudson.model.Action

getOwner

public final hudson.model.AbstractBuild<?,?> getOwner()
Returns the associated build of this action.

Returns:
the associated build of this action

getPreviousBuild

protected AbstractResultAction<T> getPreviousBuild()
Gets the result of a previous build if it's recorded, or null if not.

Returns:
the result of a previous build, or null

getResult

public final T getResult()
Returns the current result of this action.

Specified by:
getResult in interface ResultAction<T extends EntriesProvider>
Returns:
the current result

getTarget

public final java.lang.Object getTarget()

Specified by:
getTarget in interface org.kohsuke.stapler.StaplerProxy

getUrlName

public java.lang.String getUrlName()

Specified by:
getUrlName in interface hudson.model.Action

hasPreviousResultAction

public boolean hasPreviousResultAction()
Returns whether a previous build already has a result action of this type attached.

Specified by:
hasPreviousResultAction in interface ResultAction<T extends EntriesProvider>
Returns:
true a previous build already has a result action of this type attached

setResult

public final void setResult(T result)
Sets the result for this build.

Specified by:
setResult in interface ResultAction<T extends EntriesProvider>
Parameters:
result - the result to set


Copyright © 2008. All Rights Reserved.