code: public void addListener(Rdp4jListener listener) {
          if (listener == null) {
              throw new NullPointerException(NULL_ARGUMENT_ERROR);
          }
          scheduledRunnable.addListener(listener);
      }
docs: Adds the given <code>listener</code> into this instance.
  The <code>listener</code> will start receiving notifications
  in the next coming poll-cycle.
  <p>
  Any {@link DirectoryPollerListener} added with this method
  will not have it's {@link DirectoryPollerListener#beforeStart(BeforeStartEvent)}
  method triggered, as at this point the {@link DirectoryPoller}
  is already started.
  <p>
  Registering an already registered listener will be ignored.
  
  @throws NullPointerException if given <code>listener</code> is null.
  @param listener implementation of any of the sub-interfaces of {@link Rdp4jListener}.