Class NestedJarHandler
- java.lang.Object
-
- nonapi.io.github.classgraph.fastzipfilereader.NestedJarHandler
-
public class NestedJarHandler extends Object
Open and read jarfiles, which may be nested within other jarfiles.
-
-
Field Summary
Fields Modifier and Type Field Description RecyclerExceptionless<RecyclableInflater>
inflaterRecycler
A recycler forInflater
instances.SingletonMap<ModuleRef,Recycler<ModuleReaderProxy,IOException>>
moduleRefToModuleReaderProxyRecyclerMap
A singleton map from aModuleRef
to aModuleReaderProxy
recycler for the module.SingletonMap<String,Map.Entry<LogicalZipFile,String>>
nestedPathToLogicalZipFileAndPackageRootMap
A singleton map from nested jarfile path to a tuple of the logical zipfile for the path, and the package root within the logical zipfile.static String
TEMP_FILENAME_LEAF_SEPARATOR
The separator between random temp filename part and leafname.
-
Constructor Summary
Constructors Constructor Description NestedJarHandler(ScanSpec scanSpec, LogNode log)
A handler for nested jars.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close(LogNode log)
Close zipfiles, modules, and recyclers, and delete temporary files.
-
-
-
Field Detail
-
nestedPathToLogicalZipFileAndPackageRootMap
public SingletonMap<String,Map.Entry<LogicalZipFile,String>> nestedPathToLogicalZipFileAndPackageRootMap
A singleton map from nested jarfile path to a tuple of the logical zipfile for the path, and the package root within the logical zipfile.
-
moduleRefToModuleReaderProxyRecyclerMap
public SingletonMap<ModuleRef,Recycler<ModuleReaderProxy,IOException>> moduleRefToModuleReaderProxyRecyclerMap
A singleton map from aModuleRef
to aModuleReaderProxy
recycler for the module.
-
inflaterRecycler
public RecyclerExceptionless<RecyclableInflater> inflaterRecycler
A recycler forInflater
instances.
-
TEMP_FILENAME_LEAF_SEPARATOR
public static final String TEMP_FILENAME_LEAF_SEPARATOR
The separator between random temp filename part and leafname.- See Also:
- Constant Field Values
-
-
Method Detail
-
close
public void close(LogNode log)
Close zipfiles, modules, and recyclers, and delete temporary files. Called byScanResult.close()
.- Parameters:
log
- The log.
-
-