code: @SuppressWarnings({ "unchecked", "PMD.ShortVariable" })
      public <E extends EventBase<?>, C extends Channel> void forChannels(
              Class<C> type, BiConsumer<E, C> handler) {
          Arrays.stream(channels)
              .filter(c -> type.isAssignableFrom(c.getClass()))
              .forEach(c -> handler.accept((E) this, (C) c));
      }
docs: Execute the given handler for all channels of the given type.
  
  @param <E> the type of the event
  @param <C> the type of the channel
  @param type the channel type
  @param handler the handler