code: @Override
      public <T> Event<T> fire(Event<T> event, Channel... channels) {
          if (channels.length == 0) {
              channels = event.channels();
              if (channels.length == 0) {
                  channels = new Channel[] { channel() };
              }
          }
          event.setChannels(channels);
          tree().fire(event, channels);
          return event;
      }
docs: /*
  (non-Javadoc)
  
  @see org.jgrapes.core.core.Manager#fire
  (org.jgrapes.core.Event, org.jgrapes.core.Channel)