]> git.mxchange.org Git - hub.git/blobdiff - inc/classes.php
some comments fixed, small fix for windows OSes and some other things fixed
[hub.git] / inc / classes.php
diff --git a/inc/classes.php b/inc/classes.php
new file mode 100644 (file)
index 0000000..64e2bed
--- /dev/null
@@ -0,0 +1,66 @@
+<?php
+/**
+ * Load required framework classes first
+ *
+ * @author             Roland Haeder <webmaster@ship-simu.org>
+ * @version            0.0
+ * @copyright  Copyright(c) 2007, 2008 Roland Haeder, this is free software
+ * @license            GNU GPL 3.0 or any newer version
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+
+// Lower framework classes
+$lowerClasses = array(
+       0 => "exceptions", // Exceptions
+       1 => "interfaces", // Interfaces
+       2 => "main",       // General main classes
+       3 => "middleware"  // The middleware
+);
+
+// Load all classes
+foreach ($lowerClasses as $class) {
+       // Try to load the framework classes
+       try {
+               ClassLoader::getInstance()->loadClasses(sprintf("inc/classes/%s/", $class));
+       } catch (PathIsNoDirectoryException $e) {
+               ApplicationEntryPoint::app_die(sprintf("[Main:] Kann Framework-Klassen im Pfad <strong>%s</strong> nicht laden. Reason: <strong>%s</strong>",
+                       $class
+               ));
+       } catch (PathIsEmptyException $e) {
+               ApplicationEntryPoint::app_die(sprintf("[Main:] Kann Framework-Klassen im Pfad <strong>%s</strong> nicht laden. Reason: <strong>%s</strong>",
+                       $class
+               ));
+       } catch (PathReadProtectedException $e) {
+               ApplicationEntryPoint::app_die(sprintf("[Main:] Kann Framework-Klassen im Pfad <strong>%s</strong> nicht laden. Reason: <strong>%s</strong>",
+                       $class
+               ));
+       } catch (DirPointerNotOpenedException $e) {
+               ApplicationEntryPoint::app_die(sprintf("[Main:] Kann Framework-Klassen im Pfad <strong>%s</strong> nicht laden. Reason: <strong>%s</strong>",
+                       $class
+               ));
+       }
+}
+
+// Include all classes
+ClassLoader::getInstance()->includeAllClasses();
+
+// Clean up the global namespace
+unset($lowerClasses[3]); // Applications shall not have any middleware
+unset($class);
+
+////// Until here the framework classes are loaded //////
+
+// [EOF]
+?>