timeout.cancel();
if (needRemove) {
if (timeout instanceof TimeoutExt) {
TimeoutExt te = (TimeoutExt)timeout;
DeliverRefTimeoutTarget target = (DeliverRefTimeoutTarget)te.getTimeoutTarget();
log.trace("clearing scheduled ref " + target.ref);
SimpleDelivery del = new SimpleDelivery(this, target.ref);