title: concurrent RejectedExecutionException when using threads
body: <p>Stacktrace:</p>
  
  <blockquote>
    <p>Process: com.saife.connect, PID: 6842
        java.util.concurrent.RejectedExecutionException: Task com.saife.connect.controllers.authentication.saife.SaifeAuthServiceImpl$LogoutRunnable@ffe6ebd
    rejected from
    java.util.concurrent.ThreadPoolExecutor@840ecb2[Terminated, pool size
    = 0, active threads = 0, queued tasks = 0, completed tasks = 1]
            at java.util.concurrent.ThreadPoolExecutor$AbortPolicy.rejectedExecution(ThreadPoolExecutor.java:2078)
            at java.util.concurrent.ThreadPoolExecutor.reject(ThreadPoolExecutor.java:843)
            at java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:1389)
            at java.util.concurrent.Executors$DelegatedExecutorService.execute(Executors.java:627)
            at com.saife.connect.controllers.authentication.saife.SaifeAuthServiceImpl.logout(SaifeAuthServiceImpl.java:514)
            at com.saife.connect.models.saife.SaifeSessionModel$LogoutRunnable.run(SaifeSessionModel.java:233)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
            at java.lang.Thread.run(Thread.java:764) 2020-01-20 15:35:00.580 6842-6842/com.saife.connect E/ViewRootImpl:
    sendUserActionEvent() returned. 2020-01-20 15:35:03.582
    6842-6842/com.saife.connect E/ViewRootImpl: sendUserActionEvent()
    returned.</p>
  </blockquote>
  
  <pre><code>private class LogoutRunnable implements Runnable {
  
      @Override
      public void run() {
          logger.finest("LogoutRunnable START");
          authService.logout();
          logger.finest("LogoutRunnable STOP");
      }
  }
  
  
  public void logout() {
      logger.fine("logout, initialized -&gt; " + initialized);
      if (initialized.get()) {
          Runnable logoutRunnable = new LogoutRunnable();
          mainExecutor.execute(logoutRunnable);
      } else {
          logger.severe("Model is not initialized!");
      }
  }
  </code></pre>