Class XSpecTask

java.lang.Object
org.gradle.api.internal.AbstractTask
org.gradle.api.DefaultTask
org.gradle.api.internal.ConventionTask
org.gradle.api.tasks.SourceTask
name.jurgenei.gradle.xml.AbstractXmlTransformTask
name.jurgenei.gradle.xml.XSpecTask
All Implemented Interfaces:
Comparable<org.gradle.api.Task>, org.gradle.api.internal.DynamicObjectAware, org.gradle.api.internal.IConventionAware, org.gradle.api.internal.TaskInternal, org.gradle.api.Named, org.gradle.api.plugins.ExtensionAware, org.gradle.api.Task, org.gradle.api.tasks.util.PatternFilterable, org.gradle.util.Configurable<org.gradle.api.Task>

@DisableCachingByDefault(because="Execution depends on external XSpec files and runtime stylesheet resources") public abstract class XSpecTask extends AbstractXmlTransformTask
Executes XSpec runners and writes XML + JUnit reports.
  • Nested Class Summary

    Nested classes/interfaces inherited from class name.jurgenei.gradle.xml.AbstractXmlTransformTask

    AbstractXmlTransformTask.JsonMode

    Nested classes/interfaces inherited from interface org.gradle.api.Named

    org.gradle.api.Named.Namer
  • Field Summary

    Fields inherited from interface org.gradle.api.Task

    TASK_ACTION, TASK_CONSTRUCTOR_ARGS, TASK_DEPENDS_ON, TASK_DESCRIPTION, TASK_GROUP, TASK_NAME, TASK_OVERWRITE, TASK_TYPE
  • Constructor Summary

    Constructors
    Constructor
    Description
    Creates task with XSpec report defaults.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Sets custom compiler stylesheet in Gradle DSL-friendly form.
    abstract org.gradle.api.file.RegularFileProperty
    Optional override for XSpec compiler stylesheet used when input is .xspec.
    abstract org.gradle.api.file.DirectoryProperty
    Destination directory for generated JUnit XML reports.
    abstract org.gradle.api.file.RegularFileProperty
    Optional override for JUnit reporter stylesheet.
    abstract org.gradle.api.provider.Property<String>
    Optional suite name exposed to future report customizations.
    void
    Sets custom XSpec JUnit reporter stylesheet.
    protected long
    Returns the newest timestamp of any file dependency that influences a transformation.
    protected void
    transform(File inputFile, File outputFile, Map<String,String> params)
    Executes one transformation from input file to output file.

    Methods inherited from class org.gradle.api.tasks.SourceTask

    exclude, exclude, exclude, exclude, getExcludes, getIncludes, getPatternSet, getPatternSetFactory, include, include, include, include, setExcludes, setIncludes, setSource, setSource, source

    Methods inherited from class org.gradle.api.internal.ConventionTask

    conventionMapping, conventionMapping, getConventionMapping

    Methods inherited from class org.gradle.api.DefaultTask

    compareTo, configure, dependsOn, doFirst, doFirst, doFirst, doLast, doLast, doLast, finalizedBy, getActions, getAnt, getDependsOn, getDescription, getDestroyables, getDidWork, getEnabled, getExtensions, getFinalizedBy, getGroup, getInputs, getLocalState, getLogger, getLogging, getMustRunAfter, getName, getOutputs, getPath, getProject, getShouldRunAfter, getState, getTaskDependencies, getTemporaryDir, getTimeout, hasProperty, mustRunAfter, onlyIf, onlyIf, onlyIf, property, setActions, setDependsOn, setDescription, setDidWork, setEnabled, setFinalizedBy, setGroup, setMustRunAfter, setOnlyIf, setOnlyIf, setOnlyIf, setProperty, setShouldRunAfter, shouldRunAfter, usesService

    Methods inherited from class org.gradle.api.internal.AbstractTask

    acceptServiceReferences, appendParallelSafeAction, doNotTrackState, doNotTrackStateIf, getAsDynamicObject, getIdentityPath, getImpliesSubProjects, getLifecycleDependencies, getLoggingManager, getOnlyIf, getReasonNotToTrackState, getReasonsNotToTrackState, getReasonTaskIsIncompatibleWithConfigurationCache, getRequiredServices, getServices, getSharedResources, getStandardOutputCapture, getTaskActions, getTaskIdentity, getTemporaryDirFactory, hasTaskActions, injectIntoNewInstance, isCompatibleWithConfigurationCache, isEnabled, isHasCustomActions, notCompatibleWithConfigurationCache, prependParallelSafeAction, restoreOnlyIf, restoreTaskActions, setImpliesSubProjects

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.gradle.api.Task

    doNotTrackState, notCompatibleWithConfigurationCache
  • Constructor Details

    • XSpecTask

      public XSpecTask()
      Creates task with XSpec report defaults.
  • Method Details

    • getCompilerStylesheet

      @Optional @InputFile @PathSensitive(RELATIVE) public abstract org.gradle.api.file.RegularFileProperty getCompilerStylesheet()
      Optional override for XSpec compiler stylesheet used when input is .xspec.
      Returns:
      compiler stylesheet property
    • getJunitReporterStylesheet

      @Optional @InputFile @PathSensitive(RELATIVE) public abstract org.gradle.api.file.RegularFileProperty getJunitReporterStylesheet()
      Optional override for JUnit reporter stylesheet.
      Returns:
      reporter stylesheet property
    • getJunitOutputDir

      @OutputDirectory public abstract org.gradle.api.file.DirectoryProperty getJunitOutputDir()
      Destination directory for generated JUnit XML reports.
      Returns:
      JUnit output directory property
    • getJunitSuiteName

      @Optional @Input public abstract org.gradle.api.provider.Property<String> getJunitSuiteName()
      Optional suite name exposed to future report customizations.
      Returns:
      suite name property
    • compilerStylesheet

      public void compilerStylesheet(Object path)
      Sets custom compiler stylesheet in Gradle DSL-friendly form.
      Parameters:
      path - file notation supported by Project.file
    • junitReporterStylesheet

      public void junitReporterStylesheet(Object path)
      Sets custom XSpec JUnit reporter stylesheet.
      Parameters:
      path - file notation supported by Project.file
    • transform

      protected void transform(File inputFile, File outputFile, Map<String,String> params) throws Exception
      Description copied from class: AbstractXmlTransformTask
      Executes one transformation from input file to output file.
      Specified by:
      transform in class AbstractXmlTransformTask
      Parameters:
      inputFile - source XML document
      outputFile - destination file
      params - immutable task parameter view
      Throws:
      Exception - any transform exception raised by the engine implementation
    • latestDependencyTimestamp

      protected long latestDependencyTimestamp(File inputFile)
      Description copied from class: AbstractXmlTransformTask
      Returns the newest timestamp of any file dependency that influences a transformation.

      By default this is the source file timestamp. Subclasses should override to include additional inputs such as stylesheets or query files.

      Overrides:
      latestDependencyTimestamp in class AbstractXmlTransformTask
      Parameters:
      inputFile - source XML document
      Returns:
      newest dependency timestamp in epoch milliseconds