Skip to content
Snippets Groups Projects
Commit 19cfe74b authored by Robin Appelman's avatar Robin Appelman
Browse files

Add per-autoloader classPath

parent 0b5f6b9c
Branches
No related tags found
No related merge requests found
......@@ -9,13 +9,34 @@
namespace OC;
class Autoloader {
private $classPaths = array();
/**
* Add a custom classpath to the autoloader
*
* @param string $class
* @param string $path
*/
public function registerClass($class, $path) {
$this->classPaths[$class] = $path;
}
/**
* Load the specified class
*
* @param string $class
* @return bool
*/
public function load($class) {
$class = trim($class, '\\');
if (array_key_exists($class, \OC::$CLASSPATH)) {
if (array_key_exists($class, $this->classPaths)) {
$path = $this->classPaths[$class];
} else if (array_key_exists($class, \OC::$CLASSPATH)) {
$path = \OC::$CLASSPATH[$class];
/** @TODO: Remove this when necessary
Remove "apps/" from inclusion path for smooth migration to mutli app dir
/**
* @TODO: Remove this when necessary
* Remove "apps/" from inclusion path for smooth migration to mutli app dir
*/
if (strpos($path, 'apps/') === 0) {
\OC_Log::write('core', 'include path for class "' . $class . '" starts with "apps/"', \OC_Log::DEBUG);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment