]> git.mxchange.org Git - hub.git/blob - application/hub/loader.php
1c153b69ce85530cd744d907a3b8d3c150f7d3bf
[hub.git] / application / hub / loader.php
1 <?php
2 /**
3  * The application's class loader
4  *
5  * @author              Roland Haeder <webmaster@ship-simu.org>
6  * @version             0.0
7  * @copyright   Copyright(c) 2007, 2008 Roland Haeder, this is free software
8  * @license             GNU GPL 3.0 or any newer version
9  *
10  * This program is free software: you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License as published by
12  * the Free Software Foundation, either version 3 of the License, or
13  * (at your option) any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  * GNU General Public License for more details.
19  *
20  * You should have received a copy of the GNU General Public License
21  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
22  */
23
24 // Get config instance
25 $cfg = FrameworkConfiguration::getInstance();
26
27 // Load all classes for the application
28 foreach ($lowerClasses as $class) {
29         // Try to load the application classes
30         try {
31                 ClassLoader::getInstance()->loadClasses(sprintf("%s/%s/%s", $cfg->readConfig("application_path"), $cfg->readConfig("app_name"), $class));
32         } catch (PathIsNoDirectoryException $e) {
33                 ApplicationEntryPoint::app_die(sprintf("[Main:] Kann Applikationsklassen im Pfad <strong>%s</strong> nicht laden. Reason: <strong>%s</strong>",
34                         $class,
35                         $e->getMessage()
36                 ));
37         } catch (PathIsEmptyException $e) {
38                 ApplicationEntryPoint::app_die(sprintf("[Main:] Kann Applikationsklassen im Pfad <strong>%s</strong> nicht laden. Reason: <strong>%s</strong>",
39                         $class,
40                         $e->getMessage()
41                 ));
42         } catch (PathReadProtectedException $e) {
43                 ApplicationEntryPoint::app_die(sprintf("[Main:] Kann Applikationsklassen im Pfad <strong>%s</strong> nicht laden. Reason: <strong>%s</strong>",
44                         $class,
45                         $e->getMessage()
46                 ));
47         } catch (DirPointerNotOpenedException $e) {
48                 ApplicationEntryPoint::app_die(sprintf("[Main:] Kann Applikationsklassen im Pfad <strong>%s</strong> nicht laden. Reason: <strong>%s</strong>",
49                         $class,
50                         $e->getMessage()
51                 ));
52         }
53 }
54
55 // Clean up the global namespace
56 unset($lowerClasses);
57 unset($class);
58
59 // [EOF]
60 ?>