X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=framework%2Fmain%2Fclasses%2Fcontroller%2Fclass_BaseController.php;h=dc5fe7045a13e3cae5ef180923a85449e54cc8ec;hb=498e6b065ce47804bff4e1073592a2cc8e28f8ef;hp=efc4ba35eda18d4255eeb640f829461bc637256d;hpb=adcdfc000eba8fac128786adcb8cb480085e7e76;p=core.git diff --git a/framework/main/classes/controller/class_BaseController.php b/framework/main/classes/controller/class_BaseController.php index efc4ba35..dc5fe704 100644 --- a/framework/main/classes/controller/class_BaseController.php +++ b/framework/main/classes/controller/class_BaseController.php @@ -10,6 +10,7 @@ use Org\Mxchange\CoreFramework\Object\BaseFrameworkSystem; use Org\Mxchange\CoreFramework\Registry\GenericRegistry; use Org\Mxchange\CoreFramework\Registry\Registerable; use Org\Mxchange\CoreFramework\Request\Requestable; +use Org\Mxchange\CoreFramework\Resolver\Resolver; use Org\Mxchange\CoreFramework\Response\Responseable; /** @@ -44,10 +45,15 @@ abstract class BaseController extends BaseFrameworkSystem implements Registerabl const FILTER_CHAIN_PRE_COMMAND = 'controller_pre_command'; const FILTER_CHAIN_POST_COMMAND = 'controller_post_command'; + /** + * Resolver instance + */ + private $resolverInstance = NULL; + /** * Generic filter chains */ - private $filterChains = array(); + private $filterChains = []; /** * Protected constructor @@ -55,7 +61,7 @@ abstract class BaseController extends BaseFrameworkSystem implements Registerabl * @param $className Name of the class * @return void */ - protected function __construct ($className) { + protected function __construct (string $className) { // Call parent constructor parent::__construct($className); @@ -67,6 +73,25 @@ abstract class BaseController extends BaseFrameworkSystem implements Registerabl GenericRegistry::getRegistry()->addInstance('controller', $this); } + /** + * Setter for resolver instance + * + * @param $resolverInstance Instance of a command resolver class + * @return void + */ + protected final function setResolverInstance (Resolver $resolverInstance) { + $this->resolverInstance = $resolverInstance; + } + + /** + * Getter for resolver instance + * + * @return $resolverInstance Instance of a command resolver class + */ + protected final function getResolverInstance () { + return $this->resolverInstance; + } + /** * Executes a command with pre and post filters * @@ -110,7 +135,7 @@ abstract class BaseController extends BaseFrameworkSystem implements Registerabl $formAction = $requestInstance->getRequestElement('form'); // Get command instance from resolver - $commandInstance = $this->getResolverInstance()->resolveCommand($formAction); + $commandInstance = $this->getResolverInstance()->resolveCommand('Org\Mxchange\CoreFramework\Command\Failed', $formAction); // Add more filters by the command $commandInstance->addExtraFilters($this, $requestInstance);