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

Direct Known Subclasses:
  `NonRenamableProject`

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
  Description
  `static final String`
  `PROJECT_FILE_NAME`

- ## Constructor Summary

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

- ## Method Summary

  Modifier and Type
  Method
  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()`
  The resource filters of this Eclipse project.
  `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)`
  Sets the resource filters of this Eclipse project.
  `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

  - ### PROJECT_FILE_NAME

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

- ## Constructor Details

  - ### Project

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

- ## Method Details

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

    public Set<ResourceFilter> getResourceFilters()
    The resource filters of this Eclipse project.
    Since:
      3.5

  - ### setResourceFilters

    public void setResourceFilters(Set<ResourceFilter> resourceFilters)
    Sets the resource filters of this Eclipse project.
    Since:
      3.5

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