GenerateIdeaModule (Gradle API 5.0)
Date: 2018-11-26

Package org.gradle.plugins.ide.idea

## Class GenerateIdeaModule

- java.lang.Object
- - org.gradle.api.internal.AbstractTask
  - - org.gradle.api.DefaultTask
    - - org.gradle.api.internal.ConventionTask
      - - org.gradle.plugins.ide.api.GeneratorTask<T>
        - - org.gradle.plugins.ide.api.XmlGeneratorTask<Module>
          - - org.gradle.plugins.ide.idea.GenerateIdeaModule

-     public class GenerateIdeaModule
      extends XmlGeneratorTask<Module>

  Generates an IDEA module file. If you want to fine tune the idea configuration

  Please refer to interesting examples on idea configuration in `IdeaModule`.

  At this moment nearly all configuration is done via `IdeaModule`.

- - ### Nested Class Summary

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

      `Task.Namer`

  - ### Field Summary

    - ### Fields inherited from class org.gradle.plugins.ide.api.GeneratorTask

      `afterConfigured, beforeConfigured, domainObject, generator`

    - ### 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
    --- | ---
    `GenerateIdeaModule​()` |
    `GenerateIdeaModule​(IdeaModule module)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected void` | `configure​(Module xmlModule)` |
    `protected Module` | `create​()` |
    `IdeaModule` | `getModule​()` | The Idea module model containing the details required to generate the module file.
    `java.io.File` | `getOutputFile​()` | Configures output *.iml file.
    `org.gradle.internal.xml.XmlTransformer` | `getXmlTransformer​()` |
    `void` | `setModule​(IdeaModule module)` |
    `void` | `setOutputFile​(java.io.File newOutputFile)` | Sets the output file to write the final configuration to.

    - ### 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 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.plugins.ide.api.GeneratorTask

      `getIncremental, getInputFile, getInputFileIfExists, getInstantiator, setInputFile`

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

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

- - ### Constructor Detail

    - #### GenerateIdeaModule

          public GenerateIdeaModule​()

    - #### GenerateIdeaModule

          @Inject
          public GenerateIdeaModule​(IdeaModule module)

  - ### Method Detail

    - #### create

          protected Module create​()

      Specified by:
        `create` in class `XmlGeneratorTask<Module>`

    - #### configure

          protected void configure​(Module xmlModule)

      Specified by:
        `configure` in class `XmlGeneratorTask<Module>`

    - #### getXmlTransformer

          public org.gradle.internal.xml.XmlTransformer getXmlTransformer​()

      Overrides:
        `getXmlTransformer` in class `XmlGeneratorTask<Module>`

    - #### getOutputFile

          public java.io.File getOutputFile​()

      Configures output *.iml file. It's optional because the task should configure it correctly for you (including making sure it is unique in the multi-module build). If you really need to change the output file name it is much easier to do it via the idea.module.name property.

      Please refer to documentation in `IdeaModule` name property. In IntelliJ IDEA the module name is the same as the name of the *.iml file.

      Overrides:
        `getOutputFile` in class `GeneratorTask<Module>`
      Returns:
        The output file.

    - #### setOutputFile

          public void setOutputFile​(java.io.File newOutputFile)

      Description copied from class: `GeneratorTask`
      Sets the output file to write the final configuration to.
      Overrides:
        `setOutputFile` in class `GeneratorTask<Module>`
      Parameters:
        `newOutputFile` - The output file.

    - #### getModule

          @Internal
          public IdeaModule getModule​()

      The Idea module model containing the details required to generate the module file.

    - #### setModule

          public void setModule​(IdeaModule module)