Klasse CoverageViewModel

java.lang.Object
io.jenkins.plugins.datatables.DefaultAsyncTableContentProvider
io.jenkins.plugins.coverage.model.CoverageViewModel
Alle implementierten Schnittstellen:
ModelObject, io.jenkins.plugins.datatables.AsyncTableContentProvider
Bekannte direkte Unterklassen:
SourceViewModel

public class CoverageViewModel extends io.jenkins.plugins.datatables.DefaultAsyncTableContentProvider implements ModelObject
Server side model that provides the data for the details view of the coverage results. The layout of the associated view is defined corresponding jelly view 'index.jelly'.
Autor:
Ullrich Hafner, Florian Orendi
  • Konstruktordetails

    • CoverageViewModel

      public CoverageViewModel(Run<?,?> owner, CoverageNode node)
      Creates a new view model instance.
      Parameter:
      owner - the owner of this view
      node - the coverage node to be shown
  • Methodendetails

    • getId

      public String getId()
    • getOwner

      public Run<?,?> getOwner()
    • getNode

      public CoverageNode getNode()
    • getDisplayName

      public String getDisplayName()
      Angegeben von:
      getDisplayName in Schnittstelle ModelObject
    • getJenkinsColorIDs

      @JavaScriptMethod public Set<String> getJenkinsColorIDs()
      Gets a set of color IDs which can be used to dynamically load the defined Jenkins colors.
      Gibt zurück:
      the available color IDs
    • setJenkinsColors

      @JavaScriptMethod public void setJenkinsColors(String colors)
      Creates a new ColorProvider based on the passed color json string which contains the set Jenkins colors.
      Parameter:
      colors - The dynamically loaded Jenkins colors to be used for highlighting the coverage tree as json string
    • getOverview

      @JavaScriptMethod public CoverageViewModel.CoverageOverview getOverview()
    • getChangeCoverageOverview

      @JavaScriptMethod public CoverageViewModel.CoverageOverview getChangeCoverageOverview()
    • getTrendChart

      @JavaScriptMethod public String getTrendChart(String configuration)
      Returns the trend chart configuration.
      Parameter:
      configuration - JSON object to configure optional properties for the trend chart
      Gibt zurück:
      the trend chart model (converted to a JSON string)
    • getCoverageTree

      @JavaScriptMethod public edu.hm.hafner.echarts.TreeMapNode getCoverageTree(String coverageMetric)
      Returns the root of the tree of nodes for the ECharts treemap. This tree is used as model for the chart on the client side. The tree is available for line and branch coverage.
      Parameter:
      coverageMetric - The used coverage metric - the default is the line coverage
      Gibt zurück:
      the tree of nodes for the ECharts treemap
    • getChangeCoverageTree

      @JavaScriptMethod public edu.hm.hafner.echarts.TreeMapNode getChangeCoverageTree(String coverageMetric)
      Returns the root of the filtered tree of change coverage nodes for the ECharts treemap. This tree is used as model for the chart on the client side. The tree is available for line and branch coverage.
      Parameter:
      coverageMetric - The used coverage metric - the default is the line coverage
      Gibt zurück:
      the tree of change coverage nodes for the ECharts treemap
    • getCoverageChangesTree

      @JavaScriptMethod public edu.hm.hafner.echarts.TreeMapNode getCoverageChangesTree(String coverageMetric)
      Returns the root of the filtered tree of indirect coverage changes for the ECharts treemap. This tree is used as model for the chart on the client side. The tree is available for line and branch coverage.
      Parameter:
      coverageMetric - The used coverage metric - the default is the line coverage
      Gibt zurück:
      the tree of indirect coverage changes nodes for the ECharts treemap
    • getTableModel

      public io.jenkins.plugins.datatables.TableModel getTableModel(String tableId)
      Returns the table model that matches with the passed table ID and shows the files along with the branch and line coverage.
      Angegeben von:
      getTableModel in Schnittstelle io.jenkins.plugins.datatables.AsyncTableContentProvider
      Parameter:
      tableId - ID of the table model
      Gibt zurück:
      the table model with the specified ID
    • getUrlForBuild

      @JavaScriptMethod public String getUrlForBuild(String selectedBuildDisplayName, String currentUrl)
      Returns the URL for coverage results of the selected build. Based on the current URL, the new URL will be composed by replacing the current build number with the selected build number.
      Parameter:
      selectedBuildDisplayName - the selected build to open the new results for
      currentUrl - the absolute URL to this details view results
      Gibt zurück:
      the URL to the results or an empty string if the results are not available
    • getSourceCode

      @JavaScriptMethod public String getSourceCode(String fileHash, String tableId)
      Gets the source code of the file which is represented by the passed hash code. The coverage of the source code is highlighted by using HTML. Depending on the passed table ID, the source code is returned filtered with only the relevant lines of code.
      Parameter:
      fileHash - The hash code of the requested file
      tableId - The ID of the source file table
      Gibt zurück:
      the highlighted source code
    • hasSourceCode

      @JavaScriptMethod public boolean hasSourceCode()
      Checks whether source files are stored.
      Gibt zurück:
      true when source files are stored, false otherwise
      Seit:
      3.0.0
    • hasChangeCoverage

      public boolean hasChangeCoverage()
      Checks whether change coverage exists.
      Gibt zurück:
      true whether change coverage exists, else false
    • hasIndirectCoverageChanges

      public boolean hasIndirectCoverageChanges()
      Checks whether indirect coverage changes exist.
      Gibt zurück:
      true whether indirect coverage changes exist, else false
    • isSourceFileAvailable

      public boolean isSourceFileAvailable(CoverageNode coverageNode)
      Returns whether the source file is available in Jenkins build folder.
      Parameter:
      coverageNode - The CoverageNode which is checked if there is a source file available
      Gibt zurück:
      true if the source file is available, false otherwise
    • isSourceFileInOldFormatAvailable

      public boolean isSourceFileInOldFormatAvailable(CoverageNode coverageNode)
      Returns whether the source file is available in Jenkins build folder in the old format of the plugin versions less than 2.1.0.
      Parameter:
      coverageNode - The CoverageNode which is checked if there is a source file available
      Gibt zurück:
      true if the source file is available, false otherwise
    • getFileForBuildsWithOldVersion

      public static File getFileForBuildsWithOldVersion(File buildFolder, String fileName)
      Returns a file to the sources in release in the old format of the plugin versions less than 2.1.0.
      Parameter:
      buildFolder - top-level folder of the build results
      fileName - base filename of the coverage node
      Gibt zurück:
      the file
    • isSourceFileInNewFormatAvailable

      public boolean isSourceFileInNewFormatAvailable(CoverageNode coverageNode)
      Returns whether the source file is available in Jenkins build folder in the new format of the plugin versions greater or equal than 2.1.0.
      Parameter:
      coverageNode - The CoverageNode which is checked if there is a source file available
      Gibt zurück:
      true if the source file is available, false otherwise
    • getDynamic

      @CheckForNull public SourceViewModel getDynamic(String link, org.kohsuke.stapler.StaplerRequest request, org.kohsuke.stapler.StaplerResponse response)
      Returns a new sub-page for the selected link.
      Parameter:
      link - the link to identify the sub-page to show
      request - Stapler request
      response - Stapler response
      Gibt zurück:
      the new sub-page