protected void triggerQueueReading() {
   if (isShutdown()) {
     return; // no more triggering
   }
   QueueListener listener = queueListener.get();
   if (listener == null || !listener.isRunning()) {
     listener =
         queueListener.updateAndGet(l -> l != null && l.isRunning() ? l : new QueueListener(this));
     if (mock != null) {
       mock.execute(listener);
     } else {
       Platform.runLater(listener);
     }
   }
 }