org.gradle.api.artifacts

## Interface ClientModule

- All Superinterfaces:
    Dependency, ExternalDependency, ExternalModuleDependency, ModuleDependency, ModuleVersionSelector

      public interface ClientModule
      extends ExternalModuleDependency

  To model a module in your dependency declarations. Usually you can either declare a single dependency artifact or you declare a module dependency that depends on a module descriptor in a repository. With a client module you can declare a module dependency without the need of a module descriptor in a remote repository.

- - ### Field Summary

    - ### Fields inherited from interface org.gradle.api.artifacts.Dependency

      `ARCHIVES_CONFIGURATION, CLASSIFIER, DEFAULT_CONFIGURATION`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addDependency(ModuleDependency dependency)` Add a dependency to the client module.
    `ClientModule` | `copy()` Creates and returns a new dependency with the property values of this one.
    `Set<ModuleDependency>` | `getDependencies()` Returns all the dependencies added to the client module.
    `String` | `getId()` Returns the id of the client module.

    - ### Methods inherited from interface org.gradle.api.artifacts.ExternalModuleDependency

      `isChanging, setChanging`

    - ### Methods inherited from interface org.gradle.api.artifacts.ExternalDependency

      `isForce, setForce`

    - ### Methods inherited from interface org.gradle.api.artifacts.ModuleDependency

      `addArtifact, artifact, exclude, getArtifacts, getConfiguration, getExcludeRules, isTransitive, setTransitive`

    - ### Methods inherited from interface org.gradle.api.artifacts.Dependency

      `contentEquals, getGroup, getName, getVersion`

    - ### Methods inherited from interface org.gradle.api.artifacts.ModuleVersionSelector

      `getGroup, getName, getVersion, matchesStrictly`

- - ### Method Detail

    - #### addDependency

          void addDependency(ModuleDependency dependency)

      Add a dependency to the client module. Such a dependency is transitive dependency for the project that has a dependency on the client module.
      Parameters:
        `dependency` - The dependency to add to the client module.
      See Also:
        `getDependencies()`

    - #### getId

          String getId()

      Returns the id of the client module. This is usually only used for internal handling of the client module.
      Returns:
        The id of the client module

    - #### getDependencies

          Set<ModuleDependency> getDependencies()

      Returns all the dependencies added to the client module.
      See Also:
        `addDependency(ModuleDependency)`

    - #### copy

          ClientModule copy()

      Creates and returns a new dependency with the property values of this one.
      Specified by:
        `copy` in interface `Dependency`
      Specified by:
        `copy` in interface `ExternalDependency`
      Specified by:
        `copy` in interface `ExternalModuleDependency`
      Specified by:
        `copy` in interface `ModuleDependency`
      Returns:
        The copy. Never returns null.