Interface RegularFileProperty

All Superinterfaces:
FileSystemLocationProperty<RegularFile>, HasConfigurableValue, Property<RegularFile>, Provider<RegularFile>, SupportsConvention

public interface RegularFileProperty extends FileSystemLocationProperty<RegularFile>
Represents some configurable regular file location, whose value is mutable.

You can create a RegularFileProperty using ObjectFactory.fileProperty().

Note: This interface is not intended for implementation by build script or plugin authors.

Since:
4.3
  • Method Details

    • value

      Sets the value of the property to the given value, replacing whatever value the property already had. This is the same as Property.set(Object) but returns this property to allow method chaining.

      This method can also be used to discard the value of the property, by passing it null. When the value is discarded (or has never been set in the first place), the convention (default value) for this property, if specified, will be used to provide the value instead.

      Specified by:
      value in interface Property<RegularFile>
      Parameters:
      value - The value, can be null.
      Returns:
      this
    • value

      RegularFileProperty value(Provider<? extends RegularFile> provider)
      Sets the property to have the same value as the given provider, replacing whatever value the property already had. This property will track the value of the provider and query its value each time the value of the property is queried. When the provider has no value, this property will also have no value. This is the same as Property.set(Provider) but returns this property to allow method chaining.

      This method can NOT be used to discard the value of the property. Specifying a null provider will result in an IllegalArgumentException being thrown. When the provider has no value, this property will also have no value - regardless of whether or not a convention has been set.

      When the given provider represents a task output, this property will also carry the task dependency information from the provider.

      Specified by:
      value in interface Property<RegularFile>
      Parameters:
      provider - The provider whose value to use.
      Returns:
      this
    • fileValue

      Sets the location of this file, using a File instance. File instances with relative paths are resolved relative to the project directory of the project that owns this property instance.

      This method is the same as FileSystemLocationProperty.set(File) but allows method chaining.

      Specified by:
      fileValue in interface FileSystemLocationProperty<RegularFile>
      Returns:
      this
    • fileProvider

      RegularFileProperty fileProvider(Provider<File> provider)
      Sets the location of this file, using a File Provider instance. File instances with relative paths are resolved relative to the project directory of the project that owns this property instance.
      Specified by:
      fileProvider in interface FileSystemLocationProperty<RegularFile>
      Returns:
      this
    • convention

      Specifies the value to use as the convention (default value) for this property. If the convention is set and no explicit value or value provider has been specified, then the convention will be returned as the value of the property (when queried).

      This method can be used to specify that the property does not have a default value, by passing it null.

      Specified by:
      convention in interface Property<RegularFile>
      Parameters:
      value - The convention value, or null if the property should have no default value.
      Returns:
      this
    • convention

      RegularFileProperty convention(Provider<? extends RegularFile> provider)
      Specifies the provider to be used to query the convention (default value) for this property. If a convention provider has been set and no explicit value or value provider has been specified, then the convention provider's value will be returned as the value of the property (when queried).

      The property's convention tracks the convention provider. Whenever the convention's actual value is needed, the convention provider will be queried anew.

      This method can't be used to specify that a property does not have a default value. Passing in a null provider will result in an IllegalArgumentException being thrown. When the provider doesn't have a value, then the property will behave as if it wouldn't have a convention specified.

      Specified by:
      convention in interface Property<RegularFile>
      Parameters:
      provider - The provider of the property's convention value, can't be null.
      Returns:
      this