QPack is a fast and efficient serialization format like MessagePack. One key difference is flexible map and array support which allows to write directly to a qpack buffer without the need to know the size for the map or array beforehand.
You can download the latest version here. But you can also clone this repository and open the project in your favorite Java IDE. After building the project, grab the java-qpack.jar file and add it to your own project as library.
Create an instance of QPack and use its pack method
qpack.pack(Object data);
When unpack is called with only the first parameter, each String will be returned as bytes.
qpack.unpack(byte[] qp, String decoder);
package qpack-test
import java.util.Arrays;
import transceptor.technology.QPack;
public class QPackTest() {
public static void main() {
QPack qpack = new QPack();
String[] data = new String[]{"test", "qpack", "Java"};
byte[] qp = qpack.pack(data);
Object[] result = (Object[]) qpack.unpack(qp, "utf-8");
System.out.println(Arrays.toString(result));
}
}