Java Code Examples for net.lingala.zip4j.progress.ProgressMonitor#setState()
The following examples show how to use
net.lingala.zip4j.progress.ProgressMonitor#setState() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: CrcUtil.java From zip4j with Apache License 2.0 | 5 votes |
public static long computeFileCrc(File inputFile, ProgressMonitor progressMonitor) throws IOException { if (inputFile == null || !inputFile.exists() || !inputFile.canRead()) { throw new ZipException("input file is null or does not exist or cannot read. " + "Cannot calculate CRC for the file"); } byte[] buff = new byte[BUF_SIZE]; CRC32 crc32 = new CRC32(); try(InputStream inputStream = new FileInputStream(inputFile)) { int readLen; while ((readLen = inputStream.read(buff)) != -1) { crc32.update(buff, 0, readLen); if (progressMonitor != null) { progressMonitor.updateWorkCompleted(readLen); if (progressMonitor.isCancelAllTasks()) { progressMonitor.setResult(ProgressMonitor.Result.CANCELLED); progressMonitor.setState(ProgressMonitor.State.READY); return 0; } } } return crc32.getValue(); } }
Example 2
Source File: AddFilesToZipIT.java From zip4j with Apache License 2.0 | 5 votes |
@Test public void testAddFileProgressMonitorThrowsExceptionWhenPerformingActionInBusyState() throws ZipException { expectedException.expectMessage("invalid operation - Zip4j is in busy state"); expectedException.expect(ZipException.class); ZipFile zipFile = new ZipFile(generatedZipFile); ProgressMonitor progressMonitor = zipFile.getProgressMonitor(); progressMonitor.setState(ProgressMonitor.State.BUSY); zipFile.addFile(TestUtils.getTestFileFromResources("file_PDF_1MB.pdf")); }
Example 3
Source File: ZipEngine.java From AndroidZip with Apache License 2.0 | 5 votes |
public void addFiles(final ArrayList fileList, final ZipParameters parameters, final ProgressMonitor progressMonitor, boolean runInThread) throws ZipException { if (fileList == null || parameters == null) { throw new ZipException("one of the input parameters is null when adding files"); } if(fileList.size() <= 0) { throw new ZipException("no files to add"); } progressMonitor.setCurrentOperation(ProgressMonitor.OPERATION_ADD); progressMonitor.setState(ProgressMonitor.STATE_BUSY); progressMonitor.setResult(ProgressMonitor.RESULT_WORKING); if (runInThread) { progressMonitor.setTotalWork(calculateTotalWork(fileList, parameters)); progressMonitor.setFileName(((File)fileList.get(0)).getAbsolutePath()); Thread thread = new Thread(InternalZipConstants.THREAD_NAME) { public void run() { try { initAddFiles(fileList, parameters, progressMonitor); } catch (ZipException e) { } } }; thread.start(); } else { initAddFiles(fileList, parameters, progressMonitor); } }
Example 4
Source File: Unzip.java From AndroidZip with Apache License 2.0 | 5 votes |
public void extractAll(final UnzipParameters unzipParameters, final String outPath, final ProgressMonitor progressMonitor, boolean runInThread) throws ZipException { CentralDirectory centralDirectory = zipModel.getCentralDirectory(); if (centralDirectory == null || centralDirectory.getFileHeaders() == null) { throw new ZipException("invalid central directory in zipModel"); } final ArrayList fileHeaders = centralDirectory.getFileHeaders(); progressMonitor.setCurrentOperation(ProgressMonitor.OPERATION_EXTRACT); progressMonitor.setTotalWork(calculateTotalWork(fileHeaders)); progressMonitor.setState(ProgressMonitor.STATE_BUSY); if (runInThread) { Thread thread = new Thread(InternalZipConstants.THREAD_NAME) { public void run() { try { initExtractAll(fileHeaders, unzipParameters, progressMonitor, outPath); progressMonitor.endProgressMonitorSuccess(); } catch (ZipException e) { } } }; thread.start(); } else { initExtractAll(fileHeaders, unzipParameters, progressMonitor, outPath); } }
Example 5
Source File: Unzip.java From AndroidZip with Apache License 2.0 | 5 votes |
private void initExtractAll(ArrayList fileHeaders, UnzipParameters unzipParameters, ProgressMonitor progressMonitor, String outPath) throws ZipException { for (int i = 0; i < fileHeaders.size(); i++) { FileHeader fileHeader = (FileHeader)fileHeaders.get(i); initExtractFile(fileHeader, outPath, unzipParameters, null, progressMonitor); if (progressMonitor.isCancelAllTasks()) { progressMonitor.setResult(ProgressMonitor.RESULT_CANCELLED); progressMonitor.setState(ProgressMonitor.STATE_READY); return; } } }
Example 6
Source File: Unzip.java From AndroidZip with Apache License 2.0 | 5 votes |
public void extractFile(final FileHeader fileHeader, final String outPath, final UnzipParameters unzipParameters, final String newFileName, final ProgressMonitor progressMonitor, boolean runInThread) throws ZipException { if (fileHeader == null) { throw new ZipException("fileHeader is null"); } progressMonitor.setCurrentOperation(ProgressMonitor.OPERATION_EXTRACT); progressMonitor.setTotalWork(fileHeader.getCompressedSize()); progressMonitor.setState(ProgressMonitor.STATE_BUSY); progressMonitor.setPercentDone(0); progressMonitor.setFileName(fileHeader.getFileName()); if (runInThread) { Thread thread = new Thread(InternalZipConstants.THREAD_NAME) { public void run() { try { initExtractFile(fileHeader, outPath, unzipParameters, newFileName, progressMonitor); progressMonitor.endProgressMonitorSuccess(); } catch (ZipException e) { } } }; thread.start(); } else { initExtractFile(fileHeader, outPath, unzipParameters, newFileName, progressMonitor); progressMonitor.endProgressMonitorSuccess(); } }
Example 7
Source File: ArchiveMaintainer.java From AndroidZip with Apache License 2.0 | 5 votes |
public void initProgressMonitorForRemoveOp(ZipModel zipModel, FileHeader fileHeader, ProgressMonitor progressMonitor) throws ZipException { if (zipModel == null || fileHeader == null || progressMonitor == null) { throw new ZipException("one of the input parameters is null, cannot calculate total work"); } progressMonitor.setCurrentOperation(ProgressMonitor.OPERATION_REMOVE); progressMonitor.setFileName(fileHeader.getFileName()); progressMonitor.setTotalWork(calculateTotalWorkForRemoveOp(zipModel, fileHeader)); progressMonitor.setState(ProgressMonitor.STATE_BUSY); }
Example 8
Source File: ArchiveMaintainer.java From AndroidZip with Apache License 2.0 | 5 votes |
public void initProgressMonitorForMergeOp(ZipModel zipModel, ProgressMonitor progressMonitor) throws ZipException { if (zipModel == null) { throw new ZipException("zip model is null, cannot calculate total work for merge op"); } progressMonitor.setCurrentOperation(ProgressMonitor.OPERATION_MERGE); progressMonitor.setFileName(zipModel.getZipFile()); progressMonitor.setTotalWork(calculateTotalWorkForMergeOp(zipModel)); progressMonitor.setState(ProgressMonitor.STATE_BUSY); }