src/Entity/FileManager.php line 24

Open in your IDE?
  1. <?php
  2. /**
  3.  * @package BLUUE
  4.  * @author Thomas HERISSON (contact@scaledev.fr)
  5.  * @copyright 2021 - ScaleDEV SAS, 12 RUE CHARLES MORET, 10120 ST ANDRE LES VERGERS
  6.  * @license commercial
  7.  */
  8. declare(strict_types=1);
  9. namespace App\Entity;
  10. use App\Repository\FileManagerRepository;
  11. use Doctrine\ORM\Mapping as ORM;
  12. use Gedmo\SoftDeleteable\Traits\SoftDeleteable;
  13. use Gedmo\Timestampable\Traits\TimestampableEntity;
  14. use Symfony\Bridge\Doctrine\IdGenerator\UuidGenerator;
  15. use Symfony\Component\Uid\Uuid;
  16. /**
  17.  * @ORM\Entity(repositoryClass=FileManagerRepository::class)
  18.  */
  19. class FileManager
  20. {
  21.     use TimestampableEntity;
  22.     use SoftDeleteable;
  23.     /**
  24.      * @ORM\Id
  25.      * @ORM\Column(type="uuid")
  26.      * @ORM\GeneratedValue(strategy="CUSTOM")
  27.      * @ORM\CustomIdGenerator(class=UuidGenerator::class)
  28.      */
  29.     private ?Uuid $id null;
  30.     /**
  31.      * @ORM\Column(type="string", length=255)
  32.      */
  33.     private string $key_path;
  34.     /**
  35.      * @ORM\Column(type="text", nullable=true)
  36.      */
  37.     private string $original_filename;
  38.     /**
  39.      * @ORM\Column(type="string", length=128)
  40.      */
  41.     private string $mime_type;
  42.     /**
  43.      * @ORM\Column(type="string", length=15, nullable=true)
  44.      */
  45.     private string $extension;
  46.     /**
  47.      * @ORM\Column(type="integer", nullable=true)
  48.      */
  49.     private ?int $size null;
  50.     /**
  51.      * @ORM\Column(type="integer", nullable=true)
  52.      */
  53.     private int $width;
  54.     /**
  55.      * @ORM\Column(type="integer", nullable=true)
  56.      */
  57.     private int $height;
  58.     public function __construct()
  59.     {
  60.     }
  61.     /**
  62.      * @return Uuid|null
  63.      */
  64.     public function getId(): ?Uuid
  65.     {
  66.         return $this->id;
  67.     }
  68.     /**
  69.      * @return string|null
  70.      */
  71.     public function getKeyPath(): ?string
  72.     {
  73.         return $this->key_path;
  74.     }
  75.     /**
  76.      * @param string $key_path
  77.      * @return $this
  78.      */
  79.     public function setKeyPath(string $key_path): self
  80.     {
  81.         $this->key_path $key_path;
  82.         return $this;
  83.     }
  84.     /**
  85.      * @return string|null
  86.      */
  87.     public function getOriginalFilename(): ?string
  88.     {
  89.         return $this->original_filename;
  90.     }
  91.     /**
  92.      * @param string|null $original_filename
  93.      * @return $this
  94.      */
  95.     public function setOriginalFilename(?string $original_filename): self
  96.     {
  97.         $this->original_filename $original_filename;
  98.         return $this;
  99.     }
  100.     /**
  101.      * @return string|null
  102.      */
  103.     public function getMimeType(): ?string
  104.     {
  105.         return $this->mime_type;
  106.     }
  107.     /**
  108.      * @param string $mime_type
  109.      * @return $this
  110.      */
  111.     public function setMimeType(string $mime_type): self
  112.     {
  113.         $this->mime_type $mime_type;
  114.         return $this;
  115.     }
  116.     /**
  117.      * @return string|null
  118.      */
  119.     public function getExtension(): ?string
  120.     {
  121.         return $this->extension;
  122.     }
  123.     /**
  124.      * @param string|null $extension
  125.      * @return $this
  126.      */
  127.     public function setExtension(?string $extension): self
  128.     {
  129.         $this->extension $extension;
  130.         return $this;
  131.     }
  132.     /**
  133.      * @return int|null
  134.      */
  135.     public function getSize(): ?int
  136.     {
  137.         return $this->size;
  138.     }
  139.     /**
  140.      * @param int $size
  141.      * @return $this
  142.      */
  143.     public function setSize(int $size): self
  144.     {
  145.         $this->size $size;
  146.         return $this;
  147.     }
  148.     /**
  149.      * @return int|null
  150.      */
  151.     public function getWidth(): ?int
  152.     {
  153.         return $this->width;
  154.     }
  155.     /**
  156.      * @param int|null $width
  157.      * @return $this
  158.      */
  159.     public function setWidth(?int $width): self
  160.     {
  161.         $this->width $width;
  162.         return $this;
  163.     }
  164.     /**
  165.      * @return int|null
  166.      */
  167.     public function getHeight(): ?int
  168.     {
  169.         return $this->height;
  170.     }
  171.     /**
  172.      * @param int|null $height
  173.      * @return $this
  174.      */
  175.     public function setHeight(?int $height): self
  176.     {
  177.         $this->height $height;
  178.         return $this;
  179.     }
  180.     /**
  181.      * @return string
  182.      */
  183.     public function getName(): string
  184.     {
  185.         $name $this->getOriginalFilename();
  186.         return substr($name0strrpos($name'.'));
  187.     }
  188. }