# GeneratorTask

@DisableCachingByDefault(because = "Abstract super-class, not to be instantiated directly")
abstract class GeneratorTask<T> : ConventionTask(source)

A `GeneratorTask` generates a configuration file based on a domain object of type T. When executed the task:

- loads the object from the input file, if it exists.
- Calls the beforeConfigured actions, passing the object to each action.
- Configures the object in some task-specific way.
- Calls the afterConfigured actions, passing the object to each action.
- writes the object to the output file.

#### Parameters

<T>

The domain object for the configuration file.

#### Inheritors

PropertyListGeneratorTask
XmlGeneratorTask
PropertiesGeneratorTask
GenerateSolutionFileTask

## Constructors

GeneratorTask
Link copied to clipboard
constructor()

## Properties

conventionMapping
Link copied to clipboard
open val conventionMapping: ConventionMapping
description
Link copied to clipboard
open var description: String
enabled
Link copied to clipboard
open var enabled: Boolean
extra
Link copied to clipboard
val ExtensionAware.extra: ExtraPropertiesExtension

The extra properties extension in this object's extension container.

group
Link copied to clipboard
open var group: String
impliesSubProjects
Link copied to clipboard
open var impliesSubProjects: Boolean
inputFile
Link copied to clipboard
@get:Internal(value = "Covered by inputFileIfExists")
open var inputFile: File
outputFile
Link copied to clipboard
@get:OutputFile
open var outputFile: File
state
Link copied to clipboard
val state: TaskStateInternal
TASK_ACTION
Link copied to clipboard
val TASK_ACTION: String = "action"
TASK_CONSTRUCTOR_ARGS
Link copied to clipboard
val TASK_CONSTRUCTOR_ARGS: String = "constructorArgs"
TASK_DEPENDS_ON
Link copied to clipboard
val TASK_DEPENDS_ON: String = "dependsOn"
TASK_DESCRIPTION
Link copied to clipboard
val TASK_DESCRIPTION: String = "description"
TASK_GROUP
Link copied to clipboard
val TASK_GROUP: String = "group"
TASK_NAME
Link copied to clipboard
val TASK_NAME: String = "name"
TASK_OVERWRITE
Link copied to clipboard
val TASK_OVERWRITE: String = "overwrite"
TASK_TYPE
Link copied to clipboard
val TASK_TYPE: String = "type"
timeout
Link copied to clipboard
val timeout: Property<Duration>

## Functions

acceptServiceReferences
Link copied to clipboard
open fun acceptServiceReferences(serviceReferences: Set<ServiceReferenceSpec>)
appendParallelSafeAction
Link copied to clipboard
open fun appendParallelSafeAction(action: Action<in Task>)
compareTo
Link copied to clipboard
open fun compareTo(otherTask: Task): Int
configure
Link copied to clipboard
open fun configure(closure: Closure): Task
abstract fun configure(cl: Closure): T
configure
Link copied to clipboard
inline fun <T : Any> ExtensionAware.configure(noinline configuration: T.() -> Unit)

Executes the given configuration block against the extension of the specified type.

conventionMapping
Link copied to clipboard
open fun conventionMapping(property: String, mapping: Callable<out Any>): Task
dependsOn
Link copied to clipboard
open fun dependsOn(paths: Array<Any>): Task
doFirst
Link copied to clipboard
open fun doFirst(action: Action<in Task>): Task
doLast
Link copied to clipboard
open fun doLast(action: Action<in Task>): Task
doNotTrackState
Link copied to clipboard
open fun doNotTrackState(reasonNotToTrackState: String)
finalizedBy
Link copied to clipboard
open fun finalizedBy(paths: Array<Any>): Task
getActions
Link copied to clipboard
open fun getActions(): List<Action<in Task>>
getAnt
Link copied to clipboard
open fun getAnt(): AntBuilder
getAsDynamicObject
Link copied to clipboard
open fun getAsDynamicObject(): DynamicObject
getConvention
Link copied to clipboard
open fun getConvention(): Convention
getDependsOn
Link copied to clipboard
open fun getDependsOn(): Set<Any>
getDestroyables
Link copied to clipboard
open fun getDestroyables(): TaskDestroyables
getDidWork
Link copied to clipboard
open fun getDidWork(): Boolean
getExtensions
Link copied to clipboard
open fun getExtensions(): ExtensionContainer
getFinalizedBy
Link copied to clipboard
open fun getFinalizedBy(): TaskDependency
getIdentityPath
Link copied to clipboard
open fun getIdentityPath(): Path
getInputs
Link copied to clipboard
open fun getInputs(): TaskInputsInternal
abstract fun getInputs(): TaskInputs
getLifecycleDependencies
Link copied to clipboard
open fun getLifecycleDependencies(): TaskDependencyInternal
abstract fun getLifecycleDependencies(): TaskDependency
getLocalState
Link copied to clipboard
open fun getLocalState(): TaskLocalState
getLogger
Link copied to clipboard
open fun getLogger(): Logger
getLogging
Link copied to clipboard
open fun getLogging(): LoggingManager
getMustRunAfter
Link copied to clipboard
open fun getMustRunAfter(): TaskDependency
getName
Link copied to clipboard
open fun getName(): String
getOnlyIf
Link copied to clipboard
open fun getOnlyIf(): Spec<in TaskInternal>
getOutputs
Link copied to clipboard
open fun getOutputs(): TaskOutputsInternal
abstract fun getOutputs(): TaskOutputs
getPath
Link copied to clipboard
open fun getPath(): String
getProject
Link copied to clipboard
open fun getProject(): Project
getReasonNotToTrackState
Link copied to clipboard
open fun getReasonNotToTrackState(): Optional<String>
getReasonTaskIsIncompatibleWithConfigurationCache
Link copied to clipboard
open fun getReasonTaskIsIncompatibleWithConfigurationCache(): Optional<String>
getRequiredServices
Link copied to clipboard
open fun getRequiredServices(): TaskRequiredServices
getSharedResources
Link copied to clipboard
open fun getSharedResources(): List<ResourceLock>
abstract fun getSharedResources(): List<out ResourceLock>
getShouldRunAfter
Link copied to clipboard
open fun getShouldRunAfter(): TaskDependency
getStandardOutputCapture
Link copied to clipboard
open fun getStandardOutputCapture(): StandardOutputCapture
getState
Link copied to clipboard
abstract fun getState(): TaskState
getTaskActions
Link copied to clipboard
open fun getTaskActions(): List<InputChangesAwareTaskAction>
getTaskDependencies
Link copied to clipboard
open fun getTaskDependencies(): TaskDependencyInternal
abstract fun getTaskDependencies(): TaskDependency
getTaskIdentity
Link copied to clipboard
open fun getTaskIdentity(): TaskIdentity<out Any>
getTemporaryDir
Link copied to clipboard
open fun getTemporaryDir(): File
getTemporaryDirFactory
Link copied to clipboard
open fun getTemporaryDirFactory(): Factory<File>
hasProperty
Link copied to clipboard
open fun hasProperty(propertyName: String): Boolean
hasTaskActions
Link copied to clipboard
open fun hasTaskActions(): Boolean
injectIntoNewInstance
Link copied to clipboard
open fun <T : Task?> injectIntoNewInstance(project: ProjectInternal, identity: TaskIdentity<T>, factory: Callable<T>): T
isCompatibleWithConfigurationCache
Link copied to clipboard
open fun isCompatibleWithConfigurationCache(): Boolean
isEnabled
Link copied to clipboard
open fun isEnabled(): Boolean
isHasCustomActions
Link copied to clipboard
open fun isHasCustomActions(): Boolean
mustRunAfter
Link copied to clipboard
open fun mustRunAfter(paths: Array<Any>): Task
notCompatibleWithConfigurationCache
Link copied to clipboard
open fun notCompatibleWithConfigurationCache(reason: String)
onlyIf
Link copied to clipboard
open fun onlyIf(spec: Spec<in Task>)
prependParallelSafeAction
Link copied to clipboard
open fun prependParallelSafeAction(action: Action<in Task>)
property
Link copied to clipboard
open fun property(propertyName: String): Any
setActions
Link copied to clipboard
open fun setActions(replacements: List<Action<in Task>>)
setDependsOn
Link copied to clipboard
open fun setDependsOn(dependsOn: Iterable<out Any>)
setDidWork
Link copied to clipboard
open fun setDidWork(didWork: Boolean)
setFinalizedBy
Link copied to clipboard
open fun setFinalizedBy(finalizedByTasks: Iterable<out Any>)
setMustRunAfter
Link copied to clipboard
open fun setMustRunAfter(mustRunAfterTasks: Iterable<out Any>)
setOnlyIf
Link copied to clipboard
open fun setOnlyIf(spec: Spec<in Task>)
setProperty
Link copied to clipboard
open fun setProperty(name: String, value: Any)
setShouldRunAfter
Link copied to clipboard
open fun setShouldRunAfter(shouldRunAfterTasks: Iterable<out Any>)
shouldRunAfter
Link copied to clipboard
open fun shouldRunAfter(paths: Array<Any>): TaskDependency
the
Link copied to clipboard
inline fun <T : Any> ExtensionAware.the(): T

Returns the extension of the specified type.

fun <T : Any> ExtensionAware.the(extensionType: KClass<T>): T

Returns the extension of the specified extensionType.

usesService
Link copied to clipboard
open fun usesService(service: Provider<out BuildService<out Any>>)