# 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> 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>`
`getSourceFolders()`
The directories containing the production sources.
`Path`
`getTestOutputDir()`
The output directory for test classes.
`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`
`setSourceFolders(Set<Path> sourceFolders)`
`void`
`setTestOutputDir(Path testOutputDir)`
`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)

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