code: public static CacheEventListenerConfigurationBuilder newEventListenerConfiguration(
        CacheEventListener<?, ?> listener,
        Set<EventType> eventSetToFireOn) throws IllegalArgumentException {
      if (eventSetToFireOn.isEmpty()) {
        throw new IllegalArgumentException("EventType Set cannot be empty");
      }
      return new CacheEventListenerConfigurationBuilder(EnumSet.copyOf(eventSetToFireOn), listener);
    }
docs: Creates a new builder instance using the given {@link CacheEventListener} instance and the set of {@link EventType}s
  to listen to.
  <p>
  <ul>
  <li>{@link EventOrdering} defaults to {@link EventOrdering#UNORDERED}</li>
  <li>{@link EventFiring} defaults to {@link EventFiring#ASYNCHRONOUS}</li>
  </ul>
  
  @param listener the {@code CacheEventListener} instance
  @param eventSetToFireOn the set of events to listen to, cannot be empty
  @return the new builder instance
  @throws IllegalArgumentException if the {@code eventSetToFireOn} is empty