/**
  * @param mixed $payload
  * @param MetaData|null $metaData
  * @return GenericDomainEventMessage
  */
 protected function registerEvent($payload, MetaData $metaData = null)
 {
     $meta = null === $metaData ? MetaData::emptyInstance() : $metaData;
     return $this->getEventContainer()->addEvent($meta, $payload);
 }