code: public Void longPollLoop() throws JoynrShutdownException {
          logger.debug("LongPollingChannel OPENING CHANNEL: {} ", id);
          try {
              while (true) {
                  // start long poll if it has not been disabled.
                  // Checking the disable switch and request creation has
                  // to be an atomic process.
                  // When the request creation is done it can be canceled
                  // by a call to suspend.
                  if (shutdown) {
                      throw new JoynrShutdownException("shutting down");
                  }
  
                  if (longPollingDisabled == true) {
                      try {
                          statusLock.lockInterruptibly();
                      } catch (InterruptedException e) {
                          Thread.currentThread().interrupt();
                          throw new JoynrShutdownException("INTERRUPTED. Shutting down");
                      }
                      logger.trace("Waiting for long polling to be resumed.");
                      statusChanged.awaitUninterruptibly();
  
                  } else {
                      longPoll();
                      try {
  
                          // prevent error when long polling connection was reestablished too soon after repsone being
                          // returned
                          Thread.sleep(10);
                      } catch (InterruptedException e) {
                          Thread.currentThread().interrupt();
                          throw new JoynrShutdownException("INTERRUPTED. Shutting down");
                      }
                  }
  
              }
          } finally {
              // shutdown();
              logger.info("LongPollingChannel CHANNEL: " + id + " long poll loop exited");
          }
      }
docs: Start long polling loop throws ExecutionExeption in order to terminate channel properly returns Void (null) in
  order to reconnect channel