In ConstantSerializer we are assuming Index as Integer. We need to modify that logic to be generic enough for Constant class.
public class ConstantSerializer implements Serializer<D_Constant> {
@Override
public D_Constant read(LargeByteBuffer bb) {
int ival = bb.getInt();
return new D_Constant(ival);
}