Class JobAction

java.lang.Object
io.jenkins.plugins.analysis.core.model.JobAction
All Implemented Interfaces:
Action, ModelObject, io.jenkins.plugins.echarts.AsyncConfigurableTrendChart

public class JobAction extends Object implements Action, io.jenkins.plugins.echarts.AsyncConfigurableTrendChart
A job action displays a link on the side panel of a job. This action also is responsible to render the historical trend via its associated 'charts.jelly' view.
Author:
Ullrich Hafner
  • Constructor Details

    • JobAction

      public JobAction(Job<?,?> owner, StaticAnalysisLabelProvider labelProvider, int numberOfTools)
      Creates a new instance of JobAction.
      Parameters:
      owner - the job that owns this action
      labelProvider - the label provider
      numberOfTools - the number of tools that have results to show
    • JobAction

      public JobAction(Job<?,?> owner, StaticAnalysisLabelProvider labelProvider, int numberOfTools, TrendChartType trendChartType)
      Creates a new instance of JobAction.
      Parameters:
      owner - the job that owns this action
      labelProvider - the label provider
      numberOfTools - the number of tools that have results to show
      trendChartType - determines if the trend chart will be shown
  • Method Details

    • getId

      public String getId()
      Returns the ID of this action and the ID of the associated results.
      Returns:
      the ID
    • getDisplayName

      public String getDisplayName()
      Specified by:
      getDisplayName in interface Action
      Specified by:
      getDisplayName in interface ModelObject
    • getTrendName

      public String getTrendName()
      Returns the title of the trend graph.
      Returns:
      the title of the trend graph.
    • getOwner

      public Job<?,?> getOwner()
      Returns the job this action belongs to.
      Returns:
      the job
    • createBuildHistory

      public History createBuildHistory()
      Returns the build history for this job.
      Returns:
      the history
    • getIconFileName

      @CheckForNull public String getIconFileName()
      Returns the icon URL for the side-panel in the job screen. If there is no valid result yet, then null is returned.
      Specified by:
      getIconFileName in interface Action
      Returns:
      the icon URL for the side-panel in the job screen
    • getUrlName

      public String getUrlName()
      Specified by:
      getUrlName in interface Action
    • doIndex

      public void doIndex(org.kohsuke.stapler.StaplerRequest request, org.kohsuke.stapler.StaplerResponse response) throws IOException
      Redirects the index page to the last result.
      Parameters:
      request - Stapler request
      response - Stapler response
      Throws:
      IOException - in case of an error
    • getLatestAction

      public Optional<ResultAction> getLatestAction()
      Returns the latest static analysis results for this job.
      Returns:
      the latest results (if available)
    • getConfigurableBuildTrendModel

      @JavaScriptMethod public String getConfigurableBuildTrendModel(String configuration)
      Returns the trend chart model that renders the build results for a specific action.
      Specified by:
      getConfigurableBuildTrendModel in interface io.jenkins.plugins.echarts.AsyncConfigurableTrendChart
      Parameters:
      configuration - JSON configuration of the chart (number of builds, etc.)
      Returns:
      the trend chart
    • isTrendVisible

      public boolean isTrendVisible()
      Returns whether the trend chart is visible or not.
      Specified by:
      isTrendVisible in interface io.jenkins.plugins.echarts.AsyncConfigurableTrendChart
      Returns:
      true if the trend is visible, false otherwise
    • isTrendEmpty

      public boolean isTrendEmpty()
      Returns whether the trend chart is empty. The trend is empty if all builds have zero issues.
      Returns:
      true if the trend is empty, false otherwise
    • toString

      public String toString()
      Overrides:
      toString in class Object