*/
protected UserVariable parseUserVariable(XInputStream is, UserVarEvent event)
throws IOException {
final int type = event.getVarType();
switch(type) {
case UserVariableDecimal.TYPE: return new UserVariableDecimal(is.readBytes(event.getVarValueLength()));
case UserVariableInt.TYPE: return new UserVariableInt(is.readLong(event.getVarValueLength()), is.readInt(1));
case UserVariableReal.TYPE: return new UserVariableReal(Double.longBitsToDouble(is.readLong(event.getVarValueLength())));
case UserVariableRow.TYPE: return new UserVariableRow(is.readBytes(event.getVarValueLength()));
case UserVariableString.TYPE: return new UserVariableString(is.readBytes(event.getVarValueLength()), event.getVarCollation());
default: LOGGER.warn("unknown user variable type: " + type); return null;