14 class Database extends \Magento\MediaStorage\Model\File\Storage\Database\AbstractDatabase
73 \
Magento\Framework\Stdlib\DateTime\DateTime $dateModel,
75 \
Magento\MediaStorage\Helper\
File\Media $mediaHelper,
78 \
Magento\Framework\Data\Collection\AbstractDb $resourceCollection =
null,
79 $connectionName =
null,
82 $this->_directoryFactory = $directoryFactory;
83 $this->_mediaHelper = $mediaHelper;
95 $this->
_init(get_class($this->_resource));
105 if ($this->_directoryModel ===
null) {
106 $this->_directoryModel = $this->_directoryFactory->create(
145 $filename = basename($filePath);
146 $path = dirname($filePath);
205 $offset = (int)$offset >= 0 ? (
int)$offset : 0;
229 foreach (
$files as $file) {
230 if (!isset($file[
'filename']) || !strlen($file[
'filename']) || !isset($file[
'content'])) {
235 $file[
'update_time'] = $dateSingleton->date();
236 $file[
'directory_id'] = isset(
240 ) ? $this->_directoryFactory->create(
247 }
catch (\Exception $e) {
248 $this->_errors[] = $e->getMessage();
249 $this->_logger->critical($e);
267 $directory = $this->_directoryFactory->create()->loadByPath($filePath);
269 if (!$directory->getId()) {
273 $fileInfo[
'directory_id'] = $directory->getId();
287 return $this->
_getResource()->fileExists(basename($filePath), dirname($filePath));
297 public function copyFile($oldFilePath, $newFilePath)
300 basename($oldFilePath),
301 dirname($oldFilePath),
302 basename($newFilePath),
303 dirname($newFilePath)
319 basename($oldFilePath),
320 dirname($oldFilePath),
321 basename($newFilePath),
322 dirname($newFilePath)
325 $newPath = dirname($newFilePath);
326 $directory = $this->_directoryFactory->create()->loadByPath($newPath);
328 if (!$directory->getId()) {
333 if ($this->
getId()) {
334 $this->setDirectoryId($directory->getId())->
save();
348 $directory = $this->_coreFileStorageDb->getMediaRelativePath($directory);
349 return $this->
_getResource()->getDirectoryFiles($directory);
360 $filename = basename(
$path);
361 $directory = dirname(
$path);
362 $this->
_getResource()->deleteFile($filename, $directory);
375 if ($this->mediaBaseDirectory ===
null) {
376 $this->mediaBaseDirectory = $this->_coreFileStorageDb->getMediaBaseDir();
foreach($appDirs as $dir) $files