@SuppressWarnings("unchecked")
  public static <E> void notifyAll(E event) {
    Preconditions.checkNotNull(event, "Cannot notify listeners for a null event.");

    Queue<Listener<?>> list = LISTENERS.get(event.getClass());
    if (list != null) {
      for (Listener<?> value : list) {
        Listener<E> listener = (Listener<E>) value;
        listener.notify(event);
      }
    }
  }
@Test
  public void testEvent1() {
    Event1 e1 = new Event1();

    Listeners.notifyAll(e1);

    assertThat(TestListener.get().e1).isEqualTo(e1);
  }