Interface TextResourceFactory


@Incubating public interface TextResourceFactory
Creates TextResources 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
  • Method Details

    • fromString

      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
    • fromFile

      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(Object...)
      charset - the file's character encoding (e.g. "utf-8")
      Returns:
      a text resource backed by the given file
    • fromFile

      TextResource fromFile(Object file)
      Same as fromFile(file, Charset.defaultCharset()).
    • fromArchiveEntry

      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(Object...)
      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
    • fromArchiveEntry

      TextResource fromArchiveEntry(Object archive, String path)
      Same as fromArchiveEntry(archive, path, Charset.defaultCharset().name()).