PartKeepr\UploadedFileBundle\Services\UploadedFileService::replaceFromFilesystem PHP Method

replaceFromFilesystem() public method

Replaces the current file with a new file.
public replaceFromFilesystem ( UploadedFile $file, File $filesystemFile )
$file PartKeepr\UploadedFileBundle\Entity\UploadedFile The target file
$filesystemFile Symfony\Component\HttpFoundation\File\File The source file
    public function replaceFromFilesystem(UploadedFile $file, File $filesystemFile)
    {
        $file->setOriginalFilename($filesystemFile->getBasename());
        $file->setExtension($filesystemFile->getExtension());
        $file->setMimeType($filesystemFile->getMimeType());
        $file->setSize($filesystemFile->getSize());
        $storage = $this->getStorage($file);
        if ($filesystemFile->getSize() > $this->container->get('partkeepr_systemservice')->getFreeDiskSpace()) {
            throw new DiskSpaceExhaustedException();
        }
        $storage->write($file->getFullFilename(), file_get_contents($filesystemFile->getPathname()), true);
    }

Usage Example

 protected function createManufacturer($manufacturerName, $manufacturerData)
 {
     $manufacturer = new Manufacturer();
     $manufacturer->setName($manufacturerName);
     if (array_key_exists('iclogos', $manufacturerData)) {
         foreach ($manufacturerData['iclogos'] as $icLogo) {
             $manufacturerIcLogo = new ManufacturerICLogo();
             $file = $this->kernel->locateResource(self::MANUFACTURER_PATH . $icLogo);
             $this->uploadedFileService->replaceFromFilesystem($manufacturerIcLogo, new File($file));
             $manufacturer->addIcLogo($manufacturerIcLogo);
         }
     }
     $this->entityManager->persist($manufacturer);
 }
All Usage Examples Of PartKeepr\UploadedFileBundle\Services\UploadedFileService::replaceFromFilesystem