# Interface DirectDependencyMetadata

All Superinterfaces:
  `DependencyMetadata<DirectDependencyMetadata>`

public interface DirectDependencyMetadata extends DependencyMetadata<DirectDependencyMetadata>
Describes a dependency declared in a resolved component's metadata, which typically originates from a component descriptor (Gradle metadata file, Ivy file, Maven POM). This interface can be used to adjust a dependency's properties via metadata rules (see `ComponentMetadataHandler`.

Since:
  4.5

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `doNotEndorseStrictVersions()`
  Resets the `isEndorsingStrictVersions()` state of this dependency.
  `void`
  `endorseStrictVersions()`
  Endorse version constraints with `VersionConstraint.getStrictVersion()` strict versions} from the target module.
  `List<DependencyArtifact>`
  `getArtifactSelectors()`
  Returns additional artifact information associated with the dependency that is used to select artifacts in the targeted module.
  `boolean`
  `isEndorsingStrictVersions()`
  Are the `VersionConstraint.getStrictVersion()` strict version} dependency constraints of the target module endorsed?

  ### Methods inherited from interface DependencyMetadata

  `attributes, because, getAttributes, getGroup, getModule, getName, getReason, getVersionConstraint, version`

- ## Method Details

  - ### endorseStrictVersions

    void endorseStrictVersions()
    Endorse version constraints with `VersionConstraint.getStrictVersion()` strict versions} from the target module. Endorsing strict versions of another module/platform means that all strict versions will be interpreted during dependency resolution as if they were defined by the endorsing module itself.
    Since:
      6.0

  - ### doNotEndorseStrictVersions

    void doNotEndorseStrictVersions()
    Resets the `isEndorsingStrictVersions()` state of this dependency.
    Since:
      6.0

  - ### isEndorsingStrictVersions

    boolean isEndorsingStrictVersions()
    Are the `VersionConstraint.getStrictVersion()` strict version} dependency constraints of the target module endorsed?
    Since:
      6.0

  - ### getArtifactSelectors

    List<DependencyArtifact> getArtifactSelectors()
    Returns additional artifact information associated with the dependency that is used to select artifacts in the targeted module. For example, a classifier or type defined in POM metadata or a complete artifact name defined in Ivy metadata.
    Since:
      6.3