SLING-9261 : Do not compress feature archive at all
diff --git a/src/main/java/org/apache/sling/feature/io/archive/ArchiveWriter.java b/src/main/java/org/apache/sling/feature/io/archive/ArchiveWriter.java
index e9de733..a4d6e29 100644
--- a/src/main/java/org/apache/sling/feature/io/archive/ArchiveWriter.java
+++ b/src/main/java/org/apache/sling/feature/io/archive/ArchiveWriter.java
@@ -57,9 +57,10 @@
/**
* Create a feature model archive. The output stream will not be closed by this
- * method. The caller must call {@link JarOutputStream#close()} or
- * {@link JarOutputStream#finish()} on the return output stream. The caller can
- * add additional files through the return stream.
+ * method. The caller must call {@link JarOutputStream#close()}
+ * on the return output stream. The caller can
+ * add additional files through the return stream. However, the files
+ * should not be compressed (which is the default for the output stream).
*
* A feature model can be in different states: it might be a partial feature
* model, a complete feature model or an assembled feature model. This method
@@ -89,8 +90,8 @@
// create archive
final JarOutputStream jos = new JarOutputStream(out, manifest);
- // write models first with compression enabled
- jos.setLevel(Deflater.BEST_COMPRESSION);
+ // write everything without compression
+ jos.setLevel(Deflater.NO_COMPRESSION);
for (final Feature feature : features) {
final JarEntry entry = new JarEntry(feature.getId().toMvnPath());
jos.putNextEntry(entry);
@@ -100,8 +101,6 @@
jos.closeEntry();
}
- // write artifacts with compression disabled
- jos.setLevel(Deflater.NO_COMPRESSION);
final byte[] buffer = new byte[1024*1024*256];
final Set<ArtifactId> artifacts = new HashSet<>();