\phpDocumentorAutoloaderLocator

Summary

Methods
Properties
Constants
autoload()
findVendorPath()
findComposerConfigurationPath()
No public properties found
No constants found
No protected methods found
No protected properties found
N/A
getCustomVendorPathFromComposer()
No private properties found
N/A

Methods

autoload()

autoload() : \Composer\Autoload\ClassLoader

Returns

\Composer\Autoload\ClassLoader —

findVendorPath()

findVendorPath(string  $baseDir = __DIR__) : string

Attempts to find the location of the vendor folder.

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 {@link 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 {@link COMPOSER environment variable}). If this file contains a {@link 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

string $baseDir

parameter for test purposes only.

Throws

\RuntimeException

If the vendor directory is not findable.

Returns

string —

The vendor directory path

findComposerConfigurationPath()

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'.

Returns

string —

getCustomVendorPathFromComposer()

getCustomVendorPathFromComposer(string  $composerConfigurationPath) : 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'.

Parameters

string $composerConfigurationPath

the path pointing to the composer.json

Returns

string —