protected function dispatchLikeEvent(LikeAction $like)
 {
     $resource = $like->getResource();
     if ($resource !== null) {
         $event = new LogSocialmediaLikeEvent($like);
         return $this->dispatch($event);
     }
 }
 /**
  * @Route("/like", name="icap_socialmedia_like")
  * @Method({"POST"})
  * @ParamConverter("user", options={"authenticatedUser" = true})
  *
  * @param \Symfony\Component\HttpFoundation\Request $request
  * @param User                                      $user
  *
  * @return bool
  */
 public function likeAction(Request $request, User $user)
 {
     $like = new LikeAction();
     $like->setUser($user);
     $like = $this->getLikeActionManager()->createLike($request, $like);
     $this->dispatchLikeEvent($like);
     $jsonResponse = new JsonResponse(true);
     return $jsonResponse;
 }
 public function createLike(Request $request, LikeAction $like)
 {
     $resourceId = $request->get('resourceId');
     if ($resourceId === null) {
         $url = $request->get('url');
         $title = $request->get('title');
         $like->setUrl($url);
         $like->setTitle($title);
     } else {
         $resourceNode = $this->resourceNodeRepository->find($resourceId);
         $like->setResource($resourceNode);
     }
     $this->em->persist($like);
     $this->wallItemManager->createWallItem($like);
     $this->em->flush();
     return $like;
 }
 public function __construct(LikeAction $like)
 {
     $this->details = array();
     parent::__construct($like->getResource(), $this->details);
 }