コード例 #1
0
 /**
  * Updates a media
  *
  * @param \Sonata\MediaBundle\Model\MediaInterface $media
  * @param string $context
  * @param string $providerName
  * @return void
  */
 public function save(MediaInterface $media, $context = null, $providerName = null)
 {
     if ($context) {
         $media->setContext($context);
     }
     if ($providerName) {
         $media->setProviderName($providerName);
     }
     $isNew = $media->getId() != null;
     if ($isNew) {
         $this->pool->getProvider($media->getProviderName())->prePersist($media);
     } else {
         $this->pool->getProvider($media->getProviderName())->preUpdate($media);
     }
     $this->dm->persist($media);
     $this->dm->flush();
     if ($isNew) {
         $this->pool->getProvider($media->getProviderName())->postPersist($media);
     } else {
         $this->pool->getProvider($media->getProviderName())->postUpdate($media);
     }
     // just in case the pool alter the media
     $this->dm->persist($media);
     $this->dm->flush();
 }
コード例 #2
0
 /**
  * {@inheritdoc}
  */
 public function save(MediaInterface $media, $context = null, $providerName = null)
 {
     if ($context) {
         $media->setContext($context);
     }
     if ($providerName) {
         $media->setProviderName($providerName);
     }
     // just in case the pool alter the media
     $this->em->persist($media);
     $this->em->flush();
 }