Package org.gradle.api.tasks

# Enum PathSensitivity

java.lang.Object
java.lang.Enum<PathSensitivity>
org.gradle.api.tasks.PathSensitivity

All Implemented Interfaces:
  `Serializable`, `Comparable<PathSensitivity>`, `java.lang.constant.Constable`

public enum PathSensitivity extends Enum<PathSensitivity>
Enumeration of different path handling strategies for task properties.

Since:
  3.1
See Also:
  - `PathSensitive`

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class java.lang.Enum

  `Enum.EnumDesc<E extends Enum<E>>`

- ## Enum Constant Summary

  Enum Constants
  Enum Constant
  Description
  `ABSOLUTE`
  Consider the full path of files and directories.
  `NAME_ONLY`
  Consider only the name of files and directories.
  `NONE`
  Ignore file paths and directories altogether.
  `RELATIVE`
  Use the location of the file related to a hierarchy.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static PathSensitivity`
  `valueOf(String name)`
  Returns the enum constant of this type with the specified name.
  `static PathSensitivity[]`
  `values()`
  Returns an array containing the constants of this enum type, in the order they are declared.

  ### Methods inherited from class java.lang.Enum

  `clone, compareTo, describeConstable, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

  ### Methods inherited from class java.lang.Object

  `getClass, notify, notifyAll, wait, wait, wait`

- ## Enum Constant Details

  - ### ABSOLUTE

    public static final PathSensitivity ABSOLUTE
    Consider the full path of files and directories.

    This will prevent the task's outputs from being shared across different workspaces via the build cache.

  - ### RELATIVE

    public static final PathSensitivity RELATIVE
    Use the location of the file related to a hierarchy.

    For files in the root of the file collection, the file name is used as the normalized path. For directories in the root of the file collection, an empty string is used as normalized path. For files in directories in the root of the file collection, the normalized path is the relative path of the file to the root directory containing it.

    Example: The property is an input directory.
    - The path of the input directory is ignored.
    - The path of the files in the input directory are considered relative to the input directory.

  - ### NAME_ONLY

    public static final PathSensitivity NAME_ONLY
    Consider only the name of files and directories.

  - ### NONE

    public static final PathSensitivity NONE
    Ignore file paths and directories altogether.

    When used on an @`Incremental` input, instead of `ChangeType.MODIFIED` events Gradle may produce `ChangeType.ADDED` and `ChangeType.REMOVED` events. This is because by ignoring the path of the individual inputs it cannot identify what has been modified.

- ## Method Details

  - ### values

    public static PathSensitivity[] values()
    Returns an array containing the constants of this enum type, in the order they are declared.
    Returns:
      an array containing the constants of this enum type, in the order they are declared

  - ### valueOf

    public static PathSensitivity valueOf(String name)
    Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
    Parameters:
      `name` - the name of the enum constant to be returned.
    Returns:
      the enum constant with the specified name
    Throws:
      `IllegalArgumentException` - if this enum type has no constant with the specified name
      `NullPointerException` - if the argument is null