PHP Класс Puli\Repository\FilesystemRepository

Resources can be read using their absolute file system paths: php use Puli\Repository\FilesystemRepository; $repo = new FilesystemRepository(); $resource = $repo->get('/home/puli/.gitconfig'); The returned resources implement {@link FilesystemResource}. Optionally, a root directory can be passed to the constructor. Then all paths will be read relative to that directory: php $repo = new FilesystemRepository('/home/puli'); $resource = $repo->get('/.gitconfig'); While "." and ".." segments are supported, files outside the root directory cannot be read. Any leading ".." segments will simply be stripped off.
С версии: 1.0
Автор: Bernhard Schussek ([email protected])
Наследование: implements Puli\Repository\Api\EditableRepository
Показать файл Открыть проект Примеры использования класса

Открытые методы

Метод Описание
__construct ( string $baseDir = '/', boolean $symlink = true, boolean $relative = true, Puli\Repository\Api\ChangeStream\ChangeStream $changeStream = null ) Creates a new repository.
add ( $path, $resource )
clear ( )
contains ( $query, $language = 'glob' )
find ( $query, $language = 'glob' )
get ( $path )
hasChildren ( $path )
isSymlinkSupported ( ) : boolean Returns whether symlinks are supported in the local environment.
listChildren ( $path )
remove ( $query, $language = 'glob' )

Приватные методы

Метод Описание
addResource ( $path, Puli\Repository\Api\Resource\PuliResource $resource, $checkParentsForSymlinks = true )
createResource ( $filesystemPath, $path )
ensureDirectoryExists ( $path )
getDirectoryIterator ( $filesystemPath )
getFilesystemPath ( $path )
getGlobIterator ( $query, $language )
getPath ( $filesystemPath )
iteratorToCollection ( Iterator $iterator )
readLink ( $filesystemPath )
removeResource ( $filesystemPath, &$removed )
replaceLinkByCopy ( $path, array $dirsToKeep = [] )
replaceParentSymlinksByCopies ( $path )
symlinkMirror ( $origin, $target, array $dirsToKeep = [] )
trySymlink ( $origin, $target )

Описание методов

__construct() публичный метод

Creates a new repository.
public __construct ( string $baseDir = '/', boolean $symlink = true, boolean $relative = true, Puli\Repository\Api\ChangeStream\ChangeStream $changeStream = null )
$baseDir string The base directory of the repository on the file system.
$symlink boolean Whether to use symbolic links for added files. If symbolic links are not supported on the current system, the repository will create hard copies instead.
$relative boolean Whether to create relative symbolic links. If relative links are not supported on the current system, the repository will create absolute links instead.
$changeStream Puli\Repository\Api\ChangeStream\ChangeStream If provided, the repository will log resources changes in this change stream.

add() публичный метод

public add ( $path, $resource )

clear() публичный метод

public clear ( )

contains() публичный метод

public contains ( $query, $language = 'glob' )

find() публичный метод

public find ( $query, $language = 'glob' )

get() публичный метод

public get ( $path )

hasChildren() публичный метод

public hasChildren ( $path )

isSymlinkSupported() публичный статический метод

Returns whether symlinks are supported in the local environment.
public static isSymlinkSupported ( ) : boolean
Результат boolean Returns `true` if symlinks are supported.

listChildren() публичный метод

public listChildren ( $path )

remove() публичный метод

public remove ( $query, $language = 'glob' )