From 34ca2905c38d17bbded01cf7497eca790e760a39 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Wed, 13 Apr 2016 18:38:47 +0200 Subject: Preparations/changes for global image sync --- src/main/java/org/openslx/util/ThriftUtil.java | 34 ++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 src/main/java/org/openslx/util/ThriftUtil.java (limited to 'src/main/java/org/openslx/util/ThriftUtil.java') diff --git a/src/main/java/org/openslx/util/ThriftUtil.java b/src/main/java/org/openslx/util/ThriftUtil.java new file mode 100644 index 0000000..58019a7 --- /dev/null +++ b/src/main/java/org/openslx/util/ThriftUtil.java @@ -0,0 +1,34 @@ +package org.openslx.util; + +import java.nio.ByteBuffer; +import java.util.ArrayList; +import java.util.List; + +public class ThriftUtil { + + public static List unwrapByteBufferList(List blockHashes) { + if (blockHashes == null || blockHashes.isEmpty()) + return null; + List hashList = new ArrayList<>(blockHashes.size()); + for (ByteBuffer hash : blockHashes) { + byte[] buffer = new byte[hash.remaining()]; + hash.mark(); + hash.get(buffer); + hash.reset(); + hashList.add(buffer); + } + return hashList; + } + + public static byte[] unwrapByteBuffer(ByteBuffer buffer) { + byte[] byteArray = null; + if (buffer != null) { + byteArray = new byte[buffer.remaining()]; + buffer.mark(); + buffer.get(byteArray); + buffer.reset(); + } + return byteArray; + } + +} -- cgit v1.2.3-55-g7522