/** * {@inheritDoc} */ public function setPath($path) { $this->__initializer__ && $this->__initializer__->__invoke($this, 'setPath', array($path)); return parent::setPath($path); }
/** * @param array $params * @return \Shopware\Models\Media\Media * @throws \Shopware\Components\Api\Exception\ValidationException * @throws \Exception */ public function create(array $params) { $this->checkPrivilege('create'); $params = $this->prepareMediaData($params); $media = new \Shopware\Models\Media\Media(); $media->fromArray($params); $path = $this->prepareFilePath($media->getPath(), $media->getFileName()); $media->setPath($path); $violations = $this->getManager()->validate($media); if ($violations->count() > 0) { throw new ApiException\ValidationException($violations); } $this->getManager()->persist($media); $this->flush(); if ($media->getType() == MediaModel::TYPE_IMAGE) { /**@var $manager Manager */ $manager = $this->getContainer()->get('thumbnail_manager'); $manager->createMediaThumbnail($media, array(), true); } return $media; }