X-Git-Url: https://git.mxchange.org/?p=core.git;a=blobdiff_plain;f=inc%2Fclasses%2Fmain%2Fresolver%2Fclass_BaseResolver.php;h=e6582f1a6fc5cca54975c77008d3891aceec96f3;hp=b3c362081976b8cdd874f87d58d81705e997f7f8;hb=5203f9bd014ad46fbc7ee54e7223dcd46e14e3b4;hpb=361e6320e50a8bb1a3ccb675388b8042361669ae diff --git a/inc/classes/main/resolver/class_BaseResolver.php b/inc/classes/main/resolver/class_BaseResolver.php index b3c36208..e6582f1a 100644 --- a/inc/classes/main/resolver/class_BaseResolver.php +++ b/inc/classes/main/resolver/class_BaseResolver.php @@ -2,11 +2,11 @@ /** * A generic resolver class * - * @author Roland Haeder + * @author Roland Haeder * @version 0.0.0 - * @copyright Copyright (c) 2007 - 2009 Roland Haeder, this is free software + * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2015 Core Developer Team * @license GNU GPL 3.0 or any newer version - * @link http://www.ship-simu.org + * @link http://www.shipsimu.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 @@ -25,12 +25,23 @@ class BaseResolver extends BaseFrameworkSystem { /** * Class name */ - private $className = ""; + private $className = ''; + + /** + * Prefix for class + */ + private $classPrefix = ''; + + /** + * (Last) resolved instance + */ + private $resolvedInstance = NULL; // Exception constants const EXCEPTION_INVALID_COMMAND = 0x1d0; const EXCEPTION_INVALID_CONTROLLER = 0x1d1; const EXCEPTION_INVALID_ACTION = 0x1d2; + const EXCEPTION_INVALID_STATE = 0x1d3; /** * Protected constructor @@ -41,10 +52,31 @@ class BaseResolver extends BaseFrameworkSystem { protected function __construct ($className) { // Call parent constructor parent::__construct($className); + } + + /** + * Getter for class name + * + * @return $className Name of the class + */ + public final function getClassName () { + return $this->className; + } + + /** + * "Getter" for class name (useable for an object factory) + * + * @return $className Capitalized class name + */ + protected function getCapitalizedClassPrefix () { + // Get class name + $className = $this->getClassPrefix(); + + // And capitalize it + $className = self::convertToClassName($className); - // Clean up a little - $this->removeNumberFormaters(); - $this->removeSystemArray(); + // Return it + return $className; } /** @@ -54,16 +86,45 @@ class BaseResolver extends BaseFrameworkSystem { * @return void */ protected final function setClassName ($className) { - $this->className = $className; + $this->className = (string) $className; } /** - * Getter for class name + * Getter for class prefix * - * @return $className Name of the class + * @return $classPrefix Last validated classPrefix */ - public final function getClassName () { - return $this->className; + protected final function getClassPrefix () { + return $this->classPrefix; + } + + /** + * Setter for class prefix + * + * @param $classPrefix Last validated classPrefix + * @return void + */ + protected final function setClassPrefix ($classPrefix) { + $this->classPrefix = (string) $classPrefix; + } + + /** + * Getter for (last) resolved instance + * + * @return $resolvedInstance Last validated resolvedInstance + */ + protected final function getResolvedInstance () { + return $this->resolvedInstance; + } + + /** + * Setter for (last) resolved instance + * + * @param $resolvedInstance (Last) validated resolved instance + * @return void + */ + protected final function setResolvedInstance (FrameworkInterface $resolvedInstance) { + $this->resolvedInstance = $resolvedInstance; } }