Package net.lingala.zip4j.tasks
Class AbstractExtractFileTask<T>
- java.lang.Object
-
- net.lingala.zip4j.tasks.AsyncZipTask<T>
-
- net.lingala.zip4j.tasks.AbstractExtractFileTask<T>
-
- Direct Known Subclasses:
ExtractAllFilesTask
,ExtractFileTask
public abstract class AbstractExtractFileTask<T> extends AsyncZipTask<T>
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class net.lingala.zip4j.tasks.AsyncZipTask
AsyncZipTask.AsyncTaskParameters
-
-
Field Summary
Fields Modifier and Type Field Description private UnzipParameters
unzipParameters
private ZipModel
zipModel
-
Constructor Summary
Constructors Constructor Description AbstractExtractFileTask(ZipModel zipModel, UnzipParameters unzipParameters, AsyncZipTask.AsyncTaskParameters asyncTaskParameters)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
assertCanonicalPathsAreSame(java.io.File outputFile, java.lang.String outputPath, FileHeader fileHeader)
private void
checkOutputDirectoryStructure(java.io.File outputFile)
private void
createSymLink(ZipInputStream zipInputStream, FileHeader fileHeader, java.io.File outputFile, ProgressMonitor progressMonitor)
private java.io.File
determineOutputFile(FileHeader fileHeader, java.lang.String outputPath, java.lang.String newFileName)
protected void
extractFile(ZipInputStream zipInputStream, FileHeader fileHeader, java.lang.String outputPath, java.lang.String newFileName, ProgressMonitor progressMonitor, byte[] readBuff)
private java.lang.String
getFileNameWithSystemFileSeparators(java.lang.String fileNameToReplace)
protected ProgressMonitor.Task
getTask()
ZipModel
getZipModel()
private boolean
isSymbolicLink(FileHeader fileHeader)
private byte[]
readCompleteEntry(ZipInputStream zipInputStream, FileHeader fileHeader, ProgressMonitor progressMonitor)
private void
unzipFile(ZipInputStream inputStream, java.io.File outputFile, ProgressMonitor progressMonitor, byte[] buff)
private void
verifyNextEntry(ZipInputStream zipInputStream, FileHeader fileHeader)
-
Methods inherited from class net.lingala.zip4j.tasks.AsyncZipTask
calculateTotalWork, execute, executeTask, verifyIfTaskIsCancelled
-
-
-
-
Field Detail
-
zipModel
private final ZipModel zipModel
-
unzipParameters
private final UnzipParameters unzipParameters
-
-
Constructor Detail
-
AbstractExtractFileTask
public AbstractExtractFileTask(ZipModel zipModel, UnzipParameters unzipParameters, AsyncZipTask.AsyncTaskParameters asyncTaskParameters)
-
-
Method Detail
-
extractFile
protected void extractFile(ZipInputStream zipInputStream, FileHeader fileHeader, java.lang.String outputPath, java.lang.String newFileName, ProgressMonitor progressMonitor, byte[] readBuff) throws java.io.IOException
- Throws:
java.io.IOException
-
assertCanonicalPathsAreSame
private void assertCanonicalPathsAreSame(java.io.File outputFile, java.lang.String outputPath, FileHeader fileHeader) throws java.io.IOException
- Throws:
java.io.IOException
-
isSymbolicLink
private boolean isSymbolicLink(FileHeader fileHeader)
-
unzipFile
private void unzipFile(ZipInputStream inputStream, java.io.File outputFile, ProgressMonitor progressMonitor, byte[] buff) throws java.io.IOException
- Throws:
java.io.IOException
-
createSymLink
private void createSymLink(ZipInputStream zipInputStream, FileHeader fileHeader, java.io.File outputFile, ProgressMonitor progressMonitor) throws java.io.IOException
- Throws:
java.io.IOException
-
readCompleteEntry
private byte[] readCompleteEntry(ZipInputStream zipInputStream, FileHeader fileHeader, ProgressMonitor progressMonitor) throws java.io.IOException
- Throws:
java.io.IOException
-
verifyNextEntry
private void verifyNextEntry(ZipInputStream zipInputStream, FileHeader fileHeader) throws java.io.IOException
- Throws:
java.io.IOException
-
checkOutputDirectoryStructure
private void checkOutputDirectoryStructure(java.io.File outputFile) throws ZipException
- Throws:
ZipException
-
determineOutputFile
private java.io.File determineOutputFile(FileHeader fileHeader, java.lang.String outputPath, java.lang.String newFileName)
-
getFileNameWithSystemFileSeparators
private java.lang.String getFileNameWithSystemFileSeparators(java.lang.String fileNameToReplace)
-
getTask
protected ProgressMonitor.Task getTask()
- Specified by:
getTask
in classAsyncZipTask<T>
-
getZipModel
public ZipModel getZipModel()
-
-