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

## Class Module

- java.lang.Object
- - org.gradle.plugins.ide.internal.generator.AbstractPersistableConfigurationObject
  - - org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject
    - - org.gradle.plugins.ide.idea.model.Module

- All Implemented Interfaces:
    `org.gradle.plugins.ide.internal.generator.generator.PersistableConfigurationObject`

      public class Module
      extends org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject

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

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static String` | `INHERITED` |

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `Module​(org.gradle.internal.xml.XmlTransformer withXmlActions, PathFactory pathFactory)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected Object` | `configure​(Path contentPath, Set<Path> sourceFolders, Set<Path> testSourceFolders, Set<Path> resourceFolders, Set<Path> testResourceFolders, Set<Path> generatedSourceFolders, Set<Path> excludeFolders, Boolean inheritOutputDirs, Path outputDir, Path testOutputDir, Set<Dependency> dependencies, String jdkName, String languageLevel)` |
    `boolean` | `equals​(Object o)` |
    `Path` | `getContentPath()` | The directory for the content root of the module.
    `protected String` | `getDefaultResourceName()` |
    `Set<Dependency>` | `getDependencies()` | The dependencies of this module.
    `Set<Path>` | `getExcludeFolders()` | The directories to be excluded.
    `Set<Path>` | `getGeneratedSourceFolders()` | The directories containing generated the production sources.
    `String` | `getJdkName()` |
    `Path` | `getOutputDir()` | The output directory for production classes.
    `Set<Path>` | `getResourceFolders()` | The directories containing resources.
    `Set<Path>` | `getSourceFolders()` | The directories containing the production sources.
    `Path` | `getTestOutputDir()` | The output directory for test classes.
    `Set<Path>` | `getTestResourceFolders()` | The directories containing test resources.
    `Set<Path>` | `getTestSourceFolders()` | The directories containing the test sources.
    `int` | `hashCode()` |
    `protected boolean` | `isDependencyOrderEntry​(Object orderEntry)` |
    `boolean` | `isInheritOutputDirs()` | If true, output directories for this module will be located below the output directory for the project; otherwise, `outputDir` and `testOutputDir` will take effect.
    `protected void` | `load​(Node xml)` |
    `void` | `setContentPath​(Path contentPath)` |
    `void` | `setDependencies​(Set<Dependency> dependencies)` |
    `void` | `setExcludeFolders​(Set<Path> excludeFolders)` |
    `void` | `setGeneratedSourceFolders​(Set<Path> generatedSourceFolders)` |
    `void` | `setInheritOutputDirs​(boolean inheritOutputDirs)` |
    `void` | `setJdkName​(String jdkName)` |
    `void` | `setOutputDir​(Path outputDir)` |
    `void` | `setResourceFolders​(Set<Path> resourceFolders)` | Sets the directories containing resources.
    `void` | `setSourceFolders​(Set<Path> sourceFolders)` |
    `void` | `setTestOutputDir​(Path testOutputDir)` |
    `void` | `setTestResourceFolders​(Set<Path> testResourceFolders)` | Sets the directories containing test resources.
    `void` | `setTestSourceFolders​(Set<Path> testSourceFolders)` |
    `protected void` | `store​(Node xml)` |
    `String` | `toString()` |

    - ### Methods inherited from class org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject

      `findFirstChildNamed, findFirstChildWithAttributeValue, findFirstWithAttributeValue, findOrCreateFirstChildNamed, findOrCreateFirstChildWithAttributeValue, getChildren, getXml, load, store, transformAction, transformAction`

    - ### Methods inherited from class org.gradle.plugins.ide.internal.generator.AbstractPersistableConfigurationObject

      `load, loadDefaults, store`

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

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

- - ### Field Detail

    - #### INHERITED

          public static final String INHERITED

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### Module

          public Module​(org.gradle.internal.xml.XmlTransformer withXmlActions,
                        PathFactory pathFactory)

  - ### Method Detail

    - #### getContentPath

          public Path getContentPath()

      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.

    - #### setContentPath

          public void setContentPath​(Path contentPath)

    - #### getSourceFolders

          public Set<Path> getSourceFolders()

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

    - #### setSourceFolders

          public void setSourceFolders​(Set<Path> sourceFolders)

    - #### getTestSourceFolders

          public Set<Path> getTestSourceFolders()

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

    - #### setTestSourceFolders

          public void setTestSourceFolders​(Set<Path> testSourceFolders)

    - #### getResourceFolders

          @Incubating
          public Set<Path> getResourceFolders()

      The directories containing resources. Must not be null.
      Since:
        4.7

    - #### setResourceFolders

          @Incubating
          public void setResourceFolders​(Set<Path> resourceFolders)

      Sets the directories containing resources.
      Since:
        4.7

    - #### getTestResourceFolders

          @Incubating
          public Set<Path> getTestResourceFolders()

      The directories containing test resources. Must not be null.
      Since:
        4.7

    - #### setTestResourceFolders

          @Incubating
          public void setTestResourceFolders​(Set<Path> testResourceFolders)

      Sets the directories containing test resources.
      Since:
        4.7

    - #### getGeneratedSourceFolders

          public Set<Path> getGeneratedSourceFolders()

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

    - #### setGeneratedSourceFolders

          public void setGeneratedSourceFolders​(Set<Path> generatedSourceFolders)

    - #### getExcludeFolders

          public Set<Path> getExcludeFolders()

      The directories to be excluded. Must not be null.

    - #### setExcludeFolders

          public void setExcludeFolders​(Set<Path> excludeFolders)

    - #### isInheritOutputDirs

          public boolean isInheritOutputDirs()

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

    - #### setInheritOutputDirs

          public void setInheritOutputDirs​(boolean inheritOutputDirs)

    - #### getOutputDir

          public Path getOutputDir()

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

    - #### setOutputDir

          public void setOutputDir​(Path outputDir)

    - #### getTestOutputDir

          public Path getTestOutputDir()

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

    - #### setTestOutputDir

          public void setTestOutputDir​(Path testOutputDir)

    - #### getDependencies

          public Set<Dependency> getDependencies()

      The dependencies of this module. Must not be null.

    - #### setDependencies

          public void setDependencies​(Set<Dependency> dependencies)

    - #### getJdkName

          public String getJdkName()

    - #### setJdkName

          public void setJdkName​(String jdkName)

    - #### getDefaultResourceName

          protected String getDefaultResourceName()

      Specified by:
        `getDefaultResourceName` in class `org.gradle.plugins.ide.internal.generator.AbstractPersistableConfigurationObject`

    - #### configure

          protected Object configure​(Path contentPath,
                                     Set<Path> sourceFolders,
                                     Set<Path> testSourceFolders,
                                     Set<Path> resourceFolders,
                                     Set<Path> testResourceFolders,
                                     Set<Path> generatedSourceFolders,
                                     Set<Path> excludeFolders,
                                     Boolean inheritOutputDirs,
                                     Path outputDir,
                                     Path testOutputDir,
                                     Set<Dependency> dependencies,
                                     String jdkName,
                                     String languageLevel)

    - #### load

          protected void load​(Node xml)

      Overrides:
        `load` in class `org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject`

    - #### store

          protected void store​(Node xml)

      Overrides:
        `store` in class `org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject`

    - #### isDependencyOrderEntry

          protected boolean isDependencyOrderEntry​(Object orderEntry)

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`

    - #### equals

          public boolean equals​(Object o)

      Overrides:
        `equals` in class `Object`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `Object`