code: Future<?> queueWorkRequest(Runnable runnable, ExecutorService executor) {
          Future<?> future = null;
          if (skipSchedule) {
              runnable.run();
          } else {
              future = executor.submit(runnable);
          }
          return future;
      }
docs: Submits a EventImpl object (which is a runnable) to the given
  ExecutorService. The Future<?> returned by submitting the runnable
  is returned from this method.
  
  @param runnable
  The Runnable to queue
  @param executor
  The ExecutorService to run the EventImpl on
  @return The Future<?> created by submitting the EventImpl to the
  ExecutorService