public function getEventEmitter()
    {
        if (!$this->getContainer()->has(EmitterInterface::class)) {
            $this->getContainer()->share(EmitterInterface::class, new Emitter());
        }

        /** @var EmitterInterface $validateContract */
        $validateContract = $this->validateContract($this->getContainer()->get(EmitterInterface::class), EmitterInterface::class);
        return $validateContract;
    }