]> git.mxchange.org Git - core.git/commitdiff
Continued:
authorRoland Häder <roland@mxchange.org>
Fri, 22 Aug 2025 00:29:09 +0000 (02:29 +0200)
committerRoland Häder <roland@mxchange.org>
Fri, 22 Aug 2025 00:29:09 +0000 (02:29 +0200)
- fixed type-hint 'string' to 'SplFileInfo'
- added missing type-hints

framework/main/interfaces/database/backend/class_DatabaseBackend.php
framework/main/interfaces/database/middleware/class_DatabaseConnector.php
framework/main/middleware/database/class_DatabaseConnection.php

index 8b8ddf24c1f8cfcae8857b2f0b470b018efaaa2b..0b40d8155d7ae02df0f7f07848feee686035e8bb 100644 (file)
@@ -7,6 +7,9 @@ use Org\Mxchange\CoreFramework\Criteria\Local\LocalSearchCriteria;
 use Org\Mxchange\CoreFramework\Criteria\Storing\StoreableCriteria;
 use Org\Mxchange\CoreFramework\Database\FrameworkDatabase;
 
+// Import SPL stuff
+use \SplFileInfo;
+
 /**
  * An interface for front-end database classes. The classes should prepare the
  * objects for saving in the database. So for server-bases database classes SQL
@@ -34,33 +37,34 @@ use Org\Mxchange\CoreFramework\Database\FrameworkDatabase;
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 interface DatabaseBackend extends FrameworkDatabase {
+
        /**
         * Getter for last read file
         *
-        * @return      $lastFile       The last read file's name with full path
+        * @return      $lastFile       An instance of a SplFileInfo class
         */
-       function getLastFile ();
+       function getLastFile (): SplFileInfo;
 
        /**
         * Getter for last read file's content as an array
         *
         * @return      $lastContent    The array with elements 'header' and 'data'.
         */
-       function getLastContents ();
+       function getLastContents (): array;
 
        /**
         * Getter for file extension
         *
         * @return      $fileExtension  The array with elements 'header' and 'data'.
         */
-       function getFileExtension ();
+       function getFileExtension (): string;
 
        /**
         * Getter for index key
         *
         * @return      $indexKey       Index key
         */
-       function getIndexKey ();
+       function getIndexKey (): string;
 
        /**
         * Makes sure that the database connection is alive
@@ -68,7 +72,7 @@ interface DatabaseBackend extends FrameworkDatabase {
         * @return      void
         * @todo        Do some checks on the database directory and files here
         */
-       function connectToDatabase ();
+       function connectToDatabase (): void;
 
        /**
         * Starts a SELECT query on the database by given return type, table name
@@ -80,7 +84,7 @@ interface DatabaseBackend extends FrameworkDatabase {
         * @throws      UnsupportedCriteriaException    If the criteria is unsupported
         * @throws      SqlException                                    If an 'SQL error' occurs
         */
-       function querySelect (string $tableName, LocalSearchCriteria $searchInstance);
+       function querySelect (string $tableName, LocalSearchCriteria $searchInstance): array;
 
        /**
         * "Inserts" a data set instance into a local file database folder
@@ -89,7 +93,7 @@ interface DatabaseBackend extends FrameworkDatabase {
         * @return      void
         * @throws      SqlException    If an SQL error occurs
         */
-       function queryInsertDataSet (StoreableCriteria $dataSetInstance);
+       function queryInsertDataSet (StoreableCriteria $dataSetInstance): void;
 
        /**
         * "Updates" a data set instance with a database layer
@@ -98,7 +102,7 @@ interface DatabaseBackend extends FrameworkDatabase {
         * @return      void
         * @throws      SqlException    If an SQL error occurs
         */
-       function queryUpdateDataSet (StoreableCriteria $dataSetInstance);
+       function queryUpdateDataSet (StoreableCriteria $dataSetInstance): void;
 
        /**
         * Getter for primary key of specified table or if not found null will be
@@ -116,7 +120,7 @@ interface DatabaseBackend extends FrameworkDatabase {
         * @return      $data   A cleaned up array with only data.
         * @todo        Add more generic non-data for removal
         */
-       function removeNonPublicDataFromArray (array $data);
+       function removeNonPublicDataFromArray (array $data): array;
 
        /**
         * Counts total rows of given table
@@ -124,6 +128,6 @@ interface DatabaseBackend extends FrameworkDatabase {
         * @param       $tableName      Table name
         * @return      $count          Total rows of given table
         */
-       function countTotalRows(string $tableName);
+       function countTotalRows(string $tableName): int;
 
 }
index ee45bb0add2da45a922e7b3416be1b8cb086c75e..3ee9f679bc082527303496ac16850696de9b5eda 100644 (file)
@@ -6,6 +6,7 @@ namespace Org\Mxchange\CoreFramework\Connector\Database;
 use Org\Mxchange\CoreFramework\Criteria\Criteria;
 use Org\Mxchange\CoreFramework\Criteria\Storing\StoreableCriteria;
 use Org\Mxchange\CoreFramework\Database\FrameworkDatabase;
+use Org\Mxchange\CoreFramework\Generic\FrameworkException;
 
 /**
  * An interface for middleware database classes
@@ -35,7 +36,7 @@ interface DatabaseConnector extends FrameworkDatabase {
         *
         * @return      $selfInstance   An instance of this class
         */
-       static function getSelfInstance ();
+       static function getSelfInstance (): DatabaseConnector;
 
        /**
         * Setter for database connection
@@ -46,21 +47,21 @@ interface DatabaseConnector extends FrameworkDatabase {
         * @param       $host   Hostname to use
         * @return      void
         */
-       function setConnectionData (string $login, string $pass, string $dbase, string $host = 'localhost');
+       function setConnectionData (string $login, string $pass, string $dbase, string $host = 'localhost'): void;
 
        /**
         * Getter for connection data
         *
-        * @return      $connectData    Connection data stored with this clas
+        * @return      $connectData    Connection data stored with this class
         */
-       function getConnectionData ();
+       function getConnectionData (): array;
 
        /**
         * Getter for index key
         *
         * @return      $indexKey       Index key
         */
-       function getIndexKey ();
+       function getIndexKey (): string;
 
        /**
         * Runs a 'select' statement on the database layer with given table name
@@ -70,14 +71,14 @@ interface DatabaseConnector extends FrameworkDatabase {
         * @param       $criteriaInstance       An instance of a Criteria class
         * @return      $result                         The result as an array
         */
-       function doSelectByTableCriteria (string $tableName, Criteria $criteriaInstance);
+       function doSelectByTableCriteria (string $tableName, Criteria $criteriaInstance): array;
 
        /**
         * Getter for last exception
         *
         * @return      $exceptionInstance      Last thrown exception
         */
-       function getLastException ();
+       function getLastException (): FrameworkException;
 
        /**
         * 'Inserts' a data set instance into a local file database folder
@@ -85,7 +86,7 @@ interface DatabaseConnector extends FrameworkDatabase {
         * @param       $dataSetInstance        A storeable data set
         * @return      void
         */
-       function queryInsertDataSet (StoreableCriteria $dataSetInstance);
+       function queryInsertDataSet (StoreableCriteria $dataSetInstance): void;
 
        /**
         * 'Updates' a data set instance with a database layer
@@ -93,7 +94,7 @@ interface DatabaseConnector extends FrameworkDatabase {
         * @param       $dataSetInstance        A storeable data set
         * @return      void
         */
-       function queryUpdateDataSet (StoreableCriteria $dataSetInstance);
+       function queryUpdateDataSet (StoreableCriteria $dataSetInstance): void;
 
        /**
         * Getter for primary key column of specified table name
@@ -101,7 +102,7 @@ interface DatabaseConnector extends FrameworkDatabase {
         * @param       $tableName              Name of table we need the primary key column from
         * @return      $primaryKey             Primary key column of requested table
         */
-       function getPrimaryKeyOfTable (string $tableName);
+       function getPrimaryKeyOfTable (string $tableName): string;
 
        /**
         * Removes non-public data from given array.
@@ -109,7 +110,7 @@ interface DatabaseConnector extends FrameworkDatabase {
         * @param       $data   An array with possible non-public data that needs to be removed.
         * @return      $data   A cleaned up array with only public data.
         */
-       function removeNonPublicDataFromArray (array $data);
+       function removeNonPublicDataFromArray (array $data): array;
 
        /**
         * Counts total rows of given table
@@ -117,6 +118,6 @@ interface DatabaseConnector extends FrameworkDatabase {
         * @param       $tableName      Table name
         * @return      $count          Total rows of given table
         */
-       function countTotalRows (string $tableName);
+       function countTotalRows (string $tableName): int;
 
 }
index 5b8a6b09ed7371567565f2013484e66311c84044..eee240c928580571c8122f44378b9941e4ec734f 100644 (file)
@@ -8,6 +8,7 @@ use Org\Mxchange\CoreFramework\Criteria\Criteria;
 use Org\Mxchange\CoreFramework\Criteria\Storing\StoreableCriteria;
 use Org\Mxchange\CoreFramework\Database\Backend\DatabaseBackend;
 use Org\Mxchange\CoreFramework\Generic\FrameworkInterface;
+use Org\Mxchange\CoreFramework\Generic\FrameworkException;
 use Org\Mxchange\CoreFramework\Middleware\BaseMiddleware;
 use Org\Mxchange\CoreFramework\Registry\Registerable;
 use Org\Mxchange\CoreFramework\Result\Search\SearchableResult;
@@ -74,7 +75,7 @@ class DatabaseConnection extends BaseMiddleware implements DatabaseConnector, Re
         * @param       $backendInstance        An instance of a DatabaseBackend class
         * @todo        $debugInstance is currently not used
         */
-       public static final function createDatabaseConnection (DatabaseBackend $backendInstance) {
+       public static final function createDatabaseConnection (DatabaseBackend $backendInstance): DatabaseConnector {
                // Get instance
                //* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__, __LINE__)->traceMessage(sprintf('DATABASE-CONNECTION: backendInstance=%s - CALLED!', $backendInstance->__toString()));
                $databaseInstance = new DatabaseConnection();
@@ -95,7 +96,7 @@ class DatabaseConnection extends BaseMiddleware implements DatabaseConnector, Re
         *
         * @return      $selfInstance   An instance of this class
         */
-       public static final function getSelfInstance () {
+       public static final function getSelfInstance (): DatabaseConnector {
                return self::$selfInstance;
        }
 
@@ -104,7 +105,7 @@ class DatabaseConnection extends BaseMiddleware implements DatabaseConnector, Re
         * @param       $backendInstance        An instance of a DatabaseBackend class
         * @return      void
         */
-       private function setBackendInstance (DatabaseBackend $backendInstance) {
+       private function setBackendInstance (DatabaseBackend $backendInstance): void {
                $this->backendInstance = $backendInstance;
        }
 
@@ -119,7 +120,7 @@ class DatabaseConnection extends BaseMiddleware implements DatabaseConnector, Re
         * @return      void
         * @throws      InvalidArgumentException        If a parameter is empty
         */
-       public final function setConnectionData (string $login, string $pass, string $dbase, string $host = 'localhost') {
+       public final function setConnectionData (string $login, string $pass, string $dbase, string $host = 'localhost'): void {
                // Check parameter
                //* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__, __LINE__)->traceMessage(sprintf('DATABASE-CONNECTION: login=%s,pass=%s,dbase=%s,host=%s CALLED!', $login, $pass, $dbase, $host));
                if (empty($login)) {
@@ -149,7 +150,7 @@ class DatabaseConnection extends BaseMiddleware implements DatabaseConnector, Re
         *
         * @return      $connectData    Connection data stored with this clas
         */
-       public final function getConnectionData () {
+       public final function getConnectionData (): array {
                return $this->connectData;
        }
 
@@ -158,7 +159,7 @@ class DatabaseConnection extends BaseMiddleware implements DatabaseConnector, Re
         *
         * @return      $indexKey       Index key
         */
-       public final function getIndexKey () {
+       public final function getIndexKey (): string {
                return $this->backendInstance->getIndexKey();
        }
 
@@ -173,7 +174,7 @@ class DatabaseConnection extends BaseMiddleware implements DatabaseConnector, Re
         * @throws      OutOfBoundsException    If important array elements are not present
         * @throws      UnexpectedValueException        If $result['status'] is not 'ok'
         */
-       public function doSelectByTableCriteria (string $tableName, Criteria $criteriaInstance) {
+       public function doSelectByTableCriteria (string $tableName, Criteria $criteriaInstance): array {
                // Validate parameter
                //* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__, __LINE__)->traceMessage(sprintf('DATABASE-CONNECTION: tableName=%s,criteriaInstance=%s - CALLED!', $tableName, $criteriaInstance->__toString()));
                if (empty($tableName)) {
@@ -214,7 +215,7 @@ class DatabaseConnection extends BaseMiddleware implements DatabaseConnector, Re
         *
         * @return      $exceptionInstance      Last thrown exception
         */
-       public final function getLastException () {
+       public final function getLastException (): FrameworkException {
                // Get instance
                //* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__, __LINE__)->traceMessage('DATABASE-CONNECTION: CALLED!');
                $exceptionInstance = $this->backendInstance->getLastException();
@@ -230,7 +231,7 @@ class DatabaseConnection extends BaseMiddleware implements DatabaseConnector, Re
         * @param       $dataSetInstance        A storeable data set
         * @return      void
         */
-       public function queryInsertDataSet (StoreableCriteria $dataSetInstance) {
+       public function queryInsertDataSet (StoreableCriteria $dataSetInstance): void {
                // Connect to the database
                //* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__, __LINE__)->traceMessage(sprintf('DATABASE-CONNECTION: dataSetInstance=%s - CALLED!', $dataSetInstance->__toString()));
                $this->backendInstance->connectToDatabase();
@@ -249,7 +250,7 @@ class DatabaseConnection extends BaseMiddleware implements DatabaseConnector, Re
         * @param       $dataSetInstance        A storeable data set
         * @return      void
         */
-       public function queryUpdateDataSet (StoreableCriteria $dataSetInstance) {
+       public function queryUpdateDataSet (StoreableCriteria $dataSetInstance): void {
                // Connect to the database
                //* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__, __LINE__)->traceMessage(sprintf('DATABASE-CONNECTION: dataSetInstance=%s - CALLED!', $dataSetInstance->__toString()));
                $this->backendInstance->connectToDatabase();
@@ -269,7 +270,7 @@ class DatabaseConnection extends BaseMiddleware implements DatabaseConnector, Re
         * @return      $primaryKey             Primary key column of requested table
         * @throws      InvalidArgumentException        If a parameter is empty
         */
-       public function getPrimaryKeyOfTable (string $tableName) {
+       public function getPrimaryKeyOfTable (string $tableName): string {
                // Validate parameter
                //* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__, __LINE__)->traceMessage(sprintf('DATABASE-CONNECTION: tableName=%s - CALLED!', $tableName));
                if (empty($tableName)) {
@@ -297,7 +298,7 @@ class DatabaseConnection extends BaseMiddleware implements DatabaseConnector, Re
         * @return      $data   A cleaned up array with only public data.
         * @throws      InvalidArgumentException        If a parameter has an invalid value
         */
-       public function removeNonPublicDataFromArray (array $data) {
+       public function removeNonPublicDataFromArray (array $data): array {
                // Check parameter
                //* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__, __LINE__)->traceMessage(sprintf('DATABASE-CONNECTION: data()=%d - CALLED!', count($data)));
                if (count($data) == 0) {
@@ -325,7 +326,7 @@ class DatabaseConnection extends BaseMiddleware implements DatabaseConnector, Re
         * @return      $count          Total row count
         * @throws      InvalidArgumentException        If a parameter is empty
         */
-       public function countTotalRows (string $tableName) {
+       public function countTotalRows (string $tableName): int {
                // Validate parameter
                //* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__, __LINE__)->traceMessage(sprintf('DATABASE-CONNECTION: tableName=%s - CALLED!', $tableName));
                if (empty($tableName)) {