Package proguard.resources.file
Class ResourceFilePool
- java.lang.Object
-
- proguard.resources.file.ResourceFilePool
-
- All Implemented Interfaces:
FilePool
public class ResourceFilePool extends java.lang.Object implements FilePool
This is a set ofResourceFileinstances. They can be enumerated or retrieved by name. They can also be accessed by means of resource file visitors.
-
-
Field Summary
Fields Modifier and Type Field Description protected java.util.Map<java.lang.String,ResourceFile>resourceFileMap
-
Constructor Summary
Constructors Constructor Description ResourceFilePool()Creates a new empty ResourceFilePool.ResourceFilePool(java.lang.Iterable<? extends ResourceFile> resourceFiles)Creates a new ResourceFilePool with the given resource files.ResourceFilePool(ResourceFile... resourceFiles)Creates a new ResourceFilePool with the given resource files.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddResourceFile(java.lang.String fileName, ResourceFile resourceFile)Adds the given ResourceFile with the given name to this pool.voidaddResourceFile(ResourceFile resourceFile)Adds the given ResourceFile to this pool.voidclear()Clears the pool.ResourceFilegetResourceFile(java.lang.String fileName)Returns a ResourceFile from this pool, based on its name.ResourceFilePoolrefreshedCopy()Returns a ResourceFilePool with the same resource files, but with the keys that correspond to the names of the resource file instances.voidremoveResourceFile(java.lang.String fileName)Removes the specified ResourceFile from this pool.java.util.Set<java.lang.String>resourceFileNames()Returns a Set of all resource file names in this resource file pool.voidresourceFilesAccept(java.lang.String fileNameFilter, ResourceFileVisitor resourceFileVisitor)Applies the given ResourceFileVisitor to all resource files in this pool matching the given file name filter.voidresourceFilesAccept(java.util.List<java.lang.String> fileNameFilter, ResourceFileVisitor resourceFileVisitor)Applies the given ResourceFileVisitor to all resource files in this pool matching the given file name filters.voidresourceFilesAccept(ResourceFileVisitor resourceFileVisitor)Applies the given ResourceFileVisitor to all instances in this pool.voidresourceFilesAccept(StringMatcher fileNameFilter, ResourceFileVisitor resourceFileVisitor)Applies the given ResourceFileVisitor to all resource files in this pool matching the given file name filter.intsize()Returns the number of resource files in this pool.java.lang.StringtoString()-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface proguard.resources.file.FilePool
resourceFileAccept
-
-
-
-
Field Detail
-
resourceFileMap
protected final java.util.Map<java.lang.String,ResourceFile> resourceFileMap
-
-
Constructor Detail
-
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(java.lang.Iterable<? extends ResourceFile> resourceFiles)
Creates a new ResourceFilePool with the given resource files.- Parameters:
resourceFiles- the resource files to be added.
-
-
Method Detail
-
clear
public void clear()
Clears the pool.
-
addResourceFile
public void addResourceFile(ResourceFile resourceFile)
Adds the given ResourceFile to this pool.
-
addResourceFile
public void addResourceFile(java.lang.String fileName, ResourceFile resourceFile)Adds the given ResourceFile with the given name to this pool.
-
removeResourceFile
public void removeResourceFile(java.lang.String fileName)
Removes the specified ResourceFile from this pool.
-
getResourceFile
public ResourceFile getResourceFile(java.lang.String fileName)
Returns a ResourceFile from this pool, based on its name. Returnsnullif the instance with the given name is not in the pool.- Specified by:
getResourceFilein interfaceFilePool
-
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 java.util.Set<java.lang.String> resourceFileNames()
Returns a Set of all resource file names in this resource file pool.- Specified by:
resourceFileNamesin interfaceFilePool
-
resourceFilesAccept
public void resourceFilesAccept(ResourceFileVisitor resourceFileVisitor)
Applies the given ResourceFileVisitor to all instances in this pool.- Specified by:
resourceFilesAcceptin interfaceFilePool
-
resourceFilesAccept
public void resourceFilesAccept(java.lang.String fileNameFilter, ResourceFileVisitor resourceFileVisitor)Applies the given ResourceFileVisitor to all resource files in this pool matching the given file name filter.- Specified by:
resourceFilesAcceptin interfaceFilePool
-
resourceFilesAccept
public void resourceFilesAccept(java.util.List<java.lang.String> fileNameFilter, ResourceFileVisitor resourceFileVisitor)Applies the given ResourceFileVisitor to all resource files in this pool matching the given file name filters.- Specified by:
resourceFilesAcceptin interfaceFilePool
-
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:
resourceFilesAcceptin interfaceFilePool
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-