X-Git-Url: https://git.mxchange.org/?p=shipsimu.git;a=blobdiff_plain;f=inc%2Fdatabase.php;h=52d7506032cc4ae0fdb093a9334b7ae664fe9357;hp=1d381d2e2b482139d043173e4caebb3e9d8c4dde;hb=abb8bf6be9f5238f8a4552707bcb190f0dbf0b7a;hpb=d527a312ec4b2983fc0ecda2179ce335c1a5a1f9 diff --git a/inc/database.php b/inc/database.php index 1d381d2..52d7506 100644 --- a/inc/database.php +++ b/inc/database.php @@ -23,21 +23,15 @@ */ // Initialize layer -$layer = null; +$layerInstance = null; -// Is the type defined? -if (!defined('_DB_TYPE')) { - // Abort here - ApplicationEntryPoint::app_die("[Main:] Please define a database type first!
-E.g.:
$cfg->defineDatabaseType("local");
-This will choose the local file-based database layer."); -} +// Get config instance +$cfg = FrameworkConfiguration::getInstance(); // Generate FQFN for the database layer -$INC = sprintf("%sinc/database/lib-%s%s", - PATH, - _DB_TYPE, - FrameworkConfiguration::getInstance()->readConfig('php_extension') +$INC = sprintf("%sinc/database/lib-%s.php", + $cfg->readConfig('base_path'), + $cfg->readConfig('db_type') ); // Load the database layer include @@ -47,7 +41,7 @@ if ((file_exists($INC)) && (is_file($INC)) && (is_readable($INC))) { } else { // Layer is missing! ApplicationEntryPoint::app_die(sprintf("[Main:] Database layer is missing! (%s) -> R.I.P.", - _DB_TYPE + $cfg->readConfig('db_type') )); } @@ -56,7 +50,7 @@ unset($INC); // Prepare database instance try { - $db = DatabaseConnection::createDatabaseConnection(DebugMiddleware::getInstance(), $layer); + $db = DatabaseConnection::createDatabaseConnection(DebugMiddleware::getInstance(), $layerInstance); } catch (NullPointerException $e) { ApplicationEntryPoint::app_die(sprintf("[Main:] Database sub-system not initialized for the follwing reason: %s
\n", $e->getMessage() @@ -83,6 +77,9 @@ try { )); } +// Is the app variable there and valid? +if (is_object($app)) $app->setDatabaseInstance($db); + // Datenbankobjekt debuggen if (defined('DEBUG_DATABASE_OBJ')) { DebugMiddleware::getInstance()->output(sprintf("The database sub-system does now look like this: