ILIAS  release_8 Revision v8.19-1-g4e8f2f9140c
All Data Structures Namespaces Files Functions Variables Modules Pages
ILIAS\Filesystem\FilesystemFacade Class Reference

Class FilesystemFacade. More...

+ Inheritance diagram for ILIAS\Filesystem\FilesystemFacade:
+ Collaboration diagram for ILIAS\Filesystem\FilesystemFacade:

Public Member Functions

 __construct (FileStreamAccess $fileStreamAccess, FileAccess $fileAccess, DirectoryAccess $directoryAccess)
 FilesystemFacade constructor. More...
 
 hasDir (string $path)
 
 listContents (string $path='', bool $recursive=false)
 
 createDir (string $path, string $visibility=Visibility::PUBLIC_ACCESS)
 
 copyDir (string $source, string $destination)
 
 deleteDir (string $path)
 
 read (string $path)
 
 has (string $path)
 
 getMimeType (string $path)
 
 getTimestamp (string $path)
 
 getSize (string $path, int $fileSizeUnit)
 
 setVisibility (string $path, string $visibility)
 
 getVisibility (string $path)
 
 readStream (string $path)
 
 writeStream (string $path, FileStream $stream)
 
 putStream (string $path, FileStream $stream)
 
 updateStream (string $path, FileStream $stream)
 
 write (string $path, string $content)
 
 update (string $path, string $new_content)
 
 put (string $path, string $content)
 
 delete (string $path)
 
 readAndDelete (string $path)
 
 rename (string $path, string $new_path)
 
 copy (string $path, string $copy_path)
 
 finder ()
 

Private Attributes

FileStreamAccess $fileStreamAccess
 
FileAccess $fileAccess
 
DirectoryAccess $directoryAccess
 

Detailed Description

Class FilesystemFacade.

The filesystem facade is used internally to satisfy the Filesystem interface because the implementations are split into different classes to reduce the size and responsibility of each class.

This class simply delegates the work to the classes which are responsible for the task.

Author
Nicolas Schäfli ns@st.nosp@m.uder.nosp@m.-raim.nosp@m.ann..nosp@m.ch
Since
5.3
Version
1.0.0

Definition at line 41 of file FilesystemFacade.php.

Constructor & Destructor Documentation

◆ __construct()

ILIAS\Filesystem\FilesystemFacade::__construct ( FileStreamAccess  $fileStreamAccess,
FileAccess  $fileAccess,
DirectoryAccess  $directoryAccess 
)

FilesystemFacade constructor.

Creates a new instance of the facade with the provided access classes.

Parameters
FileStreamAccess$fileStreamAccess
FileAccess$fileAccess
DirectoryAccess$directoryAccess

Definition at line 57 of file FilesystemFacade.php.

References ILIAS\Filesystem\FilesystemFacade\$directoryAccess, ILIAS\Filesystem\FilesystemFacade\$fileAccess, and ILIAS\Filesystem\FilesystemFacade\$fileStreamAccess.

58  {
59  $this->fileStreamAccess = $fileStreamAccess;
60  $this->fileAccess = $fileAccess;
61  $this->directoryAccess = $directoryAccess;
62  }

Member Function Documentation

◆ copy()

ILIAS\Filesystem\FilesystemFacade::copy ( string  $path,
string  $copy_path 
)

Implements ILIAS\Filesystem\Provider\FileWriteAccess.

Definition at line 266 of file FilesystemFacade.php.

266  : void
267  {
268  $this->fileAccess->copy($path, $copy_path);
269  }
$path
Definition: ltiservices.php:32

◆ copyDir()

ILIAS\Filesystem\FilesystemFacade::copyDir ( string  $source,
string  $destination 
)

Implements ILIAS\Filesystem\Provider\DirectoryWriteAccess.

Definition at line 95 of file FilesystemFacade.php.

95  : void
96  {
97  $this->directoryAccess->copyDir($source, $destination);
98  }
$source
Definition: metadata.php:93

◆ createDir()

ILIAS\Filesystem\FilesystemFacade::createDir ( string  $path,
string  $visibility = Visibility::PUBLIC_ACCESS 
)

Implements ILIAS\Filesystem\Provider\DirectoryWriteAccess.

Definition at line 86 of file FilesystemFacade.php.

86  : void
87  {
88  $this->directoryAccess->createDir($path, $visibility);
89  }
$path
Definition: ltiservices.php:32

◆ delete()

ILIAS\Filesystem\FilesystemFacade::delete ( string  $path)

Implements ILIAS\Filesystem\Provider\FileWriteAccess.

Definition at line 239 of file FilesystemFacade.php.

References $path.

239  : void
240  {
241  $this->fileAccess->delete($path);
242  }
$path
Definition: ltiservices.php:32

◆ deleteDir()

ILIAS\Filesystem\FilesystemFacade::deleteDir ( string  $path)

Implements ILIAS\Filesystem\Provider\DirectoryWriteAccess.

Definition at line 104 of file FilesystemFacade.php.

104  : void
105  {
106  $this->directoryAccess->deleteDir($path);
107  }
$path
Definition: ltiservices.php:32

◆ finder()

ILIAS\Filesystem\FilesystemFacade::finder ( )

Implements ILIAS\Filesystem\Filesystem.

Definition at line 274 of file FilesystemFacade.php.

274  : Finder
275  {
276  return new Finder($this);
277  }

◆ getMimeType()

ILIAS\Filesystem\FilesystemFacade::getMimeType ( string  $path)

Implements ILIAS\Filesystem\Provider\FileReadAccess.

Definition at line 131 of file FilesystemFacade.php.

131  : string
132  {
133  return $this->fileAccess->getMimeType($path);
134  }
$path
Definition: ltiservices.php:32

◆ getSize()

ILIAS\Filesystem\FilesystemFacade::getSize ( string  $path,
int  $fileSizeUnit 
)

Implements ILIAS\Filesystem\Provider\FileReadAccess.

Definition at line 149 of file FilesystemFacade.php.

References ILIAS\Data\DataSize\getSize().

149  : DataSize
150  {
151  return $this->fileAccess->getSize($path, $fileSizeUnit);
152  }
$path
Definition: ltiservices.php:32
+ Here is the call graph for this function:

◆ getTimestamp()

ILIAS\Filesystem\FilesystemFacade::getTimestamp ( string  $path)

Implements ILIAS\Filesystem\Provider\FileReadAccess.

Definition at line 140 of file FilesystemFacade.php.

140  : \DateTimeImmutable
141  {
142  return $this->fileAccess->getTimestamp($path);
143  }
$path
Definition: ltiservices.php:32

◆ getVisibility()

ILIAS\Filesystem\FilesystemFacade::getVisibility ( string  $path)

Implements ILIAS\Filesystem\Provider\FileReadAccess.

Definition at line 167 of file FilesystemFacade.php.

167  : string
168  {
169  return $this->fileAccess->getVisibility($path);
170  }
$path
Definition: ltiservices.php:32

◆ has()

ILIAS\Filesystem\FilesystemFacade::has ( string  $path)

Implements ILIAS\Filesystem\Provider\FileReadAccess.

Definition at line 122 of file FilesystemFacade.php.

122  : bool
123  {
124  return $this->fileAccess->has($path);
125  }
$path
Definition: ltiservices.php:32

◆ hasDir()

ILIAS\Filesystem\FilesystemFacade::hasDir ( string  $path)

Implements ILIAS\Filesystem\Provider\DirectoryReadAccess.

Definition at line 68 of file FilesystemFacade.php.

68  : bool
69  {
70  return $this->directoryAccess->hasDir($path);
71  }
$path
Definition: ltiservices.php:32

◆ listContents()

ILIAS\Filesystem\FilesystemFacade::listContents ( string  $path = '',
bool  $recursive = false 
)

Implements ILIAS\Filesystem\Provider\DirectoryReadAccess.

Definition at line 77 of file FilesystemFacade.php.

References $path.

77  : array
78  {
79  return $this->directoryAccess->listContents($path, $recursive);
80  }
$path
Definition: ltiservices.php:32

◆ put()

ILIAS\Filesystem\FilesystemFacade::put ( string  $path,
string  $content 
)

Implements ILIAS\Filesystem\Provider\FileWriteAccess.

Definition at line 230 of file FilesystemFacade.php.

230  : void
231  {
232  $this->fileAccess->put($path, $content);
233  }
$path
Definition: ltiservices.php:32

◆ putStream()

ILIAS\Filesystem\FilesystemFacade::putStream ( string  $path,
FileStream  $stream 
)

Implements ILIAS\Filesystem\Provider\FileStreamWriteAccess.

Definition at line 194 of file FilesystemFacade.php.

194  : void
195  {
196  $this->fileStreamAccess->putStream($path, $stream);
197  }
$path
Definition: ltiservices.php:32

◆ read()

ILIAS\Filesystem\FilesystemFacade::read ( string  $path)

Implements ILIAS\Filesystem\Provider\FileReadAccess.

Definition at line 113 of file FilesystemFacade.php.

113  : string
114  {
115  return $this->fileAccess->read($path);
116  }
$path
Definition: ltiservices.php:32

◆ readAndDelete()

ILIAS\Filesystem\FilesystemFacade::readAndDelete ( string  $path)

Implements ILIAS\Filesystem\Provider\FileWriteAccess.

Definition at line 248 of file FilesystemFacade.php.

248  : string
249  {
250  return $this->fileAccess->readAndDelete($path);
251  }
$path
Definition: ltiservices.php:32

◆ readStream()

ILIAS\Filesystem\FilesystemFacade::readStream ( string  $path)

Implements ILIAS\Filesystem\Provider\FileStreamReadAccess.

Definition at line 176 of file FilesystemFacade.php.

176  : FileStream
177  {
178  return $this->fileStreamAccess->readStream($path);
179  }
$path
Definition: ltiservices.php:32

◆ rename()

ILIAS\Filesystem\FilesystemFacade::rename ( string  $path,
string  $new_path 
)

Implements ILIAS\Filesystem\Provider\FileWriteAccess.

Definition at line 257 of file FilesystemFacade.php.

257  : void
258  {
259  $this->fileAccess->rename($path, $new_path);
260  }
$path
Definition: ltiservices.php:32

◆ setVisibility()

ILIAS\Filesystem\FilesystemFacade::setVisibility ( string  $path,
string  $visibility 
)

Implements ILIAS\Filesystem\Provider\FileReadAccess.

Definition at line 158 of file FilesystemFacade.php.

158  : bool
159  {
160  return $this->fileAccess->setVisibility($path, $visibility);
161  }
$path
Definition: ltiservices.php:32

◆ update()

ILIAS\Filesystem\FilesystemFacade::update ( string  $path,
string  $new_content 
)

Implements ILIAS\Filesystem\Provider\FileWriteAccess.

Definition at line 221 of file FilesystemFacade.php.

221  : void
222  {
223  $this->fileAccess->update($path, $new_content);
224  }
$path
Definition: ltiservices.php:32

◆ updateStream()

ILIAS\Filesystem\FilesystemFacade::updateStream ( string  $path,
FileStream  $stream 
)

Implements ILIAS\Filesystem\Provider\FileStreamWriteAccess.

Definition at line 203 of file FilesystemFacade.php.

203  : void
204  {
205  $this->fileStreamAccess->updateStream($path, $stream);
206  }
$path
Definition: ltiservices.php:32

◆ write()

ILIAS\Filesystem\FilesystemFacade::write ( string  $path,
string  $content 
)

Implements ILIAS\Filesystem\Provider\FileWriteAccess.

Definition at line 212 of file FilesystemFacade.php.

212  : void
213  {
214  $this->fileAccess->write($path, $content);
215  }
$path
Definition: ltiservices.php:32

◆ writeStream()

ILIAS\Filesystem\FilesystemFacade::writeStream ( string  $path,
FileStream  $stream 
)

Implements ILIAS\Filesystem\Provider\FileStreamWriteAccess.

Definition at line 185 of file FilesystemFacade.php.

185  : void
186  {
187  $this->fileStreamAccess->writeStream($path, $stream);
188  }
$path
Definition: ltiservices.php:32

Field Documentation

◆ $directoryAccess

DirectoryAccess ILIAS\Filesystem\FilesystemFacade::$directoryAccess
private

Definition at line 45 of file FilesystemFacade.php.

Referenced by ILIAS\Filesystem\FilesystemFacade\__construct().

◆ $fileAccess

FileAccess ILIAS\Filesystem\FilesystemFacade::$fileAccess
private

Definition at line 44 of file FilesystemFacade.php.

Referenced by ILIAS\Filesystem\FilesystemFacade\__construct().

◆ $fileStreamAccess

FileStreamAccess ILIAS\Filesystem\FilesystemFacade::$fileStreamAccess
private

Definition at line 43 of file FilesystemFacade.php.

Referenced by ILIAS\Filesystem\FilesystemFacade\__construct().


The documentation for this class was generated from the following file: