Loader that loads classes of the * specified namespace. * * @param string $namespace The namespace to use. * @param null $includePath */ public function __construct($namespace = 'VirtualFileSystem', $includePath = null) { $this->namespace = $namespace; $this->includePath = $includePath; } /** * Sets the namespace separator used by classes in the namespace of this class loader. * * @param string $sep The separator to use. */ public function setNamespaceSeparator($sep) { $this->namespaceSeparator = $sep; } /** * Gets the namespace seperator used by classes in the namespace of this class loader. * * @return string */ public function getNamespaceSeparator() { return $this->namespaceSeparator; } /** * Sets the base include path for all class files in the namespace of this class loader. * * @param string $includePath */ public function setIncludePath($includePath) { $this->includePath = $includePath; } /** * Gets the base include path for all class files in the namespace of this class loader. * * @return null|string $includePath */ public function getIncludePath() { return $this->includePath; } /** * Sets the file extension of class files in the namespace of this class loader. * * @param string $fileExtension */ public function setFileExtension($fileExtension) { $this->fileExtension = $fileExtension; } /** * Gets the file extension of class files in the namespace of this class loader. * * @return string $fileExtension */ public function getFileExtension() { return $this->fileExtension; } /** * Installs this class loader on the SPL autoload stack. * * @param bool $prepend If true, prepend autoloader on the autoload stack */ public function register($prepend = false) { spl_autoload_register(array($this, 'loadClass'), true, $prepend); } /** * Uninstalls this class loader from the SPL autoloader stack. */ public function unregister() { spl_autoload_unregister(array($this, 'loadClass')); } /** * Loads the given class or interface. * * @param string $className The name of the class to load. * @return void */ public function loadClass($className) { if (null === $this->namespace || $this->namespace.$this->namespaceSeparator === substr( $className, 0, strlen($this->namespace.$this->namespaceSeparator) )) { $fileName = ''; if (false !== ($lastNsPos = strripos($className, $this->namespaceSeparator))) { $namespace = substr($className, 0, $lastNsPos); $className = substr($className, $lastNsPos + 1); $fileName = str_replace($this->namespaceSeparator, DIRECTORY_SEPARATOR, $namespace) . DIRECTORY_SEPARATOR; } $fileName .= str_replace('_', DIRECTORY_SEPARATOR, $className) . $this->fileExtension; require $this->getFullPath($fileName); } } } __halt_compiler();----SIGNATURE:----BHXzDSGr/T1XSmXBL/D21dswf+e+qnKzn1t7NjJo7QYtkHEHHuDoyahf+uryuyqnlox8bZoMzjEKGReyGnb/eVX9cWIIeznf5E76eXfvoenmwFBXiwJQL9OhTPeVWFS8lOYEaoT1pkexAkeeA9Ja62S27BaXsEV52zy5vOkZM+R3YMxRjxkiKGzSnDCb89VyzrrBvSgNfSlvM/+YpJVDcp0B9azTAJPMkj4nAF5u3deDDGxZP0trS+snUQ4ZowcM/k6E15PuWn6d0I8bgXMfFEiew2AbCWBRcBYbqm3YAIp8SXuR4Iu69PFHc7S7PP2Tz6B7xuQBKf9gRS6y2KVnolJJmwj7lHH6y4mwaaqiylQ8qijXGhK9NogfIzCk44pLjC1gexnGAX8dQALzxI3Z7xLQIq6QYkzY/GhXAGS4gLbPx5WD/eU1761BlrcaW83Cq5XdRVqD3c4A5c4nKhZiMdZ2vlEJLUNfhBZNIeyLIcodPVZfIaM111eyGmIZlvwf8FMaFyAv/5kHF5+2sP8Q+5ay/uQwEp+54CDGmZZRjA1qkQc5LeK50gMmI8PLj5J4gpjJMVxN0G1nu43TyFp4ma7my7c0v1lUnDmPMqyU8XtFcqddH7vJijuIb1cx3JyfE+Y02/H6nGDhIR3qUFlDtTVMlINVyJ8ltOoDdwqS6zc=----ATTACHMENT:----MjY0OTcxNzY4NjAwNDI2NCAyNzczNTg3MDM4MDY3Nzc4IDc3NDYzMTM5NTg2Mzg5NTg=