From: Roland Häder Date: Sat, 31 May 2008 15:33:22 +0000 (+0000) Subject: Client renamed in Wrapper X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=5d2d7b2329dd8b6cab49a94aa4d21080577b2f2c;p=shipsimu.git Client renamed in Wrapper --- diff --git a/.gitattributes b/.gitattributes index d919845..5ed3f32 100644 --- a/.gitattributes +++ b/.gitattributes @@ -151,13 +151,13 @@ inc/classes/exceptions/container/class_ContainerMaybeDamagedException.php -text inc/classes/exceptions/controller/.htaccess -text inc/classes/exceptions/controller/class_DefaultControllerException.php -text inc/classes/exceptions/database/.htaccess -text -inc/classes/exceptions/database/clients/.htaccess -text -inc/classes/exceptions/database/clients/class_ClientUserNameNotFoundException.php -text inc/classes/exceptions/database/local_file/.htaccess -text inc/classes/exceptions/database/local_file/class_SavePathIsEmptyException.php -text inc/classes/exceptions/database/local_file/class_SavePathIsNoDirectoryException.php -text inc/classes/exceptions/database/local_file/class_SavePathReadProtectedException.php -text inc/classes/exceptions/database/local_file/class_SavePathWriteProtectedException.php -text +inc/classes/exceptions/database/wrapper/.htaccess -text +inc/classes/exceptions/database/wrapper/class_WrapperUserNameNotFoundException.php -text inc/classes/exceptions/helper/.htaccess -text inc/classes/exceptions/helper/class_FormClosedException.php -text inc/classes/exceptions/helper/class_FormGroupClosedException.php -text @@ -285,12 +285,12 @@ inc/classes/main/controller/form/.htaccess -text inc/classes/main/controller/form/class_WebDoFormController.php -text inc/classes/main/database/.htaccess -text inc/classes/main/database/class_ -text -inc/classes/main/database/class_BaseDatabaseClient.php -text inc/classes/main/database/class_BaseDatabaseFrontend.php -text -inc/classes/main/database/clients/.htaccess -text -inc/classes/main/database/clients/class_UserDatabaseClient.php -text +inc/classes/main/database/class_BaseDatabaseWrapper.php -text inc/classes/main/database/databases/.htaccess -text inc/classes/main/database/databases/class_LocalFileDatabase.php -text +inc/classes/main/database/wrapper/.htaccess -text +inc/classes/main/database/wrapper/class_UserDatabaseWrapper.php -text inc/classes/main/debug/.htaccess -text inc/classes/main/debug/class_DebugConsoleOutput.php -text inc/classes/main/debug/class_DebugErrorLogOutput.php -text diff --git a/inc/classes/exceptions/database/clients/.htaccess b/inc/classes/exceptions/database/clients/.htaccess deleted file mode 100644 index 3a42882..0000000 --- a/inc/classes/exceptions/database/clients/.htaccess +++ /dev/null @@ -1 +0,0 @@ -Deny from all diff --git a/inc/classes/exceptions/database/clients/class_ClientUserNameNotFoundException.php b/inc/classes/exceptions/database/clients/class_ClientUserNameNotFoundException.php deleted file mode 100644 index d6fe7ed..0000000 --- a/inc/classes/exceptions/database/clients/class_ClientUserNameNotFoundException.php +++ /dev/null @@ -1,47 +0,0 @@ - - * @version 0.0.0 - * @copyright Copyright(c) 2007, 2008 Roland Haeder, this is free software - * @license GNU GPL 3.0 or any newer version - * @link http://www.ship-simu.org - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -class ClientUserNameNotFoundException extends FrameworkException { - /** - * The constructor - * - * @param $msgArray Message from the exception - * @param $code Code number for the exception - * @return void - */ - public function __construct (array $msgArray, $code) { - // Add a message around the missing class - $message = sprintf("[%s:%d] Username %s was not found. Requesting class: %s", - $msgArray[0]->__toString(), - $this->getLine(), - $msgArray[1]->getUserName(), - $msgArray[1]->__toString() - ); - - // Call parent constructor - parent::__construct($message, $code); - } -} - -// [EOF] -?> diff --git a/inc/classes/exceptions/database/wrapper/.htaccess b/inc/classes/exceptions/database/wrapper/.htaccess new file mode 100644 index 0000000..3a42882 --- /dev/null +++ b/inc/classes/exceptions/database/wrapper/.htaccess @@ -0,0 +1 @@ +Deny from all diff --git a/inc/classes/exceptions/database/wrapper/class_WrapperUserNameNotFoundException.php b/inc/classes/exceptions/database/wrapper/class_WrapperUserNameNotFoundException.php new file mode 100644 index 0000000..0804803 --- /dev/null +++ b/inc/classes/exceptions/database/wrapper/class_WrapperUserNameNotFoundException.php @@ -0,0 +1,47 @@ + + * @version 0.0.0 + * @copyright Copyright(c) 2007, 2008 Roland Haeder, this is free software + * @license GNU GPL 3.0 or any newer version + * @link http://www.ship-simu.org + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +class WrapperUserNameNotFoundException extends FrameworkException { + /** + * The constructor + * + * @param $msgArray Message from the exception + * @param $code Code number for the exception + * @return void + */ + public function __construct (array $msgArray, $code) { + // Add a message around the missing class + $message = sprintf("[%s:%d] Username %s was not found. Requesting class: %s", + $msgArray[0]->__toString(), + $this->getLine(), + $msgArray[1]->getUserName(), + $msgArray[1]->__toString() + ); + + // Call parent constructor + parent::__construct($message, $code); + } +} + +// [EOF] +?> diff --git a/inc/classes/main/database/class_BaseDatabaseClient.php b/inc/classes/main/database/class_BaseDatabaseClient.php deleted file mode 100644 index 8117c38..0000000 --- a/inc/classes/main/database/class_BaseDatabaseClient.php +++ /dev/null @@ -1,41 +0,0 @@ - - * @version 0.0.0 - * @copyright Copyright(c) 2007, 2008 Roland Haeder, this is free software - * @license GNU GPL 3.0 or any newer version - * @link http://www.ship-simu.org - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -class BaseDatabaseClient extends BaseFrameworkSystem { - /** - * Protected constructor - * - * @return void - */ - protected function __construct($class) { - // Call parent constructor - parent::__construct($class); - - // Clean up a little - $this->removeNumberFormaters(); - $this->removeSystemArray(); - } -} - -// [EOF] -?> diff --git a/inc/classes/main/database/class_BaseDatabaseWrapper.php b/inc/classes/main/database/class_BaseDatabaseWrapper.php new file mode 100644 index 0000000..9c42999 --- /dev/null +++ b/inc/classes/main/database/class_BaseDatabaseWrapper.php @@ -0,0 +1,41 @@ + + * @version 0.0.0 + * @copyright Copyright(c) 2007, 2008 Roland Haeder, this is free software + * @license GNU GPL 3.0 or any newer version + * @link http://www.ship-simu.org + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +class BaseDatabaseWrapper extends BaseFrameworkSystem { + /** + * Protected constructor + * + * @return void + */ + protected function __construct($class) { + // Call parent constructor + parent::__construct($class); + + // Clean up a little + $this->removeNumberFormaters(); + $this->removeSystemArray(); + } +} + +// [EOF] +?> diff --git a/inc/classes/main/database/clients/.htaccess b/inc/classes/main/database/clients/.htaccess deleted file mode 100644 index 3a42882..0000000 --- a/inc/classes/main/database/clients/.htaccess +++ /dev/null @@ -1 +0,0 @@ -Deny from all diff --git a/inc/classes/main/database/clients/class_UserDatabaseClient.php b/inc/classes/main/database/clients/class_UserDatabaseClient.php deleted file mode 100644 index 2790d85..0000000 --- a/inc/classes/main/database/clients/class_UserDatabaseClient.php +++ /dev/null @@ -1,72 +0,0 @@ - - * @version 0.0.0 - * @copyright Copyright(c) 2007, 2008 Roland Haeder, this is free software - * @license GNU GPL 3.0 or any newer version - * @link http://www.ship-simu.org - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -class UserDatabaseClient extends BaseDatabaseClient { - // Constants - const EXCEPTION_CLIENT_USERNAME_NOT_FOUND = 0xe00; - - /** - * Protected constructor - * - * @return void - */ - protected function __construct() { - // Call parent constructor - parent::__construct(__CLASS__); - - // Set part description - $this->setObjectDescription("Database client for user objects"); - - // Create unique ID number - $this->createUniqueID(); - } - - /** - * Creates an instance of this database client by a provided user class - * - * @param $userInstance An instance of a user class - * @return $clientInstance An instance of the created client class - * @throws ClientUserNameNotFoundException If the supplied username - * does not exist - */ - public final static function createUserDatabaseClient (ManageableUser $userInstance) { - // Get a new instance - $clientInstance = new UserDatabaseClient(); - - // Does the username exists? - if (!$clientInstance->ifUserNameExists($userInstance->getUserName())) { - // Throw an exception here - throw new ClientUserNameNotFoundException (array($clientInstance, $userInstance), self::EXCEPTION_CLIENT_USERNAME_NOT_FOUND); - } - - // The user exists - $clientInstance->partialStub("Add loading of full user details"); - - // Return the instance - return $clientInstance; - } -} - -// [EOF] -?> diff --git a/inc/classes/main/database/wrapper/.htaccess b/inc/classes/main/database/wrapper/.htaccess new file mode 100644 index 0000000..3a42882 --- /dev/null +++ b/inc/classes/main/database/wrapper/.htaccess @@ -0,0 +1 @@ +Deny from all diff --git a/inc/classes/main/database/wrapper/class_UserDatabaseWrapper.php b/inc/classes/main/database/wrapper/class_UserDatabaseWrapper.php new file mode 100644 index 0000000..18aabb0 --- /dev/null +++ b/inc/classes/main/database/wrapper/class_UserDatabaseWrapper.php @@ -0,0 +1,72 @@ + + * @version 0.0.0 + * @copyright Copyright(c) 2007, 2008 Roland Haeder, this is free software + * @license GNU GPL 3.0 or any newer version + * @link http://www.ship-simu.org + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +class UserDatabaseWrapper extends BaseDatabaseWrapper { + // Constants + const EXCEPTION_CLIENT_USERNAME_NOT_FOUND = 0xe00; + + /** + * Protected constructor + * + * @return void + */ + protected function __construct() { + // Call parent constructor + parent::__construct(__CLASS__); + + // Set part description + $this->setObjectDescription("Database client for user objects"); + + // Create unique ID number + $this->createUniqueID(); + } + + /** + * Creates an instance of this database client by a provided user class + * + * @param $userInstance An instance of a user class + * @return $clientInstance An instance of the created client class + * @throws WrapperUserNameNotFoundException If the supplied username + * does not exist + */ + public final static function createUserDatabaseWrapper (ManageableUser $userInstance) { + // Get a new instance + $clientInstance = new UserDatabaseWrapper(); + + // Does the username exists? + if (!$clientInstance->ifUserNameExists($userInstance->getUserName())) { + // Throw an exception here + throw new WrapperUserNameNotFoundException (array($clientInstance, $userInstance), self::EXCEPTION_CLIENT_USERNAME_NOT_FOUND); + } + + // The user exists + $clientInstance->partialStub("Add loading of full user details"); + + // Return the instance + return $clientInstance; + } +} + +// [EOF] +?> diff --git a/inc/classes/main/user/class_User.php b/inc/classes/main/user/class_User.php index 3a31883..62c4f17 100644 --- a/inc/classes/main/user/class_User.php +++ b/inc/classes/main/user/class_User.php @@ -27,6 +27,11 @@ class User extends BaseFrameworkSystem implements ManageableUser { */ private $username = ""; + /** + * An instance of a database wrapper + */ + private $userWrapper = null; + // Exceptions const EXCEPTION_USERNAME_NOT_FOUND = 0xd00; @@ -107,11 +112,11 @@ class User extends BaseFrameworkSystem implements ManageableUser { // By default the username does exist $exists = true; - // Try to get a UserDatabaseClient object back + // Try to get a UserDatabaseWrapper object back try { // Get the instance by providing this class - $this->userClient = UserDatabaseClient::createUserDatabaseClient($this); - } catch (ClientUserNameNotFoundException $e) { + $this->userWrapper = UserDatabaseWrapper::createUserDatabaseWrapper($this); + } catch (WrapperUserNameNotFoundException $e) { // Does not exist! $exists = false; }