code: public boolean publish(String channel, Message message, Class<? extends IMessageProducer> clazz,
                             Recipient... recipients) {
          IMessageProducer producer = clazz == null ? null : findRegisteredProducer(clazz);
          return publish(channel, message, producer, recipients);
      }
docs: Publish a message to the producer of the specified class.
  
  @param channel The channel on which to publish the message.
  @param message Message to publish
  @param clazz Class of the producer.
  @param recipients Optional list of targeted recipients.
  @return True if successfully published.