final public function getEntities()
    {
        if (!isset($this->entities)) {
            $this->entities = array();
            $entities = $this->generateEntities();
            $entities[static::MAIN_TAG] = $this->getEntity();
            /* @var $entity \FzyCommon\Entity\BaseInterface */
            foreach ($entities as $tag => $entity) {
                $this->getEventManager()
                    ->trigger(self::EVENT_CONFIGURE_ENTITY.$tag, $this, array(
                        'tag' => $tag,
                        'entity' => $entity,
                        'entities' => $entities,
                    ));
                $this->entities[$tag] = $entity;
                $entity->setFormTag($tag);
            }
        }

        return $this->entities;
    }
final public function getEntities()
    {
        if (!isset($this->entities)) {
            $this->entities = array();
            $entities = $this->generateEntities();
            $entities[static::MAIN_TAG] = $this->getEntity();
            /* @var $entity \FzyCommon\Entity\BaseInterface */
            foreach ($entities as $tag => $entity) {
                $this->getEventManager()
                    ->trigger(self::EVENT_CONFIGURE_ENTITY.$tag, $this, array(
                        'tag' => $tag,
                        'entity' => $entity,
                        'entities' => $entities,
                    ));
                $this->entities[$tag] = $entity;
                $entity->setFormTag($tag);
            }
        }

        return $this->entities;
    }
final public function getEntities ( ) { if ( ! isset ( $ this -> entities ) ) { $ this -> entities = array ( ) ; $ entities = $ this -> generateEntities ( ) ; $ entities [ static :: MAIN_TAG ] = $ this -> getEntity ( ) ; /* @var $entity \FzyCommon\Entity\BaseInterface */ foreach ( $ entities as $ tag => $ entity ) { $ this -> getEventManager ( ) -> trigger ( self :: EVENT_CONFIGURE_ENTITY . $ tag , $ this , array ( 'tag' => $ tag , 'entity' => $ entity , 'entities' => $ entities , ) ) ; $ this -> entities [ $ tag ] = $ entity ; $ entity -> setFormTag ( $ tag ) ; } } return $ this -> entities ; }
Ensures 'generateEntities' is only ever invoked once.
Fires the EVENT_CONFIGURE_ENTITY event on each entity
to allow for any configuration.

TODO: test that this even actually gets fired and provides
access/configuration to the entity

@return array
Ensures generateEntities is only ever invoked once . Fires the EVENT_CONFIGURE_ENTITY event on each entity to allow for any configuration .