code: @Override
    public void cancel(Serializable f) {
      if (f != null && f instanceof TimerTaskHandle) {
        TimerTaskHandle timerTaskHandle = (TimerTaskHandle) f;
        if (timerTaskHandle.future != null) {
          logger.debug("Cancelling timer with id [{}] and delay [{}]", timerTaskHandle.id, timerTaskHandle.future.getDelay(TimeUnit.MILLISECONDS));
          if (executor.remove((Runnable) timerTaskHandle.future)) {
            timerTaskHandle.future.cancel(false);
            returnTimerTaskHandle(timerTaskHandle);
          }
        }
      }
    }
docs: /*
  (non-Javadoc)
  
  @see org.jdiameter.common.api.timer.ITimerFacility#cancel(java.io.Serializable)