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 UnzipParametersunzipParametersprivate ZipModelzipModel
-
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 voidassertCanonicalPathsAreSame(java.io.File outputFile, java.lang.String outputPath, FileHeader fileHeader)private voidcheckOutputDirectoryStructure(java.io.File outputFile)private voidcreateSymLink(ZipInputStream zipInputStream, FileHeader fileHeader, java.io.File outputFile, ProgressMonitor progressMonitor)private java.io.FiledetermineOutputFile(FileHeader fileHeader, java.lang.String outputPath, java.lang.String newFileName)protected voidextractFile(ZipInputStream zipInputStream, FileHeader fileHeader, java.lang.String outputPath, java.lang.String newFileName, ProgressMonitor progressMonitor, byte[] readBuff)private java.lang.StringgetFileNameWithSystemFileSeparators(java.lang.String fileNameToReplace)protected ProgressMonitor.TaskgetTask()ZipModelgetZipModel()private booleanisSymbolicLink(FileHeader fileHeader)private byte[]readCompleteEntry(ZipInputStream zipInputStream, FileHeader fileHeader, ProgressMonitor progressMonitor)private voidunzipFile(ZipInputStream inputStream, java.io.File outputFile, ProgressMonitor progressMonitor, byte[] buff)private voidverifyNextEntry(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:
getTaskin classAsyncZipTask<T>
-
getZipModel
public ZipModel getZipModel()
-
-