code: public EventBus bind(Object event, final SimpleEventListener eventListener) {
          return _bind(event, eventListener, eventListener.isAsync() || _isAsync(event));
      }
docs: Bind a {@link SimpleEventListener} to an object. The object could be one of
  
  * a specific string value
  * a specific enum value
  * an Enum typed class
  * an EventObject typed class
  
  If either `event` or the the method backed the `eventListener` has `@Async`
  annotation presented, it will bind the listener into the async repo. When
  event get triggered the listener will be invoked asynchronously.
  
  **Note** this method is not supposed to be called by user application directly.
  
  @param event
  the target event object
  @param eventListener
  a {@link SimpleEventListener} instance
  @return this event bus instance
  @see SimpleEventListener