Search in sources :

Example 11 with ZipFile

use of net.lingala.zip4j.ZipFile in project ArachneCentralAPI by OHDSI.

the class BaseSubmissionServiceImpl method uploadCompressedResultsByDataOwner.

@Override
public void uploadCompressedResultsByDataOwner(Long submissionId, File compressedFile) throws IOException {
    Submission submission = submissionRepository.getOne(submissionId);
    Objects.requireNonNull(submission);
    UserDetails userDetails = (UserDetails) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
    IUser user = userService.getByUsername(userDetails.getUsername());
    Path unzipDir = Files.createTempDirectory(String.format("submission_%d_results", submissionId));
    try {
        unzipWithNested(new ZipFile(compressedFile), unzipDir);
        storeExtractedFiles(submission, unzipDir, user.getId());
    } finally {
        FileUtils.deleteDirectory(unzipDir.toFile());
    }
}
Also used : Path(java.nio.file.Path) UserDetails(org.springframework.security.core.userdetails.UserDetails) Submission(com.odysseusinc.arachne.portal.model.Submission) ZipFile(net.lingala.zip4j.ZipFile) IUser(com.odysseusinc.arachne.portal.model.IUser)

Example 12 with ZipFile

use of net.lingala.zip4j.ZipFile in project ArachneCentralAPI by OHDSI.

the class AnalysisHelper method compressAndSplit.

public void compressAndSplit(ArrayList<File> files, File zipArchive) {
    try {
        ZipFile zipFile = new ZipFile(zipArchive.getAbsoluteFile());
        ZipParameters parameters = new ZipParameters();
        parameters.setCompressionMethod(CompressionMethod.DEFLATE);
        parameters.setCompressionLevel(CompressionLevel.NORMAL);
        zipFile.createSplitZipFile(files, parameters, true, maximumSize);
    } catch (ZipException ex) {
        LOGGER.error(ex.getMessage(), ex);
        throw new ConverterRuntimeException(ex.getMessage());
    }
}
Also used : ZipFile(net.lingala.zip4j.ZipFile) ZipException(net.lingala.zip4j.exception.ZipException) ConverterRuntimeException(com.odysseusinc.arachne.portal.exception.ConverterRuntimeException) ZipParameters(net.lingala.zip4j.model.ZipParameters)

Aggregations

ZipFile (net.lingala.zip4j.ZipFile)12 FileHeader (net.lingala.zip4j.model.FileHeader)6 IOException (java.io.IOException)5 File (java.io.File)4 Path (java.nio.file.Path)3 ZipException (net.lingala.zip4j.exception.ZipException)3 IUser (com.odysseusinc.arachne.portal.model.IUser)2 Submission (com.odysseusinc.arachne.portal.model.Submission)2 InputStream (java.io.InputStream)2 ArrayList (java.util.ArrayList)2 ZipParameters (net.lingala.zip4j.model.ZipParameters)2 EntityGraph (com.cosium.spring.data.jpa.entity.graph.domain.EntityGraph)1 CommonFileUtils (com.odysseusinc.arachne.commons.utils.CommonFileUtils)1 UUIDGenerator (com.odysseusinc.arachne.commons.utils.UUIDGenerator)1 ApproveDTO (com.odysseusinc.arachne.portal.api.v1.dto.ApproveDTO)1 UpdateNotificationDTO (com.odysseusinc.arachne.portal.api.v1.dto.UpdateNotificationDTO)1 WebSecurityConfig (com.odysseusinc.arachne.portal.config.WebSecurityConfig)1 ConverterRuntimeException (com.odysseusinc.arachne.portal.exception.ConverterRuntimeException)1 NoExecutableFileException (com.odysseusinc.arachne.portal.exception.NoExecutableFileException)1 NotExistException (com.odysseusinc.arachne.portal.exception.NotExistException)1