code: @Override
      public void publish(Event event) throws CougarException {
          String destinationName = destinationResolver.resolveDestination(event.getClass(), null);
          publish(event, destinationName, eventServiceBindingDescriptor);
      }
docs: Publish the supplied event to the destination.  The destination address (to publish the event to)
  will be derived using the plugged destination resolver.  If you want to implement different / more
  advanced destination resolution, implement your own JMSDestinationResolver.  Note that obviously
  both the publisher and consumer must arrive at the same destination name, so should be using the
  same convention (since they're unlikely to be running in the same Cougar instance)
  The event will be published using a thread from the pool and its associated jms session
  
  @param event
  @throws com.betfair.cougar.core.api.exception.CougarException
  @see com.betfair.cougar.transport.api.protocol.events.jms.JMSDestinationResolver