AbstractFileIDHelper
abstract class AbstractFileIDHelper implements FileIDHelper (View source)
Traits
A class that can be instantiated or replaced via DI
Constants
EXTENSION_REWRITE_VARIANT |
A variant type for encoding a variant filename with a different extension than the original. |
protected EXTENSION_ORIGINAL |
Use the original file's extension |
protected EXTENSION_VARIANT |
Use the variant file's extension |
Methods
An implementation of the factory method, allows you to create an instance of a class
Creates a class instance by the "singleton" design pattern.
Map file tuple (hash, name, variant) to a filename to be used by flysystem
Get the original file's filename with the extension rewritten to be the same as either the original or the variant extension.
Clean up filename to remove constructs that might clash with the underlying path format of this FileIDHelper.
Specify if this File ID Helper stores variants in subfolders and require a recursive look up to find all variants.
Details
static Injectable
create(mixed ...$args)
An implementation of the factory method, allows you to create an instance of a class
This method will defer class substitution to the Injector API, which can be customised via the Config API to declare substitution classes.
This can be called in one of two ways - either calling via the class directly, or calling on Object and passing the class name as the first parameter. The following are equivalent: $list = DataList::create(SiteTree::class); $list = SiteTree::get();
static Injectable
singleton(string $class = null)
Creates a class instance by the "singleton" design pattern.
It will always return the same instance for this class, which can be used for performance reasons and as a simple way to access instance methods which don't rely on instance data (e.g. the custom SilverStripe static handling).
string
buildFileID(string|ParsedFileID $filename, string $hash = null, string $variant = null, bool $cleanfilename = true)
Map file tuple (hash, name, variant) to a filename to be used by flysystem
protected string
swapExtension(string $filename, string $variant, int $extIndex)
Get the original file's filename with the extension rewritten to be the same as either the original or the variant extension.
string
cleanFilename(string $filename)
Clean up filename to remove constructs that might clash with the underlying path format of this FileIDHelper.
bool
lookForVariantRecursive()
Specify if this File ID Helper stores variants in subfolders and require a recursive look up to find all variants.
abstract protected string
getFileIDBase($shortFilename, $fullFilename, $hash, $variant)
No description
abstract protected void
validateFileParts($filename, $hash, $variant)
No description