/**
  * @param integer $id
  *
  * @ApiDoc(
  *  description="Delete Review",
  *  statusCodes={204="Review Deleted"},
  *  section="Review")
  * @Route("/api/reviews/{id}")
  * @Method({"DELETE"})
  * @return View
  */
 public function deleteAction($id)
 {
     $user = $this->getUser();
     $review = $this->reviewRepository->get($id);
     $this->securityCheck(Permission::WRITE, $review);
     $this->entityManager->remove($review);
     $user->decrementReviewsCount();
     $this->entityManager->flush();
     $this->reviewManager->autoReorderRankingOfReview($review);
     $this->dispatch(ApiEvent::REVIEW_DELETED, new ReviewDeletedEvent($review));
     $this->cacheManager->invalidateOnDelete($review);
     return $this->view(array(), 204);
 }