summaryrefslogtreecommitdiffstats
path: root/config/src
diff options
context:
space:
mode:
Diffstat (limited to 'config/src')
-rw-r--r--config/src/main/java/com/yahoo/vespa/config/LZ4PayloadCompressor.java10
1 files changed, 10 insertions, 0 deletions
diff --git a/config/src/main/java/com/yahoo/vespa/config/LZ4PayloadCompressor.java b/config/src/main/java/com/yahoo/vespa/config/LZ4PayloadCompressor.java
index 688d6d54888..03e08e039ae 100644
--- a/config/src/main/java/com/yahoo/vespa/config/LZ4PayloadCompressor.java
+++ b/config/src/main/java/com/yahoo/vespa/config/LZ4PayloadCompressor.java
@@ -5,6 +5,8 @@ import com.yahoo.compress.CompressionType;
import com.yahoo.compress.Compressor;
import com.yahoo.vespa.config.util.ConfigUtils;
+import java.nio.ByteBuffer;
+
/**
* Wrapper for LZ4 compression that selects compression level based on properties.
*
@@ -24,9 +26,17 @@ public class LZ4PayloadCompressor {
public byte[] compress(byte[] input) {
return compressor.compressUnconditionally(input);
}
+ public byte[] compress(ByteBuffer input) {
+ return compressor.compressUnconditionally(input);
+ }
public byte [] decompress(byte[] input, int uncompressedLen) {
return compressor.decompressUnconditionally(input, 0, uncompressedLen);
}
+ public byte [] decompress(ByteBuffer input, int uncompressedLen) {
+ ByteBuffer uncompressed = ByteBuffer.allocate(uncompressedLen);
+ compressor.decompressUnconditionally(input, uncompressed);
+ return uncompressed.array();
+ }
}