Java Code Examples for net.lingala.zip4j.progress.ProgressMonitor#setCurrentOperation()

The following examples show how to use net.lingala.zip4j.progress.ProgressMonitor#setCurrentOperation() . 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: ZipEngine.java    From AndroidZip with Apache License 2.0 5 votes vote down vote up
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 2
Source File: Unzip.java    From AndroidZip with Apache License 2.0 5 votes vote down vote up
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 3
Source File: Unzip.java    From AndroidZip with Apache License 2.0 5 votes vote down vote up
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 4
Source File: ArchiveMaintainer.java    From AndroidZip with Apache License 2.0 5 votes vote down vote up
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 5
Source File: ArchiveMaintainer.java    From AndroidZip with Apache License 2.0 5 votes vote down vote up
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);
}