if (value instanceof TimestampWithCalendar) field.setTimestamp( (TimestampWithCalendar)value, ((TimestampWithCalendar)value).getCalendar()); else
if (value instanceof WrapperWithCalendar) {  Object obj = ((WrapperWithCalendar)value).getValue();  if (obj == null) { field.setNull(); } else { Calendar cal = ((WrapperWithCalendar)value).getCalendar();  if (obj instanceof Timestamp) field.setTimestamp((Timestamp)obj, cal); else if (obj instanceof java.sql.Date) field.setDate((java.sql.Date)obj, cal); else if (obj instanceof Time) field.setTime((Time)obj, cal); else throw new TypeConvertionException( "Cannot convert type " + obj.getClass().getName());  } } else if (value instanceof WrapperWithInt) {  Object obj = ((WrapperWithInt)value).getValue();  if (obj == null) { field.setNull(); } else { int intValue = ((WrapperWithInt)value).getIntValue();  if (obj instanceof InputStream) field.setBinaryStream((InputStream)obj, intValue); else if (obj instanceof Reader) field.setCharacterStream((Reader)obj, intValue); else throw new TypeConvertionException( "Cannot convert type " + obj.getClass().getName());  }   } else
    protected boolean internalExecute(boolean sendOutParams)    throws SQLException {                int counter = 0;                List inputParams = procedureCall.getInputParams();        Iterator iter = inputParams.iterator();        while(iter.hasNext()) {            FBProcedureParam param = (FBProcedureParam)iter.next();                        if (param != null && param.isParam()) {                                counter++;                                Object value = param.getValue();                FBField field = getField(counter);                                if (value == null)                    field.setNull();                else                if (value instanceof TimestampWithCalendar)                    field.setTimestamp(                            (TimestampWithCalendar)value,                             ((TimestampWithCalendar)value).getCalendar());                else                    field.setObject(value);            }        }        return super.internalExecute(sendOutParams);    }