*/
private $total = 0;
+ /**
+ * Framework/application paths for classes, etc.
+ */
+ private static $frameworkPaths = array(
+ 'exceptions', // Exceptions
+ 'interfaces', // Interfaces
+ 'main', // General main classes
+ 'middleware' // The middleware
+ );
+
+
/**
* The protected constructor. Please use the factory method below, or use
* getSelfInstance() for singleton
return $loaderInstance;
}
+ /**
+ * Scans for all framework classes, exceptions and interfaces.
+ *
+ * @return void
+ */
+ public static function scanFrameworkClasses () {
+ // Cache loader instance
+ $loaderInstance = self::getSelfInstance();
+
+ // Load all classes
+ foreach (self::$frameworkPaths as $className) {
+ // Try to load the framework classes
+ $loaderInstance->scanClassPath('inc/classes/' . $className . '/');
+ } // END - foreach
+ }
+
+ /**
+ * Scans for application's classes, etc.
+ *
+ * @return void
+ */
+ public static function scanApplicationClasses () {
+ // Get config instance
+ $cfg = FrameworkConfiguration::getSelfInstance();
+
+ // Load all classes for the application
+ foreach (self::$frameworkPaths as $class) {
+ // Create path name
+ $path = sprintf('%s/%s/%s', $cfg->getConfigEntry('application_path'), $cfg->getConfigEntry('app_name'), $class);
+
+ // Is the path readable?
+ if (is_dir($path)) {
+ // Try to load the application classes
+ ClassLoader::getSelfInstance()->scanClassPath($path);
+ } // END - if
+ } // END - foreach
+ }
+
/**
* Initializes our loader class
*
array_push($ignoreList, '.');
array_push($ignoreList, '..');
array_push($ignoreList, '.htaccess');
- array_push($ignoreList, '.svn');
// Keep it in class for later usage
$this->ignoreList = $ignoreList;
// If the basePath is FALSE it is invalid
if ($basePath2 === FALSE) {
/* @todo: Do not die here. */
- exit(__METHOD__ . ':Cannot read ' . $basePath . ' !');
+ exit(__METHOD__ . ':Cannot read ' . $basePath . ' !' . PHP_EOL);
} else {
// Set base path
$basePath = $basePath2;