private function getActionByObject(&$action, $object)
 {
     $pos = strpos($action, ':');
     if (false === $pos) {
         if (!$object) {
             throw new \Exception(sprintf("can not find web page `%s`", $action));
         }
         if ($object instanceof \Doctrine\ORM\Proxy\Proxy) {
             $class = get_parent_class($object);
         } else {
             $class = get_class($object);
         }
         if (!$this->loader->hasAdminClass($class)) {
             throw new \Exception(sprintf("`%s` is not admin class", $class));
         }
         return $this->loader->getNameByClass($class);
     }
     $admin = substr($action, 0, $pos);
     if (!$this->loader->hasAdminName($admin)) {
         throw new \Exception(sprintf("`%s` is not admin", $admin));
     }
     $action = substr($action, $pos + 1);
     return $admin;
 }
 public function __construct(\Symforce\AdminBundle\Compiler\Loader\RouteCacheLoader $page_loader, \Symforce\AdminBundle\Compiler\Loader\AdminLoader $loader)
 {
     $this->page_loader = $page_loader;
     $this->loader = $loader;
     $this->admin = $loader->getAdminByClass($this->admin_class);
     if (!$this->route_path) {
         $this->route_path = $this->admin_name;
     }
     if ($this->page_parent_entity) {
         $this->parent_admin = $loader->getAdminByClass($this->page_parent_entity);
     }
     if ($this->controller) {
         $controller_entity_name = preg_replace('/\\\\Controller\\\\(\\w+)Controller$/', '\\\\Entity\\\\\\1', $this->controller);
         if ($this->loader->hasAdminClass($controller_entity_name)) {
             $this->controller_admin_name = $this->loader->getAdminByClass($controller_entity_name)->getName();
         }
     }
     $this->eneity_id_name = $this->admin_name . '_id';
     /*
     $this->page_loader->addFileResource( $this->admin->getReflectionClass()->getFileName() ) ;
     */
 }