b374k
m1n1 1.01
Apache/2.4.41 (Ubuntu)
Linux vmi616275.contaboserver.net 5.4.0-84-generic #94-Ubuntu SMP Thu Aug 26 20:27:37 UTC 2021 x86_64
uid=33(www-data) gid=33(www-data) groups=33(www-data)
server ip : 62.171.164.128 | your ip : 127.0.0.1
safemode OFF
 >  / home / dev2.destoffenstraat.com / vendor / magento / framework /
Filename/home/dev2.destoffenstraat.com/vendor/magento/framework/Filesystem.php
Size3.47 kb
Permissionrw-r--r--
Ownerroot : root
Create time17-Aug-2025 10:26
Last modified07-Jan-2021 21:10
Last accessed23-Aug-2025 00:28
Actionsedit | rename | delete | download (gzip)
Viewtext | code | image
<?php
/**
* Magento filesystem facade
*
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
namespace Magento\Framework;

use Magento\Framework\Filesystem\DriverPool;

/**
* @api
* @since 100.0.2
*/
class Filesystem
{
/**
* @var \Magento\Framework\Filesystem\DirectoryList
*/
protected $directoryList;

/**
* @var \Magento\Framework\Filesystem\Directory\ReadFactory
*/
protected $readFactory;

/**
* @var \Magento\Framework\Filesystem\Directory\WriteFactory
*/
protected $writeFactory;

/**
* @var \Magento\Framework\Filesystem\Directory\ReadInterface[]
*/
protected $readInstances = [];

/**
* @var \Magento\Framework\Filesystem\Directory\WriteInterface[]
*/
protected $writeInstances = [];

/**
* @param Filesystem\DirectoryList $directoryList
* @param Filesystem\Directory\ReadFactory $readFactory
* @param Filesystem\Directory\WriteFactory $writeFactory
*/
public function __construct(
\Magento\Framework\Filesystem\DirectoryList $directoryList,
\Magento\Framework\Filesystem\Directory\ReadFactory $readFactory,
\Magento\Framework\Filesystem\Directory\WriteFactory $writeFactory
) {
$this->directoryList = $directoryList;
$this->readFactory = $readFactory;
$this->writeFactory = $writeFactory;
}

/**
* Create an instance of directory with read permissions
*
* @param string $directoryCode
* @param string $driverCode
* @return \Magento\Framework\Filesystem\Directory\ReadInterface
*/
public function getDirectoryRead($directoryCode, $driverCode = DriverPool::FILE)
{
$code = $directoryCode . '_' . $driverCode;
if (!array_key_exists($code, $this->readInstances)) {
$this->readInstances[$code] = $this->readFactory->create($this->getDirPath($directoryCode), $driverCode);
}
return $this->readInstances[$code];
}

/**
* Create an instance of directory with read permissions by path.
*
* @param string $path
* @param string $driverCode
*
* @return \Magento\Framework\Filesystem\Directory\ReadInterface
*
* @since 102.0.0
*/
public function getDirectoryReadByPath($path, $driverCode = DriverPool::FILE)
{
return $this->readFactory->create($path, $driverCode);
}

/**
* Create an instance of directory with write permissions
*
* @param string $directoryCode
* @param string $driverCode
* @return \Magento\Framework\Filesystem\Directory\WriteInterface
* @throws \Magento\Framework\Exception\FileSystemException
*/
public function getDirectoryWrite($directoryCode, $driverCode = DriverPool::FILE)
{
$code = $directoryCode . '_' . $driverCode;
if (!array_key_exists($code, $this->writeInstances)) {
$this->writeInstances[$code] = $this->writeFactory->create($this->getDirPath($directoryCode), $driverCode);
}
return $this->writeInstances[$code];
}

/**
* Gets configuration of a directory
*
* @param string $code
* @return string
*/
protected function getDirPath($code)
{
return $this->directoryList->getPath($code);
}

/**
* Retrieve uri for given code
*
* @param string $code
* @return string
*/
public function getUri($code)
{
return $this->directoryList->getUrlPath($code);
}
}