package controllers.gsn.api; import java.io.ByteArrayInputStream; import com.esotericsoftware.kryo.Kryo; import com.esotericsoftware.kryo.io.Input; import ch.epfl.gsn.beans.DataField; import ch.epfl.gsn.beans.StreamElement; import ch.epfl.gsn.delivery.StreamElement4Rest; public class StreamElementDeserializer { private Kryo kryo = new Kryo(); public StreamElementDeserializer(){ kryo.register(StreamElement4Rest.class); kryo.register(DataField[].class); } public StreamElement deserialize(String vsensor, byte[] input){ ByteArrayInputStream bais = new ByteArrayInputStream(input); bais.skip(vsensor.getBytes().length + 2); return kryo.readObjectOrNull(new Input(bais),StreamElement.class); } }