docs: public void post(Notification event) {
          for (Map.Entry<Object, List<SubscriberMethod>> entry : listeners.entrySet()) {
              for (SubscriberMethod method : entry.getValue()) {
                  if (method.eventTypeToInvokeOn.isInstance(event)) {
                      try {
                          method.methodToInvokeOnEvent.invoke(entry.getKey(), event);
                      } catch (InvocationTargetException e) {
                          // We log this exception and swallow it because we need to ensure we don't
                          // prevent completion of notifications if one listener is badly behaved and
                          // throws an exception of some kind.
                          LOGGER.log(Level.SEVERE, "Subscriber invocation failed for method \""
                                  + method.toString() + "\"", e);
                      } catch (IllegalAccessException e) {
                          throw new RuntimeException(EventBus.class.getName() + " could not access " +
                                  "subscriber " + method.toString(), e);
                      }
                  }
              }
          }
      }