3 namespace Custom\Mvc\Controller\Plugin;
5 use Zend\Mvc\Controller\Plugin\AbstractPlugin;
7 use Zend\Session\Container;
8 use Zend\Session\SessionManager;
9 use Zend\ServiceManager\ServiceManagerAwareInterface;
10 use Zend\ServiceManager\ServiceManager;
13 class MessageGetter extends AbstractPlugin implements ServiceManagerAwareInterface
19 protected $serviceManager;
21 protected $messages = array();
24 public function __invoke()
26 $manager = new SessionManager();
27 $container = new Container('FlashMessenger', $manager);
28 $namespaces = array();
30 foreach ($container as $namespace => $messages) {
31 $this->messages[$namespace] = $messages->toArray();
32 $namespaces[] = $namespace;
34 foreach ($namespaces as $namespace) {
35 unset($container->{$namespace});
38 return $this->messages;
42 * Retrieve service manager instance
44 * @return ServiceManager
46 public function getServiceManager()
48 return $this->serviceManager->getServiceLocator();
52 * Set service manager instance
54 * @param ServiceManager $locator
57 public function setServiceManager(ServiceManager $serviceManager)
59 $this->serviceManager = $serviceManager;