docs: @Override
      public void run() {
          synchronized (monitor) {
              while (!terminated) {
                  try {
                      BrokerSession session = this.sessionRef.get();
                      
                      if (session == null) {
                          break;
                      } else {
                          pollHost(session);
                      }
                      session = null;
                      monitor.wait(pollingInterval);
                  } catch (InterruptedException e) {}
              }
          }
          
          log.debug(getName() + " has exited.");
      }