package org.numenta.nupic.serialize;
import java.io.IOException;
import java.io.InputStream;
import org.numenta.nupic.model.Persistable;
import org.nustaq.serialization.FSTConfiguration;
import org.nustaq.serialization.FSTObjectInput;
public class HTMObjectInput extends FSTObjectInput {
public HTMObjectInput(InputStream in, FSTConfiguration config) throws IOException {
super(in, config);
}
@SuppressWarnings("rawtypes")
public Object readObject(Class...classes) throws Exception {
try {
Object obj = super.readObject(classes);
if(obj instanceof Persistable) {
((Persistable) obj).postDeSerialize();
}
return obj;
}catch(Exception e) {
throw new IOException(e);
}
}
}