ProjectDescriptor (Gradle API 4.9)
Date: 2018-07-16

org.gradle.api.initialization

## Interface ProjectDescriptor

-     public 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(String...)` or `Settings.includeFlat(String...)`. You can access the descriptors using one of the lookup methods on the `Settings` object.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method 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

    - #### getName

          String getName()

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

    - #### setName

          void setName(String name)

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

    - #### getProjectDir

          File getProjectDir()

      Returns the project directory of this project.
      Returns:
        The project directory. Never returns null.

    - #### setProjectDir

          void setProjectDir(File dir)

      Sets the project directory of this project.
      Parameters:
        `dir` - The new project directory. Should not be null.

    - #### getBuildFileName

          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.

    - #### setBuildFileName

          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.

    - #### getBuildFile

          File getBuildFile()

      Returns the build file for this project.
      Returns:
        The build file. Never returns null.

    - #### getParent

          @Nullable
          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.

    - #### getChildren

          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.

    - #### getPath

          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.