/**
  * @inheritdoc
  */
 public function save()
 {
     $article = $this->getArticle();
     $filters = $this->getArticleResourceManager()->getEntityManager()->getFilters();
     $filters->disable('softdeleteable');
     try {
         $resource = $this->getArticleResourceManager()->findResource(array('url' => $article->getUrl()));
     } catch (ResourceNotFoundException $e) {
         $resource = new Article();
         $resource->setViews(0);
     }
     $filters->enable('softdeleteable');
     if (!is_null($resource->getDeletedAt())) {
         return $resource->getId();
     }
     $resource->setTitle($article->getTitle())->setAbstract($article->getAbstract())->setContent($article->getContent())->setImage($article->getImage())->setPublicationDate($article->getPublicationDate())->setUrl($article->getUrl())->setOutlet($this->getOutletResource())->setAuthor($this->getAuthorResource());
     if ($resource->getId()) {
         $this->getArticleResourceManager()->updateResource($resource);
     } else {
         $this->getArticleResourceManager()->writeResource($resource);
     }
     return $resource->getId();
 }