public function init()
    {
        if ($this->isInitialized())
            return true;

        // attach default listeners
        /** @var $sharedEvents \Zend\EventManager\SharedEventManager */
        $sm = $this->getServiceManager();
        $defaultListeners = $sm->get('yimaTheme.Manager.ListenerAggregate');
        if ($defaultListeners instanceof self)
            // inject themeManager
            $defaultListeners->manager = $this;

        $sharedEvents = $this->getEventManager()->getSharedManager();
        $sharedEvents->attachAggregate($defaultListeners);

        $this->isInitialized = true;

        return $this;
    }