Repository: commons-compress
Updated Branches:
  refs/heads/master 6f8c4960c -> 792da6735


Allow specifying Zstandard compression level

ZstdCompressorOutputStream allows to compress data using Zstandard, but the 
default compression level of 3 is hard-coded.
Programs that wish to use a different compression level must reimplement 
ZstdCompressorOutputStream.
I suggest we add a constructor that takes a compression level and passes it to
`new ZstdOutputStream(...)`.


Project: http://git-wip-us.apache.org/repos/asf/commons-compress/repo
Commit: http://git-wip-us.apache.org/repos/asf/commons-compress/commit/c5c231e6
Tree: http://git-wip-us.apache.org/repos/asf/commons-compress/tree/c5c231e6
Diff: http://git-wip-us.apache.org/repos/asf/commons-compress/diff/c5c231e6

Branch: refs/heads/master
Commit: c5c231e643365485c5805cbca81070a51429de9c
Parents: 6f8c496
Author: Carmi Grushko <ca...@fb.com>
Authored: Tue Jul 24 10:30:20 2018 +0300
Committer: Stefan Bodewig <bode...@apache.org>
Committed: Sat Jul 28 16:08:17 2018 +0200

----------------------------------------------------------------------
 .../zstandard/ZstdCompressorOutputStream.java       | 16 ++++++++++++++--
 1 file changed, 14 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/commons-compress/blob/c5c231e6/src/main/java/org/apache/commons/compress/compressors/zstandard/ZstdCompressorOutputStream.java
----------------------------------------------------------------------
diff --git 
a/src/main/java/org/apache/commons/compress/compressors/zstandard/ZstdCompressorOutputStream.java
 
b/src/main/java/org/apache/commons/compress/compressors/zstandard/ZstdCompressorOutputStream.java
index b54dfa7..3a393e9 100644
--- 
a/src/main/java/org/apache/commons/compress/compressors/zstandard/ZstdCompressorOutputStream.java
+++ 
b/src/main/java/org/apache/commons/compress/compressors/zstandard/ZstdCompressorOutputStream.java
@@ -34,8 +34,20 @@ public class ZstdCompressorOutputStream extends 
CompressorOutputStream {
 
     private final ZstdOutputStream encOS;
 
-    public ZstdCompressorOutputStream(final OutputStream out) throws 
IOException {
-        this.encOS = new ZstdOutputStream(out);
+    public ZstdCompressorOutputStream(final OutputStream outStream, int level, 
boolean closeFrameOnFlush, boolean useChecksum) throws IOException {
+        this.encOS = new ZstdOutputStream(outStream, level, closeFrameOnFlush, 
useChecksum);
+    }
+
+    public ZstdCompressorOutputStream(final OutputStream outStream, int level, 
boolean closeFrameOnFlush) throws IOException {
+        this.encOS = new ZstdOutputStream(outStream, level, closeFrameOnFlush);
+    }
+
+    public ZstdCompressorOutputStream(final OutputStream outStream, int level) 
throws IOException {
+        this.encOS = new ZstdOutputStream(outStream, level);
+    }
+
+    public ZstdCompressorOutputStream(final OutputStream outStream) throws 
IOException {
+        this.encOS = new ZstdOutputStream(outStream);
     }
 
     @Override

Reply via email to