]> git.mxchange.org Git - core.git/blobdiff - inc/classes/main/resolver/command/web/class_WebCommandResolver.php
Some cleanups, more usage of ObjectFactory:
[core.git] / inc / classes / main / resolver / command / web / class_WebCommandResolver.php
index ffcd702770e7bcce30a98e4bedfcb35a9457d692..a404e9557c6a0647f6828ea0b497d196371fd018 100644 (file)
@@ -4,7 +4,7 @@
  *
  * @author             Roland Haeder <webmaster@ship-simu.org>
  * @version            0.0.0
- * @copyright  Copyright (c) 2007 - 2009 Roland Haeder, this is free software
+ * @copyright  Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2011 Core Developer Team
  * @license            GNU GPL 3.0 or any newer version
  * @link               http://www.ship-simu.org
  *
@@ -25,7 +25,7 @@ class WebCommandResolver extends BaseCommandResolver implements CommandResolver
        /**
         * Last successfull resolved command
         */
-       private $lastCommandInstance = null;
+       private $lastCommandInstance = NULL;
 
        /**
         * Protected constructor
@@ -37,19 +37,19 @@ class WebCommandResolver extends BaseCommandResolver implements CommandResolver
                parent::__construct(__CLASS__);
 
                // Set prefix to "Web"
-               $this->setCommandPrefix("Web");
+               $this->setClassPrefix('Web');
        }
 
        /**
         * Creates an instance of a Web command resolver with a given default command
         *
         * @param       $commandName                            The default command we shall execute
-        * @param       $appInstance                            An instance of a manageable application helper class
+        * @param       $applicationInstance            An instance of a manageable application helper class
         * @return      $resolverInstance                       The prepared command resolver instance
         * @throws      EmptyVariableException          Thrown if default command is not set
         * @throws      InvalidCommandException         Thrown if default command is invalid
         */
-       public final static function createWebCommandResolver ($commandName, ManageableApplication $appInstance) {
+       public static final function createWebCommandResolver ($commandName, ManageableApplication $applicationInstance) {
                // Create the new instance
                $resolverInstance = new WebCommandResolver();
 
@@ -63,7 +63,7 @@ class WebCommandResolver extends BaseCommandResolver implements CommandResolver
                }
 
                // Set the application instance
-               $resolverInstance->setApplicationInstance($appInstance);
+               $resolverInstance->setApplicationInstance($applicationInstance);
 
                // Return the prepared instance
                return $resolverInstance;
@@ -82,14 +82,16 @@ class WebCommandResolver extends BaseCommandResolver implements CommandResolver
         */
        public function resolveCommandByRequest (Requestable $requestInstance) {
                // Init variables
-               $commandName = "";
-               $commandInstance = null;
+               $commandName = '';
+               $commandInstance = NULL;
 
-               // This goes fine so let's resolv the command
+               // This goes fine so let's resolve the command
                $commandName = $requestInstance->getRequestElement('page');
 
                // Is the command empty? Then fall back to default command
-               if (empty($commandName)) $commandName = $this->getConfigInstance()->readConfig('default_web_command');
+               if (empty($commandName)) {
+                       $commandName = $this->getConfigInstance()->getConfigEntry('default_web_command');
+               } // END - if
 
                // Check if command is valid
                if ($this->isCommandValid($commandName) === false) {
@@ -107,7 +109,7 @@ class WebCommandResolver extends BaseCommandResolver implements CommandResolver
                } // END - if
 
                // Set last command
-               $this->lastCommandInstance = $commandInstance;
+               $this->setResolvedInstance($commandInstance);
 
                // Return the resolved command instance
                return $commandInstance;
@@ -122,16 +124,18 @@ class WebCommandResolver extends BaseCommandResolver implements CommandResolver
         */
        public function resolveCommand ($commandName) {
                // Initiate the instance variable
-               $commandInstance = null;
+               $commandInstance = NULL;
 
                // Is the command empty? Then fall back to default command
-               if (empty($commandName)) $commandName = $this->getConfigInstance()->readConfig('default_web_command');
+               if (empty($commandName)) {
+                       $commandName = $this->getConfigInstance()->getConfigEntry('default_web_command');
+               } // END - if
 
                // Check if command is valid
                if ($this->isCommandValid($commandName) === false) {
                        // This command is invalid!
                        throw new InvalidCommandException(array($this, $commandName), self::EXCEPTION_INVALID_COMMAND);
-               }
+               } // END - if
 
                // Get the command
                $commandInstance = $this->loadCommand($commandName);
@@ -149,21 +153,13 @@ class WebCommandResolver extends BaseCommandResolver implements CommandResolver
         *                                                                              command class is missing (bad!)
         */
        private function loadCommand ($commandName) {
-               // Cache default command
-               $defaultCommand = $this->getConfigInstance()->readConfig('default_web_command');
-
                // Init command instance
-               $commandInstance = null;
-
-               // Create command class name
-               $this->setClassName(sprintf("Web%sCommand",
-                       $this->convertToClassName($commandName)
-               ));
+               $commandInstance = NULL;
 
                // Is this class loaded?
                if (!class_exists($this->getClassName())) {
                        // Class not found, so throw an exception
-                       throw new InvalidCommandException(array($this, $defaultCommand), self::EXCEPTION_INVALID_COMMAND);
+                       throw new InvalidCommandException(array($this, $commandName), self::EXCEPTION_INVALID_COMMAND);
                } // END - if
 
                // Initiate the command