Gear::loader PHP Method

loader() private method

Magic loader to load instantiated class.
private loader ( string $file )
$file string Class namespace.
    private function loader($file)
    {
        $prefix = explode('\\', $file);
        switch ($prefix[0]) {
            case 'Models':
                $folder = APP;
                break;
            case 'Libraries':
                $folder = APP;
                break;
            case 'Controllers':
                $folder = APP;
                break;
            case 'Resources':
                $folder = GEAR;
                break;
            case 'Drivers':
                $folder = GEAR;
                break;
            case 'Modules':
                $folder = $this->config['main']['module']['path'];
                break;
            default:
                if (!isset($this->config['main']['namespace'])) {
                    throw new Resources\RunException('Resource ' . $file . ' not available!');
                }
                if (!isset($this->config['main']['namespace'][$prefix[0]])) {
                    throw new Resources\RunException('Resource ' . $file . ' not available!');
                }
                $folder = $this->config['main']['namespace'][$prefix[0]];
                break;
        }
        if (!file_exists($file = $folder . str_ireplace('\\', '/', $file) . '.php')) {
            throw new Resources\RunException('Resource ' . $file . ' not available!');
        }
        include $file;
    }