org.gradle.plugins.ide.eclipse.model

## Class Project

- java.lang.Object
- - org.gradle.plugins.ide.internal.generator.AbstractPersistableConfigurationObject
  - - org.gradle.plugins.ide.internal.generator.XmlPersistableConfigurationObject
    - - org.gradle.plugins.ide.eclipse.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 eclipse project file. (via XML hooks everything is customizable).

- - ### Field Summary

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

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Project(org.gradle.internal.xml.XmlTransformer xmlTransformer)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `Object` | `configure(EclipseProject eclipseProject)`
    `boolean` | `equals(Object o)`
    `List<BuildCommand>` | `getBuildCommands()` The build commands to be added to this Eclipse project.
    `String` | `getComment()` A comment used for the eclipse project
    `protected String` | `getDefaultResourceName()`
    `Set<Link>` | `getLinkedResources()` The linkedResources to be added to this Eclipse project.
    `String` | `getName()` The name used for the name of the eclipse project
    `List<String>` | `getNatures()` The natures to be added to this Eclipse project.
    `Set<String>` | `getReferencedProjects()` The referenced projects of this Eclipse project.
    `Set<ResourceFilter>` | `getResourceFilters()`
    `int` | `hashCode()`
    `protected void` | `load(Node xml)`
    `void` | `setBuildCommands(List<BuildCommand> buildCommands)`
    `void` | `setComment(String comment)`
    `void` | `setLinkedResources(Set<Link> linkedResources)`
    `void` | `setName(String name)`
    `void` | `setNatures(List<String> natures)`
    `void` | `setReferencedProjects(Set<String> referencedProjects)`
    `void` | `setResourceFilters(Set<ResourceFilter> resourceFilters)`
    `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

    - #### PROJECT_FILE_NAME

          public static final String PROJECT_FILE_NAME

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### Project

          public Project(org.gradle.internal.xml.XmlTransformer xmlTransformer)

  - ### Method Detail

    - #### getDefaultResourceName

          protected String getDefaultResourceName()

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

    - #### getName

          public String getName()

      The name used for the name of the eclipse project

    - #### setName

          public void setName(String name)

    - #### getComment

          public String getComment()

      A comment used for the eclipse project

    - #### setComment

          public void setComment(String comment)

    - #### getReferencedProjects

          public Set<String> getReferencedProjects()

      The referenced projects of this Eclipse project.

    - #### setReferencedProjects

          public void setReferencedProjects(Set<String> referencedProjects)

    - #### getNatures

          public List<String> getNatures()

      The natures to be added to this Eclipse project.

    - #### setNatures

          public void setNatures(List<String> natures)

    - #### getBuildCommands

          public List<BuildCommand> getBuildCommands()

      The build commands to be added to this Eclipse project.

    - #### setBuildCommands

          public void setBuildCommands(List<BuildCommand> buildCommands)

    - #### getLinkedResources

          public Set<Link> getLinkedResources()

      The linkedResources to be added to this Eclipse project.

    - #### setLinkedResources

          public void setLinkedResources(Set<Link> linkedResources)

    - #### getResourceFilters

          @Incubating
          public Set<ResourceFilter> getResourceFilters()

    - #### setResourceFilters

          @Incubating
          public void setResourceFilters(Set<ResourceFilter> resourceFilters)

    - #### configure

          public Object configure(EclipseProject eclipseProject)

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

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`