public File zip(File source, File destZipFile, int level) throws IOException {
        zipContents(source, new FileOutputStream(destZipFile), level, false);
        return destZipFile;
    }
@Test
    void shouldPreserveFileTimestampWhileGeneratingTheZipFile() throws Exception {
        File file = createFileInTempDir();
        file.setLastModified(1297989100000L); // Set this to any date in the past which is greater than the epoch
        File zip = zipUtil.zip(file, tempDir.resolve("foo.zip").toFile(), Deflater.DEFAULT_COMPRESSION);

        try (ZipFile actualZip = new ZipFile(zip.getAbsolutePath())) {
            ZipEntry entry = actualZip.getEntry(file.getName());
            assertThat(entry.getTime()).isEqualTo(file.lastModified());
        }
    }