code: func (w *eventHandler) Watch(c <-chan eventtypes.Message) {
  	for e := range c {
  		w.mu.Lock()
  		h, exists := w.handlers[e.Action]
  		w.mu.Unlock()
  		if !exists {
  			continue
  		}
  		logrus.Debugf("event handler: received event: %v", e)
  		go h(e)
  	}
  }
docs: // Watch ranges over the passed in event chan and processes the events based on the
  // handlers created for a given action.
  // To stop watching, close the event chan.