private function hardDelete(Page $page)
    {
        if (!$page->isDeleted()) {
            throw new BadRequestHttpException('Page is not in trash, cannot remove it.');
        }

        if (true === $page->isRoot()) {
            throw new BadRequestHttpException('Cannot remove root page of a site.');
        }

        $this->granted('DELETE', $page);

        $this->getPageRepository()->deletePage($page);
    }