package serializers.msgpack;
import org.msgpack.MessagePack;
import serializers.*;
public class MsgPack
{
private final static String DESC =
"uses positional (column) layout (instead of Maps std impl uses) to eliminate use of names";
public static void register(TestGroups groups) {
register(groups.media, JavaBuiltIn.mediaTransformer);
}
@SuppressWarnings("unchecked")
private static <T,S> void register(TestGroup<T> group, Transformer<T,S> transformer) {
MessagePack msgpack = new MessagePack();
TypeHandler<S> h = (TypeHandler<S>) new MediaContentTypeHandler();
h.register(msgpack);
group.add(transformer, new MsgPackSerializer<S>("msgpack/databind", h, msgpack),
new SerFeatures(SerFormat.BIN_CROSSLANG, SerGraph.FLAT_TREE, SerClass.CLASSES_KNOWN, DESC));
msgpack = new MessagePack();
h = (TypeHandler<S>) new MediaContentTypeHandler();
h.registerManually(msgpack);
group.add(transformer, new MsgPackSerializer<S>("msgpack/manual", h, msgpack),
new SerFeatures( SerFormat.BIN_CROSSLANG,SerGraph.FLAT_TREE,SerClass.MANUAL_OPT, DESC));
}
}