# 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 final String`
  `INHERITED`

- ## Constructor Summary

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

- ## Method Summary

  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 Object

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

- ## Field Details

  - ### INHERITED

    public static final String INHERITED
    See Also:
      - Constant Field Values

- ## Constructor Details

  - ### Module

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

- ## Method Details

  - ### 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

    public Set<Path> getResourceFolders()
    The directories containing resources. Must not be null.
    Since:
      4.7

  - ### setResourceFolders

    public void setResourceFolders(Set<Path> resourceFolders)
    Sets the directories containing resources.
    Since:
      4.7

  - ### getTestResourceFolders

    public Set<Path> getTestResourceFolders()
    The directories containing test resources. Must not be null.
    Since:
      4.7

  - ### setTestResourceFolders

    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`