package hudson.plugins.codescanner; // NOPMD import hudson.model.AbstractBuild; import hudson.plugins.analysis.core.BuildHistory; import hudson.plugins.analysis.core.BuildResult; import hudson.plugins.analysis.core.ParserResult; import hudson.plugins.analysis.core.ResultAction; import com.thoughtworks.xstream.XStream; /** * Represents the results of the warning analysis. One instance of this class is persisted for * each build via an XML file. * * @author Maximilian Odendahl */ public class CodescannerResult extends BuildResult { /** Unique identifier of this class. */ private static final long serialVersionUID = -137460587767210579L; /** * Creates a new instance of {@link CodescannerResult}. * * @param build * the current build as owner of this action * @param defaultEncoding * the default encoding to be used when reading and parsing files * @param result * the parsed result with all annotations */ public CodescannerResult(final AbstractBuild<?, ?> build, final String defaultEncoding, final ParserResult result) { super(build, defaultEncoding, result); } /** * Creates a new instance of {@link CodescannerResult}. * * @param build * the current build as owner of this action * @param defaultEncoding * the default encoding to be used when reading and parsing files * @param result * the parsed result with all annotations * @param history * the plug-in history */ protected CodescannerResult(final AbstractBuild<?, ?> build, final String defaultEncoding, final ParserResult result, final BuildHistory history) { super(build, defaultEncoding, result, history); } /** {@inheritDoc} */ @Override protected void configure(final XStream xstream) { xstream.alias("warning", Warning.class); } /** * Returns a summary message for the summary.jelly file. * * @return the summary message */ public String getSummary() { return ResultSummary.createSummary(this); } /** {@inheritDoc} */ @Override protected String createDeltaMessage() { return ResultSummary.createDeltaMessage(this); } /** {@inheritDoc} */ @Override protected String getSerializationFileName() { return "compiler-Codescanner.xml"; } /** {@inheritDoc} */ public String getDisplayName() { return Messages.Codescanner_ProjectAction_Name(); } /** {@inheritDoc} */ @Override protected Class<? extends ResultAction<? extends BuildResult>> getResultActionType() { return CodescannerResultAction.class; } }