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

## Class Project

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

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

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

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

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `Project​(org.gradle.internal.xml.XmlTransformer xmlTransformer, Object pathFactory)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `addModulePath​(File moduleFile)` | Adds a module to the module paths included in the Project.
    `void` | `configure​(List<IdeaModule> modules, String jdkName, IdeaLanguageLevel languageLevel, JavaVersion bytecodeVersion, Collection<String> wildcards, Collection<ProjectLibrary> projectLibraries, String vcs)` |
    `boolean` | `equals​(Object o)` |
    `protected String` | `getDefaultResourceName()` |
    `Jdk` | `getJdk()` | Represent the jdk information of the project java sdk.
    `Set<Path>` | `getModulePaths()` | A set of `Path` instances pointing to the modules contained in the ipr.
    `Set<ProjectLibrary>` | `getProjectLibraries()` | The project-level libraries of the IDEA project.
    `String` | `getVcs()` | The vcs used by the project.
    `Set<String>` | `getWildcards()` | A set of wildcard string to be included/excluded from the resources.
    `int` | `hashCode()` |
    `protected void` | `load​(Node xml)` |
    `void` | `setJdk​(Jdk jdk)` |
    `void` | `setModulePaths​(Set<Path> modulePaths)` |
    `void` | `setProjectLibraries​(Set<ProjectLibrary> projectLibraries)` |
    `void` | `setVcs​(String vcs)` |
    `void` | `setWildcards​(Set<String> wildcards)` |
    `protected void` | `store​(Node xml)` |

    - ### 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, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### Project

          public Project​(org.gradle.internal.xml.XmlTransformer xmlTransformer,
                         Object pathFactory)

  - ### Method Detail

    - #### getModulePaths

          public Set<Path> getModulePaths()

      A set of `Path` instances pointing to the modules contained in the ipr.

    - #### setModulePaths

          public void setModulePaths​(Set<Path> modulePaths)

    - #### addModulePath

          @Incubating
          public void addModulePath​(File moduleFile)

      Adds a module to the module paths included in the Project.
      Parameters:
        `moduleFile` - path to the module's module file
      Since:
        4.0

    - #### getWildcards

          public Set<String> getWildcards()

      A set of wildcard string to be included/excluded from the resources.

    - #### setWildcards

          public void setWildcards​(Set<String> wildcards)

    - #### getJdk

          public Jdk getJdk()

      Represent the jdk information of the project java sdk.

    - #### setJdk

          public void setJdk​(Jdk jdk)

    - #### getVcs

          public String getVcs()

      The vcs used by the project.

    - #### setVcs

          public void setVcs​(String vcs)

    - #### getProjectLibraries

          public Set<ProjectLibrary> getProjectLibraries()

      The project-level libraries of the IDEA project.

    - #### setProjectLibraries

          public void setProjectLibraries​(Set<ProjectLibrary> projectLibraries)

    - #### getDefaultResourceName

          protected String getDefaultResourceName()

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

    - #### configure

          public void configure​(List<IdeaModule> modules,
                                String jdkName,
                                IdeaLanguageLevel languageLevel,
                                JavaVersion bytecodeVersion,
                                Collection<String> wildcards,
                                Collection<ProjectLibrary> projectLibraries,
                                String vcs)

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

    - #### equals

          public boolean equals​(Object o)

      Overrides:
        `equals` in class `Object`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `Object`