Package org.gradle.play.tasks

## Class TwirlCompile

- java.lang.Object
- - org.gradle.api.internal.AbstractTask
  - - org.gradle.api.DefaultTask
    - - org.gradle.api.internal.ConventionTask
      - - org.gradle.api.tasks.SourceTask
        - - org.gradle.play.tasks.TwirlCompile

- All Implemented Interfaces:
    `Comparable<Task>`, `org.gradle.api.internal.DynamicObjectAware`, `org.gradle.api.internal.IConventionAware`, `org.gradle.api.internal.TaskInternal`, `ExtensionAware`, `Task`, `PatternFilterable`, `org.gradle.util.Configurable<Task>`

      @Incubating
      public class TwirlCompile
      extends SourceTask

  Task for compiling Twirl templates into Scala code.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.gradle.api.Task

      `Task.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
    --- | ---
    `TwirlCompile()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `addUserTemplateFormat​(String extension, String templateType, String... imports)` | Adds a custom template format.
    `List<String>` | `getAdditionalImports()` | Returns the list of additional imports to add to the generated Scala code.
    `TwirlImports` | `getDefaultImports()` | Returns the default imports that will be used when compiling templates.
    `Object` | `getDependencyNotation()` |
    `BaseForkOptions` | `getForkOptions()` | fork options for the twirl compiler.
    `File` | `getOutputDirectory()` | Returns the directory to generate the parser source files into.
    `FileTree` | `getSource()` | Returns the source for this task, after the include and exclude patterns have been applied.
    `PlayToolChain` | `getToolChain()` | Returns the tool chain that will be used to compile the twirl source.
    `List<TwirlTemplateFormat>` | `getUserTemplateFormats()` | Returns the custom template formats configured for this task.
    `void` | `setAdditionalImports​(List<String> additionalImports)` | Sets the additional imports to add to all generated Scala code.
    `void` | `setDefaultImports​(TwirlImports defaultImports)` | Sets the default imports to be used when compiling templates.
    `void` | `setOutputDirectory​(File outputDirectory)` | Specifies the directory to generate the parser source files into.
    `void` | `setPlatform​(PlayPlatform platform)` |
    `void` | `setToolChain​(PlayToolChain toolChain)` | Sets the tool chain that will be used to compile the twirl source.
    `void` | `setUserTemplateFormats​(List<TwirlTemplateFormat> userTemplateFormats)` | Sets the custom template formats for this task.

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

      `exclude, exclude, exclude, exclude, getExcludes, getIncludes, 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

      `newInputDirectory, newInputFile, newOutputDirectory, newOutputFile`

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

      `appendParallelSafeAction, compareTo, configure, dependsOn, doFirst, doFirst, doFirst, doLast, doLast, doLast, finalizedBy, getActions, getAnt, getAsDynamicObject, getConvention, getDependsOn, getDescription, getDestroyables, getDidWork, getEnabled, getExtensions, getFinalizedBy, getGroup, getIdentityPath, getImpliesSubProjects, getInputs, getLocalState, getLogger, getLogging, getMustRunAfter, getName, getOnlyIf, getOutputs, getPath, getProject, getServices, getShouldRunAfter, getStandardOutputCapture, getState, getTaskActions, getTaskDependencies, getTaskIdentity, getTemporaryDir, getTemporaryDirFactory, getTimeout, hasProperty, hasTaskActions, injectIntoNewInstance, isEnabled, isHasCustomActions, mustRunAfter, onlyIf, onlyIf, prependParallelSafeAction, property, replaceLogger, setActions, setDependsOn, setDescription, setDidWork, setEnabled, setFinalizedBy, setGroup, setImpliesSubProjects, setMustRunAfter, setOnlyIf, setOnlyIf, setProperty, setShouldRunAfter, shouldRunAfter, toString`

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

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

- - ### Constructor Detail

    - #### TwirlCompile

          public TwirlCompile()

  - ### Method Detail

    - #### getSource

          @PathSensitive(RELATIVE)
          public FileTree getSource()

      Returns the source for this task, after the include and exclude patterns have been applied. Ignores source files which do not exist.

      The `PathSensitivity` for the sources is configured to be `PathSensitivity.ABSOLUTE`. If your sources are less strict, please change it accordingly by overriding this method in your subclass.

      Overrides:
        `getSource` in class `SourceTask`
      Returns:
        The source.

    - #### getForkOptions

          public BaseForkOptions getForkOptions()

      fork options for the twirl compiler.

    - #### getOutputDirectory

          @OutputDirectory
          public File getOutputDirectory()

      Returns the directory to generate the parser source files into.
      Returns:
        The output directory.

    - #### getDependencyNotation

          @Input
          public Object getDependencyNotation()

    - #### setOutputDirectory

          public void setOutputDirectory​(File outputDirectory)

      Specifies the directory to generate the parser source files into.
      Parameters:
        `outputDirectory` - The output directory. Must not be null.

    - #### getDefaultImports

          @Nullable
          @Optional
          @Input
          public TwirlImports getDefaultImports()

      Returns the default imports that will be used when compiling templates.
      Returns:
        The imports that will be used.

    - #### setDefaultImports

          public void setDefaultImports​(@Nullable
                                        TwirlImports defaultImports)

      Sets the default imports to be used when compiling templates.
      Parameters:
        `defaultImports` - The imports to be used.

    - #### setPlatform

          public void setPlatform​(PlayPlatform platform)

    - #### getToolChain

          @Inject
          public PlayToolChain getToolChain()

      Returns the tool chain that will be used to compile the twirl source.
      Returns:
        The tool chain.

    - #### setToolChain

          public void setToolChain​(PlayToolChain toolChain)

      Sets the tool chain that will be used to compile the twirl source.
      Parameters:
        `toolChain` - The tool chain.

    - #### getUserTemplateFormats

          @Input
          public List<TwirlTemplateFormat> getUserTemplateFormats()

      Returns the custom template formats configured for this task.
      Since:
        4.2

    - #### setUserTemplateFormats

          public void setUserTemplateFormats​(List<TwirlTemplateFormat> userTemplateFormats)

      Sets the custom template formats for this task.
      Since:
        4.2

    - #### addUserTemplateFormat

          public void addUserTemplateFormat​(String extension,
                                            String templateType,
                                            String... imports)

      Adds a custom template format.
      Parameters:
        `extension` - file extension this template applies to (e.g., `html`).
        `templateType` - fully-qualified type for this template format.
        `imports` - additional imports to add for the custom template format.
      Since:
        4.2

    - #### getAdditionalImports

          @Input
          public List<String> getAdditionalImports()

      Returns the list of additional imports to add to the generated Scala code.
      Since:
        4.2

    - #### setAdditionalImports

          public void setAdditionalImports​(List<String> additionalImports)

      Sets the additional imports to add to all generated Scala code.
      Parameters:
        `additionalImports` - additional imports
      Since:
        4.2