FileCache
class FileCache implementsFileCache
The file cache.
Properties
protectedarray | $config | File cache configuration. | |
protectedFilesystem | $files | The Filesytem instance to use | |
protectedFilesystemManager | $storage | File FilesystemManager instance to use |
Methods
Create an instance.
Perform a callback with the paths of many cached files. Use this to prevent pruning of the files while they are processed.
Like batch
but deletes the cached files afterwards (if they are not used
somewhere else).
Remove cached files that are too old or exceed the maximum cache size.
Delete all unused cached files.
Get path and handle for a file that exists in the cache.
Get path and handle for a file that does not yet exist in the cache.
Cache an file from a storage disk and get the path to the cached file. Files from local disks are not cached.
Store the file from the given resource to a cached file.
Creates the cache directory if it doesn't exist yet.
Get the stream resource for an file.
Details
at line49
__construct(array$config =[],Filesystem$files =null,FilesystemManager$storage =null)
Create an instance.
at line59
bool
exists(File$file)
Check if a file exists.
at line71
mixed
get(File$file,callable$callback)
Perform a callback with the path of a cached file. This takes care of shared locks on the cached file file so it is not corrupted due to concurrent write operations.
at line81
mixed
getOnce(File$file,callable$callback)
Like get
but deletes the cached file afterwards (if it is not used somewhere
else).
at line91
resource
getStream(File$file)
Get a stream resource for an file. If the file is cached, the resource points to the cached file instead. This will not cache uncached files. Make sure to close the streams!
at line123
mixed
batch(array$files,callable$callback)
Perform a callback with the paths of many cached files. Use this to prevent pruning of the files while they are processed.
at line147
mixed
batchOnce(array$files,callable$callback)
Like batch
but deletes the cached files afterwards (if they are not used
somewhere else).
at line181
prune()
Remove cached files that are too old or exceed the maximum cache size.
at line232
clear()
Delete all unused cached files.
at line256
protectedbool
existsRemote(File$file)
Check for existence of a remte file.
at line290
protectedbool
existsDisk(File$file)
Check for existence of a file from a storage disk.
at line324
protectedbool
delete(SplFileInfo$file)
Delete a cached file it it is not used.
at line353
protectedarray
retrieve(File$file)
Cache a remote or cloud storage file if it is not cached and get the path to the cached file. If the file is local, nothing will be done and the path to the local file will be returned.
at line406
protectedarray
retrieveExistingFile(string$cachedPath,resource$handle)
Get path and handle for a file that exists in the cache.
at line427
protectedarray
retrieveNewFile(File$file,string$cachedPath,resource$handle)
Get path and handle for a file that does not yet exist in the cache.
at line465
protectedstring
getRemoteFile(File$file,resource$target)
Cache a remote file and get the path to the cached file.
at line489
protectedstring
getDiskFile(File$file,resource$target)
Cache an file from a storage disk and get the path to the cached file. Files from local disks are not cached.
at line523
protectedstring
cacheFromResource(File$file,resource$source,resource$target)
Store the file from the given resource to a cached file.
at line551
protected
ensurePathExists()
Creates the cache directory if it doesn't exist yet.
at line565
protectedstring
getCachedPath(File$file)
Get the path to the cached file file.
at line580
protectedresource
getFileStream(string$url,resource|null$context =null)
Get the stream resource for an file.
at line606
protectedboolean
isRemote(File$file)
Determine if an file is remote, i.e. served by a public webserver.
at line618
protectedFilesystem
getDisk(File$file)
Get the storage disk on which a file is stored.