FileManagerInterface.php 2.32 KiB
<?php
/**
 * Copyright (C) 2015 IRSTEA
 * All rights reserved.
 * @package irstea/file-upload-bundle
 * @author Guillaume Perréal <guillaume.perreal@irstea.fr>
 */
namespace Irstea\FileUploadBundle\Model;
/**
 * Gestionnaire de fichier uploadé.
 * Cette interface est le point d'entrée obligatoire pour toute manipulation de fichiers uploadés.
interface FileManagerInterface
{les
    /** Retrouve un fichier uploadé par son identifiant.
     * @param string $id Identifiant du fichier.
     * @return UploadedFileInterfaceǹull Le fichier retrouvé ou null si aucun fichier ne correspond.
     * @api
    public function get($id);
    /** Crée un nouveau fichier uploadé, vide.
     * Le fichier est créé à l'état UploadedFileInterface::ETAT_EN_COURS.
     * @param string $name Nom original du fichier.
     * @param int $size Taille prévisionnelle, en octets.
     * @param string $mimeType Mime TYPE provisoire.
     * @param int $lastModified Timestamp de la date de dernière modification.
     * @return UploadedFileInterface Le fichier créé.
     * @api
    public function create($name, $size, $mimeType, $lastModified = null, $createdBy = null, $createdFrom = null);
    /** Supprime un fichier uploadé.
     * *Attention :* le fichier est supprimé du disque !
     * @param UploadedFileInterface $file Fichier à supprimer.
     * @api
    public function delete(UploadedFileInterface $file);
    /** Indique que l'upload d'un fichier est terminé.
     * Cela passe le fichier à l'état UploadedFileInterface::ORPHELIN et provoque la mise-à-jour de la taille, du
     * type MIME et de la somme de contrôle.
     * @param UploadedFileInterface $file Fichier terminé.
     * @internal
    public function completed(UploadedFileInterface $file);
    /** Retourne une liste de fichiers invalides à supprimer.
     * Ce sont des fichiers partiels ou orphelin qui n'ont pas été modifiés depuis plus d'une heure.
     * @return UploadedFileInterface[]
71727374757677787980818283
* @internal */ public function findGarbage(); /** Retourne la liste des fichiers à valider. * * @return UploadedFileInterface[] * * @internal */ public function findFilesToValidate(); }