Bolt\Controller\Backend\FileManager::processUpload PHP Method

processUpload() private method

Process an individual file upload.
private processUpload ( Bolt\Filesystem\Handler\DirectoryInterface $directory, string $filename, array $fileToProcess )
$directory Bolt\Filesystem\Handler\DirectoryInterface
$filename string
$fileToProcess array
    private function processUpload(DirectoryInterface $directory, $filename, array $fileToProcess)
    {
        $this->app['upload.namespace'] = $directory->getMountPoint();
        $handler = $this->app['upload'];
        $handler->setPrefix($directory->getPath() . '/');
        try {
            $result = $handler->process($fileToProcess);
        } catch (IOException $e) {
            $message = Trans::__('page.file-management.message.upload-not-writable', ['%TARGET%' => $directory->getPath()]);
            $this->flashes()->error($message);
            return;
        }
        if ($result->isValid()) {
            $this->flashes()->info(Trans::__('page.file-management.message.upload-success', ['%file%' => $filename]));
            // Add the file to our stack.
            try {
                $this->app['stack']->add($directory->getFile($filename));
            } catch (FileNotStackableException $e) {
                // Doesn't matter. Just trying to help the user.
            }
            $result->confirm();
        } else {
            foreach ($result->getMessages() as $message) {
                $this->flashes()->error((string) $message);
            }
        }
    }