/**
  * {@inheritdoc}
  */
 public function create(\SplFileInfo $rawFile, array $pathInfo, $destFsAlias)
 {
     if ($rawFile instanceof UploadedFile) {
         $size = $rawFile->getClientSize();
         $mimeType = $rawFile->getMimeType();
         $originalFilename = $rawFile->getClientOriginalName();
         $extension = $rawFile->getClientOriginalExtension();
     } else {
         $size = filesize($rawFile->getPathname());
         $mimeType = MimeTypeGuesser::getInstance()->guess($rawFile->getPathname());
         $originalFilename = $rawFile->getFilename();
         $extension = $rawFile->getExtension();
     }
     $file = new $this->fileClass();
     $file->setKey($pathInfo['path'] . $pathInfo['file_name']);
     $file->setGuid($pathInfo['guid']);
     $file->setMimeType($mimeType);
     $file->setOriginalFilename($originalFilename);
     $file->setSize($size);
     $file->setExtension($extension);
     $file->setStorage($destFsAlias);
     return $file;
 }
 /**
  * Gets the mime type of the object. Defaults to application/octet-stream.
  *
  * @param \SplFileInfo $object
  *
  * @return string
  */
 private function getMimeType(\SplFileInfo $object)
 {
     if ($object instanceof File) {
         return $object->getMimeType();
     }
     if ($this->mimeTypeGuesser && ($mimeType = $this->mimeTypeGuesser->guess($object->getPathname()))) {
         return $mimeType;
     }
     return 'application/octet-stream';
 }