code: @SuppressWarnings("SynchronizationOnLocalVariableOrMethodParameter")
      public void unregisterEventListener(EventListenerModel eventListener) throws IllegalArgumentException {
          listeners.values().stream()
                  .forEach(list -> {
                      synchronized (list) {
                          list.removeIf(eventListenerModel -> eventListenerModel.equals(eventListener));
                      }
                  });
      }
docs: unregister an EventListener
  
  It will unregister for all registered descriptors.
  It will also ignore if this listener is not listening to an Event.
  Method is thread-safe.
  
  @param eventListener the ActivatorEventListener used to listen for events
  @throws IllegalArgumentException if Listener is already listening to the Event or the id is not allowed