# Interface DependencyLockingHandler

@ServiceScope(org.gradle.internal.service.scopes.Scope.Project.class) public interface DependencyLockingHandler
A `DependencyLockingHandler` manages the behaviour and configuration of dependency locking.

Since:
  4.8

- ## Method Summary

  Modifier and Type
  Method
  Description
  `ListProperty<String>`
  `getIgnoredDependencies()`
  Allows to configure dependencies that will be ignored in the lock state.
  `RegularFileProperty`
  `getLockFile()`
  Allows to configure the file used for saving lock state
  `Property<LockMode>`
  `getLockMode()`
  Allows to query the lock mode currently configured
  `void`
  `lockAllConfigurations()`
  Convenience method for doing: configurations.all { resolutionStrategy.activateDependencyLocking() }
  `void`
  `unlockAllConfigurations()`
  Convenience method for doing: configurations.all { resolutionStrategy.deactivateDependencyLocking() }

- ## Method Details

  - ### lockAllConfigurations

    void lockAllConfigurations()
    Convenience method for doing: configurations.all { resolutionStrategy.activateDependencyLocking() }

  - ### unlockAllConfigurations

    void unlockAllConfigurations()
    Convenience method for doing: configurations.all { resolutionStrategy.deactivateDependencyLocking() }
    Since:
      6.0

  - ### getLockMode

    Property<LockMode> getLockMode()
    Allows to query the lock mode currently configured
    Since:
      6.1

  - ### getLockFile

    RegularFileProperty getLockFile()
    Allows to configure the file used for saving lock state

    Make sure the lock file is unique per project and separate between the buildscript and project itself.

    This requires opting in the support for per project single lock file.

    Since:
      6.4

  - ### getIgnoredDependencies

    ListProperty<String> getIgnoredDependencies()
    Allows to configure dependencies that will be ignored in the lock state.

    The format of the entry is `<group>:<artifact>` where both can end with a `*` as a wildcard character. The value `*:*` is not considered a valid value as it is equivalent to disabling locking.

    These dependencies will not be written to the lock state and any references to them in lock state will be ignored at runtime. It is thus not possible to set this property but still lock a matching entry by manually adding it to the lock state.

    Since:
      6.7