FileIDHelperResolutionStrategy
class FileIDHelperResolutionStrategy implements FileResolutionStrategy (View source)
File resolution strategy that relies on a list of FileIDHelpers to find files.
DefaultFileIDHelperis the default helper use to generate new file ID.ResolutionFileIDHelperscan contain a list of helpers that will be used to try to find existing file.
This file resolution strategy can be helpful when the approach to resolving files has changed over time and you need older file format to resolve.
You may also provide a VersionedStage to only look at files that were published.
Traits
Provides extensions to this object to integrate it with standard config API methods.
A class that can be instantiated or replaced via DI
Config options
| dependencies | 
Properties
Methods
Get a configuration accessor for this class. Short hand for Config::inst()->get($this->class, .....).
Gets the uninherited value for the given config option
An implementation of the factory method, allows you to create an instance of a class
Creates a class instance by the "singleton" design pattern.
Try to resolve a file ID against the provided Filesystem.
Try to resolve a file ID against the provided Filesystem looking at newer versions of the file.
Build a file ID for a variant so it follows the pattern of its original file. The variant may not exist on the Filesystem yet, but the original file has to. This is to make sure that variant files always follow the same pattern as the original file they are attached to.
Try to find a file ID for an existing file using the provided file tuple.
Build a file ID for the provided tuple, irrespective of its existence.
Find all the variants of the provided tuple
Normalise a filename to be consistent with this file resolution strategy.
Try to resolve the provided file ID string irrespective of whether it exists on the Filesystem or not.
Given a fileID string or a Parsed File ID, create a matching ParsedFileID without any variant.
Details
        
                static            Config_ForClass
    config()
        
    
    Get a configuration accessor for this class. Short hand for Config::inst()->get($this->class, .....).
        
                            mixed
    stat(string $name)
        deprecated
    
    deprecated
Get inherited config value
        
                            mixed
    uninherited(string $name)
        
    
    Gets the uninherited value for the given config option
        
                            $this
    set_stat(string $name, mixed $value)
        deprecated
    
    deprecated
Update the config value for a given property
        
                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).
        
                            
    __construct()
        
    
    No description
        
                            
    setFileHashingService($service)
        
    
    No description
        
                            ParsedFileID|null
    resolveFileID(string $fileID, Filesystem $filesystem)
        
    
    Try to resolve a file ID against the provided Filesystem.
        
                            ParsedFileID|null
    softResolveFileID(string $fileID, Filesystem $filesystem)
        
    
    Try to resolve a file ID against the provided Filesystem looking at newer versions of the file.
        
                            ParsedFileID
    generateVariantFileID(ParsedFileID|array $tuple, Filesystem $fs)
        
    
    Build a file ID for a variant so it follows the pattern of its original file. The variant may not exist on the Filesystem yet, but the original file has to. This is to make sure that variant files always follow the same pattern as the original file they are attached to.
        
                            ParsedFileID|null
    searchForTuple(array|ParsedFileID $tuple, Filesystem $filesystem, bool $strict = true)
        
    
    Try to find a file ID for an existing file using the provided file tuple.
        
                            FileIDHelper
    getDefaultFileIDHelper()
        
    
    No description
        
                            
    setDefaultFileIDHelper(FileIDHelper $defaultFileIDHelper)
        
    
    No description
        
                            FileIDHelper[]
    getResolutionFileIDHelpers()
        
    
    No description
        
                            
    setResolutionFileIDHelpers(array $resolutionFileIDHelpers)
        
    
    No description
        
                            string
    getVersionedStage()
        
    
    No description
        
                            
    setVersionedStage(string $versionedStage)
        
    
    No description
        
                            string
    buildFileID(array|ParsedFileID $tuple)
        
    
    Build a file ID for the provided tuple, irrespective of its existence.
Should always return the preferred file ID for this resolution strategy.
        
                            generator|ParsedFileID[]|null
    findVariants(array|ParsedFileID $tuple, Filesystem $filesystem)
        
    
    Find all the variants of the provided tuple
        
                            string
    cleanFilename(string $filename)
        
    
    Normalise a filename to be consistent with this file resolution strategy.
        
                            ParsedFileID
    parseFileID($fileID)
        
    
    Try to resolve the provided file ID string irrespective of whether it exists on the Filesystem or not.
        
                            ParsedFileID|null
    stripVariant(string|ParsedFileID $fileID)
        
    
    Given a fileID string or a Parsed File ID, create a matching ParsedFileID without any variant.