5 // Is the type defined?
6 if (!defined('_DB_TYPE')) {
8 ApplicationEntryPoint::app_die("[Main:] Please define a database type first!<br />
9 E.g.:<pre>$GLOBALS['cfg']->defineDatabaseType("local");</pre>
10 This will choose the local-file-based database type (layer)");
13 // Generate FQFN for the database layer
14 $INC = sprintf("%sinc/database/lib-%s%s", PATH, _DB_TYPE, FrameworkConfiguration::getInstance()->readConfig("php_extension"));
16 // Load the database layer include
17 if ((file_exists($INC)) && (is_file($INC)) && (is_readable($INC))) {
22 ApplicationEntryPoint::app_die(sprintf("[Main:] Database layer is missing! (%s) -> R.I.P.",
30 // Prepare database instance
32 $db = DatabaseConnection::createDatabaseConnection(DebugMiddleware::getInstance(), $layer);
33 } catch (NullPointerException $e) {
34 ApplicationEntryPoint::app_die(sprintf("[Main:] Datenbank-System nicht initialisiert. Reason: <strong>%s</strong><br />\n",
37 } catch (InvalidDirectoryResourceException $e) {
38 ApplicationEntryPoint::app_die(sprintf("[Main:] Datenbank-System nicht initialisiert. Reason: <strong>%s</strong><br />\n",
41 } catch (PathIsEmptyException $e) {
42 ApplicationEntryPoint::app_die(sprintf("[Main:] Datenbank-System nicht initialisiert. Reason: <strong>%s</strong><br />\n",
45 } catch (PathIsNoDirectoryException $e) {
46 ApplicationEntryPoint::app_die(sprintf("[Main:] Datenbank-System nicht initialisiert. Reason: <strong>%s</strong><br />\n",
49 } catch (PathReadProtectedException $e) {
50 ApplicationEntryPoint::app_die(sprintf("[Main:] Datenbank-System nicht initialisiert. Reason: <strong>%s</strong><br />\n",
53 } catch (DirPointerNotOpenedException $e) {
54 ApplicationEntryPoint::app_die(sprintf("[Main:] Datenbank-System nicht initialisiert. Reason: <strong>%s</strong><br />\n",
59 // Datenbankobjekt debuggen
60 if (defined('DEBUG_DATABASE_OBJ')) {
61 DebugMiddleware::getInstance()->output(sprintf("Die Datenbank-Schicht sieht wie folgt aus:<br />