AutoloaderLocator
in package
Table of Contents
- autoload() : ClassLoader
- findComposerConfigurationPath() : string
- Retrieves the custom composer configuration path based on the {@link https://getcomposer.org/doc/03-cli.md#composer COMPOSER environment variable} or returns the default 'composer.json'.
- findVendorPath() : string
- Attempts to find the location of the vendor folder.
- getCustomVendorPathFromComposer() : string
- Retrieves the custom vendor directory name from the {@link https://getcomposer.org/doc/03-cli.md#composer-vendor-dir COMPOSER_VENDOR_DIR environment variable}, from the {@link https://getcomposer.org/doc/06-config.md#vendor-dir vendor-dir entry} of the given composer.json, or returns 'vendor'.
Methods
autoload()
public
static autoload() : ClassLoader
Return values
ClassLoader —findComposerConfigurationPath()
Retrieves the custom composer configuration path based on the {@link https://getcomposer.org/doc/03-cli.md#composer COMPOSER environment variable} or returns the default 'composer.json'.
public
static findComposerConfigurationPath() : string
Return values
string —findVendorPath()
Attempts to find the location of the vendor folder.
public
static findVendorPath([string $baseDir = __DIR__ ]) : string
This method tries to check for a autoload.php in a directory 4 levels above the folder of this Bootstrap file. This is the expected location if phpDocumentor is installed using composer because the current directory for this file is expected to be 'vendor/phpdocumentor/phpdocumentor/src/phpDocumentor'. This approach will work independently from the name of the vendor directory.
If not found, it will get the value of a COMPOSER_VENDOR_DIR environment variable and use it as vendor directory name if not empty.
If it's not specified, it will check if it is a standalone install (e.g. via git) and will look for a composer.json file 2 levels above as we are supposed to be in 'src/phpDocumentor' (The configuration file can be named differently based on the COMPOSER environment variable). If this file contains a vendor-dir entry, its value will be used for the vendor directory location.
If none of these has a specified value, it will use the default 'vendor' directory name.
Finally, if the directory doesn't exist, it will throw an exception.
Parameters
- $baseDir : string = __DIR__
-
parameter for test purposes only.
Tags
Return values
string —The vendor directory path
getCustomVendorPathFromComposer()
Retrieves the custom vendor directory name from the {@link https://getcomposer.org/doc/03-cli.md#composer-vendor-dir COMPOSER_VENDOR_DIR environment variable}, from the {@link https://getcomposer.org/doc/06-config.md#vendor-dir vendor-dir entry} of the given composer.json, or returns 'vendor'.
private
static getCustomVendorPathFromComposer(string $composerConfigurationPath) : string
Parameters
- $composerConfigurationPath : string
-
the path pointing to the composer.json