]> git.mxchange.org Git - core.git/blobdiff - framework/main/classes/user/member/class_Member.php
Continued:
[core.git] / framework / main / classes / user / member / class_Member.php
index f3e204b263af426aa240e705e7c5f8cb24acdef1..295f38ab487fe2d526e30bf490126df9dbee3d62 100644 (file)
@@ -5,18 +5,22 @@ namespace Org\Mxchange\CoreFramework\User\Login;
 // Import framework stuff
 use Org\Mxchange\CoreFramework\Bootstrap\FrameworkBootstrap;
 use Org\Mxchange\CoreFramework\Database\Frontend\User\UserDatabaseFrontend;
-use Org\Mxchange\CoreFramework\Factory\ObjectFactory;
+use Org\Mxchange\CoreFramework\Factory\Object\ObjectFactory;
+use Org\Mxchange\CoreFramework\Generic\FrameworkInterface;
 use Org\Mxchange\CoreFramework\Manager\Login\ManageableMember;
 use Org\Mxchange\CoreFramework\Registry\Registerable;
 use Org\Mxchange\CoreFramework\User\BaseUser;
 use Org\Mxchange\CoreFramework\User\UsernameMissingException;
 
+// Import SPL stuff
+use \InvalidArgumentException;
+
 /**
  * A generic class for handling users
  *
  * @author             Roland Haeder <webmaster@shipsimu.org>
  * @version            0.0.0
- * @copyright  Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2020 Core Developer Team
+ * @copyright  Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2022 Core Developer Team
  * @license            GNU GPL 3.0 or any newer version
  * @link               http://www.shipsimu.org
  *
@@ -39,7 +43,7 @@ class Member extends BaseUser implements ManageableMember, Registerable {
         *
         * @return      void
         */
-       protected function __construct () {
+       private function __construct () {
                // Call parent constructor
                parent::__construct(__CLASS__);
        }
@@ -54,7 +58,13 @@ class Member extends BaseUser implements ManageableMember, Registerable {
         * @throws      UsernameMissingException        If the username does not exist
         * @throws      UnexpectedGuestAccountException         If the user status is 'guest'
         */
-       public static final function createMemberByUsername ($userName) {
+       public static final function createMemberByUsername (string $userName) {
+               // Check parameter
+               if (empty($userName)) {
+                       // Throw IAE
+                       throw new InvalidArgumentException('Parameter "userName" is empty', FrameworkInterface::EXCEPTION_INVALID_ARGUMENT);
+               }
+
                // Get a new instance
                $userInstance = new Member();
 
@@ -81,7 +91,13 @@ class Member extends BaseUser implements ManageableMember, Registerable {
         * @param       $email                  Email address of the user
         * @return      $userInstance   An instance of this user class
         */
-       public static final function createMemberByEmail ($email) {
+       public static final function createMemberByEmail (string $email) {
+               // Check parameter
+               if (empty($email)) {
+                       // Throw IAE
+                       throw new InvalidArgumentException('Parameter "email" is empty', FrameworkInterface::EXCEPTION_INVALID_ARGUMENT);
+               }
+
                // Get a new instance
                $userInstance = new Member();
 
@@ -132,7 +148,7 @@ class Member extends BaseUser implements ManageableMember, Registerable {
                // If there is no action use the default on
                if (is_null($lastAction)) {
                        $lastAction = FrameworkBootstrap::getConfigurationInstance()->getConfigEntry('login_default_action');
-               } // END - if
+               }
 
                // Get a critieria instance
                $searchInstance = ObjectFactory::createObjectByConfiguredName('search_criteria_class');