AggregateTransformer (Apache Ant API)
Description: declaration: package: org.apache.tools.ant.taskdefs.optional.junit, class: AggregateTransformer

Package org.apache.tools.ant.taskdefs.optional.junit

# Class AggregateTransformer

java.lang.Object
org.apache.tools.ant.taskdefs.optional.junit.AggregateTransformer

    public class AggregateTransformer
    extends java.lang.Object

Transform a JUnit xml report. The default transformation generates an html report in either framed or non-framed style. The non-framed style is convenient to have a concise report via mail, the framed report is much more convenient if you want to browse into different packages or testcases since it is a Javadoc like report.

- ## Nested Class Summary

  Nested Classes
  Modifier and Type | Class | Description
  --- | --- | ---
  `static class` | `AggregateTransformer.Format` | defines acceptable formats.

- ## Field Summary

  Fields
  Modifier and Type | Field | Description
  --- | --- | ---
  `protected static javax.xml.parsers.DocumentBuilderFactory` | `dbfactory` | XML Parser factory accessible to subclasses
  `protected org.w3c.dom.Document` | `document` | the xml document to process
  `protected java.lang.String` | `format` | the format to use for the report.
  `static java.lang.String` | `FRAMES` | name of the frames format.
  `static java.lang.String` | `NOFRAMES` | name of the no frames format.
  `protected java.io.File` | `styleDir` | the style directory.
  `protected Task` | `task` | Task
  `protected java.io.File` | `toDir` | the destination directory, this is the root from where html should be generated

- ## Constructor Summary

  Constructors
  Constructor | Description
  --- | ---
  `AggregateTransformer​(Task task)` | constructor creating the transformer from the junitreport task.

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `protected void` | `checkOptions()` | check for invalid options
  `protected void` | `configureForRedirectExtension()` | If we end up using the JDK's own TraX factory on Java 9+, then set the features and attributes necessary to allow redirect extensions to be used.
  `Path` | `createClasspath()` | Creates a classpath to be used for the internal XSLT task.
  `XSLTProcess.Factory` | `createFactory()` | Creates a factory configuration to be used for the internal XSLT task.
  `XSLTProcess.Param` | `createParam()` | Create an instance of an XSL parameter for configuration by Ant.
  `protected static javax.xml.parsers.DocumentBuilderFactory` | `getDocumentBuilderFactory()` | Get the Document Builder Factory
  `protected Resource` | `getStylesheet()` | access the stylesheet to be used as a resource.
  `protected java.lang.String` | `getStylesheetSystemId()` | Get the systemid of the appropriate stylesheet based on its name and styledir.
  `void` | `setExtension​(java.lang.String ext)` | set the extension of the output files
  `void` | `setFormat​(AggregateTransformer.Format format)` | sets the format.
  `void` | `setStyledir​(java.io.File styledir)` | set the style directory.
  `void` | `setTodir​(java.io.File todir)` | set the destination directory.
  `void` | `setXmlDocument​(org.w3c.dom.Document doc)` | sets the input document.
  `protected void` | `setXmlfile​(java.io.File xmlfile)` | Set the xml file to be processed.
  `void` | `transform()` | transformation

  ### Methods inherited from class java.lang.Object

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

- ## Field Details

  - ### FRAMES

    public static final java.lang.String FRAMES
    name of the frames format.
    See Also:
      Constant Field Values

  - ### NOFRAMES

    public static final java.lang.String NOFRAMES
    name of the no frames format.
    See Also:
      Constant Field Values

  - ### dbfactory

    protected static javax.xml.parsers.DocumentBuilderFactory dbfactory
    XML Parser factory accessible to subclasses

  - ### task

    protected Task task
    Task

  - ### document

    protected org.w3c.dom.Document document
    the xml document to process

  - ### styleDir

    protected java.io.File styleDir
    the style directory. XSLs should be read from here if necessary

  - ### toDir

    protected java.io.File toDir
    the destination directory, this is the root from where html should be generated

  - ### format

    protected java.lang.String format
    the format to use for the report. Must be `FRAMES` or `NOFRAMES`

- ## Constructor Details

  - ### AggregateTransformer

    public AggregateTransformer​(Task task)
    constructor creating the transformer from the junitreport task.
    Parameters:
      `task` - task delegating to this class

- ## Method Details

  - ### getDocumentBuilderFactory

    protected static javax.xml.parsers.DocumentBuilderFactory getDocumentBuilderFactory()
    Get the Document Builder Factory
    Returns:
      the DocumentBuilderFactory instance in use

  - ### setFormat

    public void setFormat​(AggregateTransformer.Format format)
    sets the format.
    Parameters:
      `format` - Must be `FRAMES` or `NOFRAMES`

  - ### setXmlDocument

    public void setXmlDocument​(org.w3c.dom.Document doc)
    sets the input document.
    Parameters:
      `doc` - input dom tree

  - ### setXmlfile

    protected void setXmlfile​(java.io.File xmlfile) throws BuildException
    Set the xml file to be processed. This is a helper if you want to set the file directly. Much more for testing purposes.
    Parameters:
      `xmlfile` - xml file to be processed
    Throws:
      `BuildException` - if the document cannot be parsed.

  - ### setStyledir

    public void setStyledir​(java.io.File styledir)
    set the style directory. It is optional and will override the default xsl used.
    Parameters:
      `styledir` - the directory containing the xsl files if the user would like to override with its own style.

  - ### setTodir

    public void setTodir​(java.io.File todir)
    set the destination directory.
    Parameters:
      `todir` - the destination directory

  - ### setExtension

    public void setExtension​(java.lang.String ext)
    set the extension of the output files
    Parameters:
      `ext` - extension.

  - ### createParam

    public XSLTProcess.Param createParam()
    Create an instance of an XSL parameter for configuration by Ant.
    Returns:
      an instance of the Param class to be configured.
    Since:
      Ant 1.7

  - ### createClasspath

    public Path createClasspath()
    Creates a classpath to be used for the internal XSLT task.
    Returns:
      the classpath to be configured
    Since:
      Ant 1.9.5

  - ### createFactory

    public XSLTProcess.Factory createFactory()
    Creates a factory configuration to be used for the internal XSLT task.
    Returns:
      the factory description to be configured
    Since:
      Ant 1.9.5

  - ### transform

    public void transform() throws BuildException
    transformation
    Throws:
      `BuildException` - exception if something goes wrong with the transformation.

  - ### getStylesheet

    protected Resource getStylesheet()
    access the stylesheet to be used as a resource.
    Returns:
      stylesheet as a resource

  - ### checkOptions

    protected void checkOptions() throws BuildException
    check for invalid options
    Throws:
      `BuildException` - if something goes wrong.

  - ### getStylesheetSystemId

    protected java.lang.String getStylesheetSystemId() throws java.io.IOException
    Get the systemid of the appropriate stylesheet based on its name and styledir. If no styledir is defined it will load it as a java resource in the xsl child package, otherwise it will get it from the given directory.
    Returns:
      system ID of the stylesheet.
    Throws:
      `java.io.IOException` - thrown if the requested stylesheet does not exist.

  - ### configureForRedirectExtension

    protected void configureForRedirectExtension()
    If we end up using the JDK's own TraX factory on Java 9+, then set the features and attributes necessary to allow redirect extensions to be used.
    Since:
      Ant 1.9.8