public function hasRouteAccess($routeName)
 {
     $token = $this->securityContext->getToken();
     if ($token->isAuthenticated()) {
         $route = $this->router->getRouteCollection()->get($routeName);
         $controller = $route->getDefault('_controller');
         list($class, $method) = explode('::', $controller, 2);
         $metadata = $this->getMetadata($class);
         if (!isset($metadata->methodMetadata[$method])) {
             return false;
         }
         foreach ($metadata->methodMetadata[$method]->roles as $role) {
             if ($this->securityContext->isGranted($role)) {
                 return true;
             }
         }
     }
     return false;
 }