Class ResourceFilePool

java.lang.Object
proguard.resources.file.ResourceFilePool
All Implemented Interfaces:
FilePool

public class ResourceFilePool extends Object implements FilePool
This is a set of ResourceFile instances. They can be enumerated or retrieved by name. They can also be accessed by means of resource file visitors.
  • Field Details

  • Constructor Details

    • ResourceFilePool

      public ResourceFilePool()
      Creates a new empty ResourceFilePool.
    • ResourceFilePool

      public ResourceFilePool(ResourceFile... resourceFiles)
      Creates a new ResourceFilePool with the given resource files.
      Parameters:
      resourceFiles - the resource files to be added.
    • ResourceFilePool

      public ResourceFilePool(Iterable<? extends ResourceFile> resourceFiles)
      Creates a new ResourceFilePool with the given resource files.
      Parameters:
      resourceFiles - the resource files to be added.
  • Method Details

    • clear

      public void clear()
      Clears the pool.
    • addResourceFile

      public void addResourceFile(ResourceFile resourceFile)
      Adds the given ResourceFile to this pool.
    • addResourceFile

      public void addResourceFile(String fileName, ResourceFile resourceFile)
      Adds the given ResourceFile with the given name to this pool.
    • removeResourceFile

      public void removeResourceFile(String fileName)
      Removes the specified ResourceFile from this pool.
    • getResourceFile

      public ResourceFile getResourceFile(String fileName)
      Returns a ResourceFile from this pool, based on its name. Returns null if the instance with the given name is not in the pool.
      Specified by:
      getResourceFile in interface FilePool
    • size

      public int size()
      Returns the number of resource files in this pool.
    • refreshedCopy

      public ResourceFilePool refreshedCopy()
      Returns a ResourceFilePool with the same resource files, but with the keys that correspond to the names of the resource file instances. This can be useful to create a resource file pool with obfuscated names.
    • resourceFileNames

      public Set<String> resourceFileNames()
      Returns a Set of all resource file names in this resource file pool.
      Specified by:
      resourceFileNames in interface FilePool
    • resourceFilesAccept

      public void resourceFilesAccept(ResourceFileVisitor resourceFileVisitor)
      Applies the given ResourceFileVisitor to all instances in this pool.
      Specified by:
      resourceFilesAccept in interface FilePool
    • resourceFilesAccept

      public void resourceFilesAccept(String fileNameFilter, ResourceFileVisitor resourceFileVisitor)
      Applies the given ResourceFileVisitor to all resource files in this pool matching the given file name filter.
      Specified by:
      resourceFilesAccept in interface FilePool
    • resourceFilesAccept

      public void resourceFilesAccept(List<String> fileNameFilter, ResourceFileVisitor resourceFileVisitor)
      Applies the given ResourceFileVisitor to all resource files in this pool matching the given file name filters.
      Specified by:
      resourceFilesAccept in interface FilePool
    • resourceFilesAccept

      public void resourceFilesAccept(StringMatcher fileNameFilter, ResourceFileVisitor resourceFileVisitor)
      Applies the given ResourceFileVisitor to all resource files in this pool matching the given file name filter.
      Specified by:
      resourceFilesAccept in interface FilePool
    • toString

      public String toString()
      Overrides:
      toString in class Object