Code syncronized with shipsimu code base
[mailer.git] / inc / classes / main / resolver / class_BaseResolver.php
index 9345109a8ac24b99b46e841dc6daf41cd6cd7f60..07e19662f4243889bbc7292e2e99bf5ca1c21336 100644 (file)
@@ -4,7 +4,7 @@
  *
  * @author             Roland Haeder <webmaster@ship-simu.org>
  * @version            0.0.0
- * @copyright  Copyright(c) 2007, 2008 Roland Haeder, this is free software
+ * @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
  *
  */
 class BaseResolver extends BaseFrameworkSystem {
        /**
-        * Validated command name
+        * Class name
         */
-       private $commandName = "";
+       private $className = "";
 
-       /**
-        * Prefix for local, remote or other resolver
-        */
-       private $commandPrefix = "";
-
-       /**
-        * A controller instance
-        */
-       private $controllerInstance = null;
+       // Exception constants
+       const EXCEPTION_INVALID_COMMAND    = 0x1d0;
+       const EXCEPTION_INVALID_CONTROLLER = 0x1d1;
+       const EXCEPTION_INVALID_ACTION     = 0x1d2;
 
        /**
         * Protected constructor
         *
+        * @param       $className      Real name of the class
         * @return      void
         */
-       protected function __construct ($class) {
+       protected function __construct ($className) {
                // Call parent constructor
-               parent::__construct($class);
+               parent::__construct($className);
 
                // Clean up a little
                $this->removeNumberFormaters();
@@ -52,94 +48,22 @@ class BaseResolver extends BaseFrameworkSystem {
        }
 
        /**
-        * Setter for controller instance (this surely breaks a bit the MVC patterm)
+        * Setter for class name
         *
-        * @param       $controllerInstance             An instance of the controller
+        * @param       $className      Name of the class
         * @return      void
         */
-       public final function setControllerInstance (Controller $controllerInstance) {
-               $this->controllerInstance = $controllerInstance;
+       protected final function setClassName ($className) {
+               $this->className = $className;
        }
 
        /**
-        * Getter for controller instance (this surely breaks a bit the MVC patterm)
+        * Getter for class name
         *
-        * @return      $controllerInstance             An instance of the controller
+        * @return      $className      Name of the class
         */
-       public final function getControllerInstance () {
-               return $this->controllerInstance;
-       }
-
-       /**
-        * Setter for command name
-        *
-        * @param       $commandName    Last validated command name
-        * @return      void
-        */
-       protected final function setCommandName ($commandName) {
-               $this->commandName = $commandName;
-       }
-
-       /**
-        * Getter for command name
-        *
-        * @return      $commandName    Last validated command name
-        */
-       protected final function getCommandName () {
-               return $this->commandName;
-       }
-
-       /**
-        * Setter for command prefix
-        *
-        * @param       $commandPrefix  Last validated commandPrefix
-        * @return      void
-        */
-       protected final function setCommandPrefix ($commandPrefix) {
-               $this->commandPrefix = $commandPrefix;
-       }
-
-       /**
-        * Checks wether the given command is valid
-        *
-        * @param       $commandName    The default command we shall execute
-        * @return      $isValid                Wether the given command is valid
-        * @throws      EmptyVariableException  Thrown if the given command is not set
-        */
-       public function isCommandValid ($commandName) {
-               // By default nothing shall be valid
-               $isValid = false;
-
-               // Is a command set?
-               if (empty($commandName)) {
-                       // Then thrown an exception here
-                       throw new EmptyVariableException(array($this, 'commandName'), self::EXCEPTION_UNEXPECTED_EMPTY_STRING);
-               }
-
-               // Now, let us create the full name of the command class
-               $class = sprintf("%s%sCommand",
-                       $this->commandPrefix,
-                       $this->convertToClassName($commandName)
-               );
-
-               // Is this class already loaded?
-               if (class_exists($class)) {
-                       // This class does exist. :-)
-                       $isValid = true;
-               }
-
-               // Debug output
-               //echo "<strong>----- ".__METHOD__." -----</strong><br />\n";
-               //print($class."<pre>");
-               //debug_print_backtrace();
-               //var_dump($isValid);
-               //print("</pre>");
-
-               // Set command name
-               $this->setCommandName($commandName);
-
-               // Return the result
-               return $isValid;
+       public final function getClassName () {
+               return $this->className;
        }
 }