Package: org.gradle.api.initialization

## [Java] Interface ProjectDescriptor

- A `ProjectDescriptor` declares the configuration required to create and evaluate a Project.

  A `ProjectDescriptor` is created when you add a project to the build from the settings script, using Settings.include or Settings.includeFlat. You can access the descriptors using one of the lookup methods on the Settings object.

- - ### Methods Summary

    Methods
    Type | Name and description
    --- | ---
    `File` | `getBuildFile()` Returns the build file for this project.
    `String` | `getBuildFileName()` Returns the name of the build file for this project.
    `Set<ProjectDescriptor>` | `getChildren()` Returns the children of this project, if any.
    `String` | `getName()` Returns the name of this project.
    `ProjectDescriptor` | `getParent()` Returns the parent of this project, if any.
    `String` | `getPath()` Returns the path of this project.
    `File` | `getProjectDir()` Returns the project directory of this project.
    `void` | `setBuildFileName(String name)` Sets the name of the build file.
    `void` | `setName(String name)` Sets the name of this project.
    `void` | `setProjectDir(File dir)` Sets the project directory of this project.

- - ### Method Detail

    - #### public File getBuildFile()

      Returns the build file for this project.

      Returns:
        The build file. Never returns null.

    - #### public String getBuildFileName()

      Returns the name of the build file for this project. This name is interpreted relative to the project directory.

      Returns:
        The build file name.

    - #### public Set<ProjectDescriptor> getChildren()

      Returns the children of this project, if any.

      Returns:
        The children. Returns an empty set if this project does not have any children.

    - #### public String getName()

      Returns the name of this project.

      Returns:
        The name of the project. Never returns null.

    - #### public ProjectDescriptor getParent()

      Returns the parent of this project, if any. Returns null if this project is the root project.

      Returns:
        The parent, or null if this is the root project.

    - #### public String getPath()

      Returns the path of this project. The path can be used as a unique identifier for this project.

      Returns:
        The path. Never returns null.

    - #### public File getProjectDir()

      Returns the project directory of this project.

      Returns:
        The project directory. Never returns null.

    - #### public void setBuildFileName(String name)

      Sets the name of the build file. This name is interpreted relative to the project directory.

      Parameters:
        `name` - The build file name. Should not be null.

    - #### public void setName(String name)

      Sets the name of this project.

      Parameters:
        `name` - The new name for the project. Should not be null

    - #### public void setProjectDir(File dir)

      Sets the project directory of this project.

      Parameters:
        `dir` - The new project directory. Should not be null.