Package: org.gradle.plugins.ide.idea.model

## [Groovy] Class Module

- org.gradle.plugins.ide.idea.model.Module

- Represents the customizable elements of an iml (via XML hooks everything of the iml is customizable).

- - Inherited fields
    Fields inherited from class | Fields
    --- | ---
    `class org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject` | `__$stMC, __$stMC`
    `class org.gradle.plugins.ide.internal.generator.AbstractPersistableConfigurationObject` | `__$stMC`

  - ### Properties Summary

    Properties
    Type | Name and description
    --- | ---
    `static String` | `INHERITED`
    `Path` | `contentPath` The directory for the content root of the module.
    `Set<Dependency>` | `dependencies` The dependencies of this module.
    `Set<Path>` | `excludeFolders` The directories to be excluded.
    `Set<Path>` | `generatedSourceFolders` The directories containing generated the production sources.
    `boolean` | `inheritOutputDirs` If true, output directories for this module will be located below the output directory for the project; otherwise, outputDir and testOutputDir will take effect.
    `String` | `jdkName`
    `Path` | `outputDir` The output directory for production classes.
    `Set<Path>` | `sourceFolders` The directories containing the production sources.
    `Path` | `testOutputDir` The output directory for test classes.
    `Set<Path>` | `testSourceFolders` The directories containing the test sources.

  - ### Constructor Summary

    Constructors
    Constructor and description
    `Module (org.gradle.internal.xml.XmlTransformer withXmlActions, PathFactory pathFactory)`

  - ### Methods Summary

    Methods
    Type | Name and description
    --- | ---
    `protected def` | `configure(Path contentPath, Set sourceFolders, Set testSourceFolders, Set generatedSourceFolders, Set excludeFolders, Boolean inheritOutputDirs, Path outputDir, Path testOutputDir, Set dependencies, String jdkName, String languageLevel)`
    `boolean` | `equals(def o)`
    `protected String` | `getDefaultResourceName()`
    `int` | `hashCode()`
    `protected boolean` | `isDependencyOrderEntry(def orderEntry)`
    `protected void` | `load(groovy.util.Node xml)`
    `protected void` | `store(groovy.util.Node xml)`
    `String` | `toString()`
    `def` | `writeSourceLanguageLevel()`

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject` | `org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject#load(java.io.InputStream), org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject#store(java.io.OutputStream), org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject#super$2$$getStaticMetaClass(), org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject#getXml(), org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject#transformAction(groovy.lang.Closure), org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject#setProperty(java.lang.String, java.lang.Object), org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject#getProperty(java.lang.String), org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject#load(java.io.File), org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject#store(java.io.File), org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject#invokeMethod(java.lang.String, java.lang.Object), org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject#getMetaClass(), org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject#setMetaClass(groovy.lang.MetaClass), org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject#loadDefaults(), org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject#wait(long, int), org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject#wait(long), org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject#wait(), org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject#equals(java.lang.Object), org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject#toString(), org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject#hashCode(), org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject#getClass(), org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject#notify(), org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject#notifyAll()`
    `class org.gradle.plugins.ide.internal.generator.AbstractPersistableConfigurationObject` | `org.gradle.plugins.ide.internal.generator.AbstractPersistableConfigurationObject#setProperty(java.lang.String, java.lang.Object), org.gradle.plugins.ide.internal.generator.AbstractPersistableConfigurationObject#getProperty(java.lang.String), org.gradle.plugins.ide.internal.generator.AbstractPersistableConfigurationObject#load(java.io.InputStream), org.gradle.plugins.ide.internal.generator.AbstractPersistableConfigurationObject#load(java.io.File), org.gradle.plugins.ide.internal.generator.AbstractPersistableConfigurationObject#store(java.io.OutputStream), org.gradle.plugins.ide.internal.generator.AbstractPersistableConfigurationObject#store(java.io.File), org.gradle.plugins.ide.internal.generator.AbstractPersistableConfigurationObject#invokeMethod(java.lang.String, java.lang.Object), org.gradle.plugins.ide.internal.generator.AbstractPersistableConfigurationObject#getMetaClass(), org.gradle.plugins.ide.internal.generator.AbstractPersistableConfigurationObject#setMetaClass(groovy.lang.MetaClass), org.gradle.plugins.ide.internal.generator.AbstractPersistableConfigurationObject#loadDefaults(), org.gradle.plugins.ide.internal.generator.AbstractPersistableConfigurationObject#wait(long, int), org.gradle.plugins.ide.internal.generator.AbstractPersistableConfigurationObject#wait(long), org.gradle.plugins.ide.internal.generator.AbstractPersistableConfigurationObject#wait(), org.gradle.plugins.ide.internal.generator.AbstractPersistableConfigurationObject#equals(java.lang.Object), org.gradle.plugins.ide.internal.generator.AbstractPersistableConfigurationObject#toString(), org.gradle.plugins.ide.internal.generator.AbstractPersistableConfigurationObject#hashCode(), org.gradle.plugins.ide.internal.generator.AbstractPersistableConfigurationObject#getClass(), org.gradle.plugins.ide.internal.generator.AbstractPersistableConfigurationObject#notify(), org.gradle.plugins.ide.internal.generator.AbstractPersistableConfigurationObject#notifyAll()`

- - ### Property Detail

    - #### static final String INHERITED

    - #### Path contentPath

      The directory for the content root of the module. Defaults to the project directory. If null, the directory containing the output file will be used.

    - #### Set<Dependency> dependencies

      The dependencies of this module. Must not be null.

    - #### Set<Path> excludeFolders

      The directories to be excluded. Must not be null.

    - #### Set<Path> generatedSourceFolders

      The directories containing generated the production sources. Must not be null.

    - #### boolean inheritOutputDirs

      If true, output directories for this module will be located below the output directory for the project; otherwise, outputDir and testOutputDir will take effect.

    - #### String jdkName

    - #### Path outputDir

      The output directory for production classes. If `null`, no entry will be created.

    - #### Set<Path> sourceFolders

      The directories containing the production sources. Must not be null.

    - #### Path testOutputDir

      The output directory for test classes. If `null`, no entry will be created.

    - #### Set<Path> testSourceFolders

      The directories containing the test sources. Must not be null.

  - ### Constructor Detail

    - #### Module(org.gradle.internal.xml.XmlTransformer withXmlActions, PathFactory pathFactory)

  - ### Method Detail

    - #### protected def configure(Path contentPath, Set sourceFolders, Set testSourceFolders, Set generatedSourceFolders, Set excludeFolders, Boolean inheritOutputDirs, Path outputDir, Path testOutputDir, Set dependencies, String jdkName, String languageLevel)

    - #### boolean equals(def o)

    - #### @Override protected String getDefaultResourceName()

    - #### int hashCode()

    - #### protected boolean isDependencyOrderEntry(def orderEntry)

    - #### @Override protected void load(groovy.util.Node xml)

    - #### @Override protected void store(groovy.util.Node xml)

    - #### String toString()

    - #### def writeSourceLanguageLevel()