package backtype.storm.serialization;
import java.io.IOException;
import java.net.URLClassLoader;
import java.util.List;
import java.util.Map;
import backtype.storm.utils.ListDelegate;
import com.esotericsoftware.kryo.Kryo;
import com.esotericsoftware.kryo.io.Input;
public class KryoValuesDeserializer {
Kryo _kryo;
Input _kryoInput;
public KryoValuesDeserializer(Map conf) {
this._kryo = SerializationFactory.getKryo(conf);
this._kryoInput = new Input(1);
}
public List<Object> deserializeFrom(Input input) {
ListDelegate delegate = (ListDelegate) _kryo.readObject(input,
ListDelegate.class);
return delegate.getDelegate();
}
public List<Object> deserialize(byte[] ser) throws IOException {
_kryoInput.setBuffer(ser);
return deserializeFrom(_kryoInput);
}
public Object deserializeObject(byte[] ser) throws IOException {
_kryoInput.setBuffer(ser);
return _kryo.readClassAndObject(_kryoInput);
}
}