Package: org.gradle.api.resources

## [Java] Interface TextResourceFactory

- Creates `TextResource`s backed by sources such as strings, files, and archive entries.

  Example usages:

       def sourcedFromString = resources.text.fromString("some text content")

       def sourcedFromFile = resources.text.fromFile("path/to/file.txt")

       task someTask {} // assumption: produces a text file and declares it as output
       def sourcedFromTask = resources.text.fromFile(someTask)

       def sourcedFromArchiveEntry =
         resources.text.fromArchiveEntry("path/to/archive.zip", "path/to/archive/entry.txt")

       configurations { someConfig } // assumption: contains a single archive
       def sourcedFromConfiguration =
         resources.text.fromArchiveEntry(configurations.someConfig, "path/to/archive/entry.txt")

  File based factory methods optionally accept a character encoding. If no encoding is specified, the platform's default encoding is used.
  Since:
    2.2

- - ### Methods Summary

    Methods
    Type | Name and description
    --- | ---
    `TextResource` | `fromArchiveEntry(Object archive, String entryPath, String charset)` Creates a text resource backed by the archive entry at the given path within the given archive.
    `TextResource` | `fromArchiveEntry(Object archive, String path)` Same as `fromArchiveEntry(archive, path, Charset.defaultCharset().name())`.
    `TextResource` | `fromFile(Object file, String charset)` Creates a text resource backed by the given file.
    `TextResource` | `fromFile(Object file)` Same as `fromFile(file, Charset.defaultCharset())`.
    `TextResource` | `fromString(String string)` Creates a text resource backed by the given string.

- - ### Method Detail

    - #### public TextResource fromArchiveEntry(Object archive, String entryPath, String charset)

      Creates a text resource backed by the archive entry at the given path within the given archive. The archive format is determined based on the archive's file extension. If the archive format is not supported or cannot be determined, any attempt to access the resource will fail with an exception.

      Parameters:
        `archive` - an archive file evaluated as per Project.files
        `entryPath` - the path to an archive entry
        `charset` - the archive entry's character encoding (e.g. `"utf-8"`)
      Returns:
        a text resource backed by the archive entry at the given path within the given archive

    - #### public TextResource fromArchiveEntry(Object archive, String path)

      Same as `fromArchiveEntry(archive, path, Charset.defaultCharset().name())`.

    - #### public TextResource fromFile(Object file, String charset)

      Creates a text resource backed by the given file.

      Parameters:
        `file` - a text file evaluated as per Project.files
        `charset` - the file's character encoding (e.g. `"utf-8"`)
      Returns:
        a text resource backed by the given file

    - #### public TextResource fromFile(Object file)

      Same as `fromFile(file, Charset.defaultCharset())`.

    - #### public TextResource fromString(String string)

      Creates a text resource backed by the given string.

      Parameters:
        `string` - a string
      Returns:
        a text resource backed by the given string