Continued:
[core.git] / inc / main / middleware / database / class_DatabaseConnection.php
index 82cc428b2bdf48e9db3c1824d88926128640cd50..9c5395976ef4363d461fb1acdece75f341d1ed75 100644 (file)
@@ -1,4 +1,16 @@
 <?php
+// Own namespace
+namespace CoreFramework\Connection\Database;
+
+// Import framework stuff
+use CoreFramework\Connector\Database\DatabaseConnector;
+use CoreFramework\Criteria\Criteria;
+use CoreFramework\Criteria\Storing\StoreableCriteria;
+use CoreFramework\Database\Backend\DatabaseBackend;
+use CoreFramework\Registry\Registerable;
+use CoreFramework\Middleware\BaseMiddleware;
+use CoreFramework\Middleware\Debug\DebugMiddleware;
+
 /**
  * Database selector class
  *
@@ -26,29 +38,36 @@ class DatabaseConnection extends BaseMiddleware implements DatabaseConnector, Re
         * Array for connection data
         */
        private $connectData = array(
-               'login' => '',
-               'pass'  => '',
-               'dbase' => '',
-               'host'  => ''
+               'login' => '',
+               'pass'  => '',
+               'dbase' => '',
+               'host'  => ''
        );
 
-       // The real database layer
+       /**
+        * The real database layer
+        */
        private $dbLayer = NULL;
 
-       // An instance of this class
+       /**
+        * An instance of this class
+        */
        private static $selfInstance = NULL;
 
        /**
         * Protected constructor
-        *
-        * @return      void
         */
        protected function __construct () {
                // Call parent constructor
                parent::__construct(__CLASS__);
        }
 
-       // Create new database connection layer
+       /**
+        * Creates a new database connection layer
+        *
+        * @param       $debugInstance  An instance of a DebugMiddleware class
+        * @param       $dbLayer                An instance of a DatabaseBackend class
+        */
        public static final function createDatabaseConnection (DebugMiddleware $debugInstance, DatabaseBackend $dbLayer) {
                // Get instance
                $databaseInstance = new DatabaseConnection();
@@ -63,13 +82,26 @@ class DatabaseConnection extends BaseMiddleware implements DatabaseConnector, Re
                return $databaseInstance;
        }
 
-       // Get an instance of this class
+       /**
+        * Getter for this class
+        *
+        * @return      $selfInstance   An instance of this class
+        */
        public static final function getSelfInstance () {
                return self::$selfInstance;
        }
 
-       // Public setter for database connection
-       public final function setConnectionData ($login, $pass, $dbase, $host='localhost') {
+       /**
+        * Setter for all database connection data. All these parameters may be
+        * supported by the underlaying backend.
+        *
+        * @param       $login  Login name to database
+        * @param       $pass   Passwort for above login
+        * @param       $dbase  Name of used database
+        * @param       $host   Host to connect to (default: 127.0.0.1)
+        * @return      void
+        */
+       public final function setConnectionData ($login, $pass, $dbase, $host = '127.0.0.1') {
                // Transfer connection data
                $this->connectData['login'] = (string) $login;
                $this->connectData['pass']  = (string) $pass;
@@ -189,10 +221,10 @@ class DatabaseConnection extends BaseMiddleware implements DatabaseConnector, Re
                $this->dbLayer->connectToDatabase();
 
                // Call database backend
-               //* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput('DB-CONNECTION[' . $this->__toString() . ']: Calling this->dbLayer->removeNonPublicDataFromArray(data) ...');
+               //* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__, __LINE__)->debugOutput('DB-CONNECTION[' . $this->__toString() . ']: Calling this->dbLayer->removeNonPublicDataFromArray(data) ...');
                $data = $this->dbLayer->removeNonPublicDataFromArray($data);
 
-               //* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput('DB-CONNECTION[' . $this->__toString() . ']: data[]=' . gettype($data));
+               //* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__, __LINE__)->debugOutput('DB-CONNECTION[' . $this->__toString() . ']: data[]=' . gettype($data));
                return $data;
        }
 
@@ -212,7 +244,5 @@ class DatabaseConnection extends BaseMiddleware implements DatabaseConnector, Re
                // Return the value
                return $count;
        }
-}
 
-// [EOF]
-?>
+}