From: Roland Häder Date: Thu, 20 Dec 2012 21:19:52 +0000 (+0000) Subject: Updated ApplicationHelper class to latest API X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=1860f5b683d76fc86665f7dc9faebcf96f87fe84;p=shipsimu.git Updated ApplicationHelper class to latest API --- diff --git a/application/selector/class_ApplicationHelper.php b/application/selector/class_ApplicationHelper.php index 44d77cb..3eba458 100644 --- a/application/selector/class_ApplicationHelper.php +++ b/application/selector/class_ApplicationHelper.php @@ -21,10 +21,9 @@ * loader is loading classes from "exceptions", "interfaces" and "main"! * * @author Roland Haeder - * @version 0.0.0 - * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 Ship-Simu Developer Team + * @version 0.0 + * @copyright Copyright (c) 2007 - 2008 Roland Haeder, 2009 - 2012 Ship-Simu Developer Team * @license GNU GPL 3.0 or any newer version - * @link http://www.ship-simu.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 @@ -37,36 +36,31 @@ * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License - * along with this program. If not, see . + * along with this program. If not, see . */ -class ApplicationHelper extends BaseApplication implements ManageableApplication, Registerable { +class ApplicationHelper extends BaseFrameworkSystem implements ManageableApplication, Registerable { /** * The version number of this application */ - private $appVersion = ""; + private $appVersion = ''; /** * The human-readable name for this application */ - private $appName = ""; + private $appName = ''; /** * The short uni*-like name for this application */ - private $shortName = ""; - - /** - * An instance of a controller - */ - private $controllerInstance = null; + private $shortName = ''; /** * An instance of this class */ - private static $selfInstance = null; + private static $selfInstance = NULL; /** - * Protected constructor + * Private constructor * * @return void */ @@ -80,7 +74,7 @@ class ApplicationHelper extends BaseApplication implements ManageableApplication * * @return $selfInstance An instance of this class */ - public final static function getSelfInstance () { + public static final function getSelfInstance () { // Is the instance there? if (is_null(self::$selfInstance)) { self::$selfInstance = new ApplicationHelper(); @@ -93,22 +87,20 @@ class ApplicationHelper extends BaseApplication implements ManageableApplication /** * Getter for the version number * - * @return $appVersion The application's version number + * @return $appVersion The application's version number */ public final function getAppVersion () { return $this->appVersion; } - /** * Setter for the version number * - * @param $appVersion The application's version number + * @param $appVersion The application's version number * @return void */ public final function setAppVersion ($appVersion) { // Cast and set it - $appVersion = (string) $appVersion; - $this->appVersion = $appVersion; + $this->appVersion = (string) $appVersion; } /** @@ -128,8 +120,7 @@ class ApplicationHelper extends BaseApplication implements ManageableApplication */ public final function setAppName ($appName) { // Cast and set it - $appName = (string) $appName; - $this->appName = $appName; + $this->appName = (string) $appName;; } /** @@ -149,25 +140,11 @@ class ApplicationHelper extends BaseApplication implements ManageableApplication */ public final function setAppShortName ($shortName) { // Cast and set it - $shortName = (string) $shortName; - $this->shortName = $shortName; + $this->shortName = (string) $shortName; } /** - * Builds the master template's name - * - * @return $masterTemplateName Name of the master template - */ - public function buildMasterTemplateName () { - // Get short name and add suffix - $masterTemplateName = str_replace('-', '', $this->getAppShortName()) . '_main'; - - // Return it - return $masterTemplateName; - } - - /** - * Launches the admin area + * Launches the application * * @return void */ @@ -175,20 +152,16 @@ class ApplicationHelper extends BaseApplication implements ManageableApplication // Set this application in registry Registry::getRegistry()->addInstance('app', $this); - // Analyze the environment for type of response/request - $type = ConsoleTools::analyzeEnvironmentForType(); - $classType = ConsoleTools::analyzeEnvironmentForClassType(); + // Default response is console + $response = $this->getResponseTypeFromSystem(); + $responseType = $this->getResponseTypeFromSystem(); // Create a new request object - $requestInstance = ObjectFactory::createObjectByName(ucfirst($type) . 'Request'); + $requestInstance = ObjectFactory::createObjectByName($this->convertToClassName($response) . 'Request'); // Remember request instance here $this->setRequestInstance($requestInstance); - // Default response is HTTP (HTML page) and type is 'Web' - $response = $type; - $responseType = $classType; - // Do we have another response? if ($requestInstance->isRequestElementSet('request')) { // Then use it @@ -204,32 +177,26 @@ class ApplicationHelper extends BaseApplication implements ManageableApplication $this->setResponseInstance($responseInstance); // Get the parameter from the request - $commandName = $requestInstance->getRequestElement('page'); + $commandName = $requestInstance->getRequestElement('command'); // If it is null then get default command if (is_null($commandName)) { - // Get the default command + // Get default command $commandName = $responseInstance->getDefaultCommand(); // Set it in request - $requestInstance->setRequestElement('page', $commandName); + $requestInstance->setRequestElement('command', $commandName); } // END - if // Get a resolver - $resolverClass = sprintf("%sControllerResolver", $this->convertToClassName($responseType)); + $resolverClass = $this->convertToClassName($this->getAppShortName() . '_' . $responseType); $resolverInstance = ObjectFactory::createObjectByName($resolverClass, array($commandName, $this)); // Get a controller instance as well - $this->controllerInstance = $resolverInstance->resolveController(); - - // Get a web output class - $outputInstance = ObjectFactory::createObjectByConfiguredName('output_class', array($this)); - - // Set it in this application - $this->setWebOutputInstance($outputInstance); + $this->setControllerInstance($resolverInstance->resolveController()); - // Handle the request - $this->controllerInstance->handleRequest($requestInstance, $responseInstance); + // Launch the main routine here + $this->getControllerInstance()->handleRequest($requestInstance, $responseInstance); } /** @@ -242,19 +209,17 @@ class ApplicationHelper extends BaseApplication implements ManageableApplication public function handleFatalMessages (array $messageList) { // Walk through all messages foreach ($messageList as $message) { - print("MSG:" . $message . "
\n"); - } // END - if + exit(__METHOD__ . ':MSG:' . $message); + } // END - foreach } /** - * Assigns application-depending data + * Builds the master template's name * - * @param $templateInstance An instance of a template engine - * @return void + * @return $masterTemplateName Name of the master template */ - public function assignExtraTemplateData (CompileableTemplate $templateInstance) { - // Assign charset - $templateInstance->assignConfigVariable('header_charset'); + public function buildMasterTemplateName () { + return 'node_main'; } } diff --git a/application/ship-simu/class_ApplicationHelper.php b/application/ship-simu/class_ApplicationHelper.php index ff98b1c..3eba458 100644 --- a/application/ship-simu/class_ApplicationHelper.php +++ b/application/ship-simu/class_ApplicationHelper.php @@ -21,10 +21,9 @@ * loader is loading classes from "exceptions", "interfaces" and "main"! * * @author Roland Haeder - * @version 0.0.0 - * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 Ship-Simu Developer Team + * @version 0.0 + * @copyright Copyright (c) 2007 - 2008 Roland Haeder, 2009 - 2012 Ship-Simu Developer Team * @license GNU GPL 3.0 or any newer version - * @link http://www.ship-simu.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 @@ -37,36 +36,31 @@ * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License - * along with this program. If not, see . + * along with this program. If not, see . */ -class ApplicationHelper extends BaseApplication implements ManageableApplication, Registerable { +class ApplicationHelper extends BaseFrameworkSystem implements ManageableApplication, Registerable { /** * The version number of this application */ - private $appVersion = ""; + private $appVersion = ''; /** * The human-readable name for this application */ - private $appName = ""; + private $appName = ''; /** * The short uni*-like name for this application */ - private $shortName = ""; - - /** - * An instance of a controller - */ - private $controllerInstance = null; + private $shortName = ''; /** * An instance of this class */ - private static $selfInstance = null; + private static $selfInstance = NULL; /** - * Protected constructor + * Private constructor * * @return void */ @@ -93,22 +87,20 @@ class ApplicationHelper extends BaseApplication implements ManageableApplication /** * Getter for the version number * - * @return $appVersion The application's version number + * @return $appVersion The application's version number */ public final function getAppVersion () { return $this->appVersion; } - /** * Setter for the version number * - * @param $appVersion The application's version number + * @param $appVersion The application's version number * @return void */ public final function setAppVersion ($appVersion) { // Cast and set it - $appVersion = (string) $appVersion; - $this->appVersion = $appVersion; + $this->appVersion = (string) $appVersion; } /** @@ -128,8 +120,7 @@ class ApplicationHelper extends BaseApplication implements ManageableApplication */ public final function setAppName ($appName) { // Cast and set it - $appName = (string) $appName; - $this->appName = $appName; + $this->appName = (string) $appName;; } /** @@ -149,25 +140,11 @@ class ApplicationHelper extends BaseApplication implements ManageableApplication */ public final function setAppShortName ($shortName) { // Cast and set it - $shortName = (string) $shortName; - $this->shortName = $shortName; + $this->shortName = (string) $shortName; } /** - * Builds the master template's name - * - * @return $masterTemplateName Name of the master template - */ - public function buildMasterTemplateName () { - // Get short name and add suffix - $masterTemplateName = str_replace('-', '', $this->getAppShortName()) . '_main'; - - // Return it - return $masterTemplateName; - } - - /** - * Launches the admin area + * Launches the application * * @return void */ @@ -175,20 +152,16 @@ class ApplicationHelper extends BaseApplication implements ManageableApplication // Set this application in registry Registry::getRegistry()->addInstance('app', $this); - // Analyze the environment for type of response/request - $type = ConsoleTools::analyzeEnvironmentForType(); - $classType = ConsoleTools::analyzeEnvironmentForClassType(); + // Default response is console + $response = $this->getResponseTypeFromSystem(); + $responseType = $this->getResponseTypeFromSystem(); // Create a new request object - $requestInstance = ObjectFactory::createObjectByName(ucfirst($type) . 'Request'); + $requestInstance = ObjectFactory::createObjectByName($this->convertToClassName($response) . 'Request'); // Remember request instance here $this->setRequestInstance($requestInstance); - // Default response is HTTP (HTML page) and type is 'Web' - $response = $type; - $responseType = $classType; - // Do we have another response? if ($requestInstance->isRequestElementSet('request')) { // Then use it @@ -204,32 +177,26 @@ class ApplicationHelper extends BaseApplication implements ManageableApplication $this->setResponseInstance($responseInstance); // Get the parameter from the request - $commandName = $requestInstance->getRequestElement('page'); + $commandName = $requestInstance->getRequestElement('command'); // If it is null then get default command if (is_null($commandName)) { - // Get the default command + // Get default command $commandName = $responseInstance->getDefaultCommand(); // Set it in request - $requestInstance->setRequestElement('page', $commandName); + $requestInstance->setRequestElement('command', $commandName); } // END - if // Get a resolver - $resolverClass = sprintf("%sControllerResolver", $this->convertToClassName($responseType)); + $resolverClass = $this->convertToClassName($this->getAppShortName() . '_' . $responseType); $resolverInstance = ObjectFactory::createObjectByName($resolverClass, array($commandName, $this)); // Get a controller instance as well - $this->controllerInstance = $resolverInstance->resolveController(); - - // Get a web output class - $outputInstance = ObjectFactory::createObjectByConfiguredName('output_class', array($this)); - - // Set it in this application - $this->setWebOutputInstance($outputInstance); + $this->setControllerInstance($resolverInstance->resolveController()); - // Handle the request - $this->controllerInstance->handleRequest($requestInstance, $responseInstance); + // Launch the main routine here + $this->getControllerInstance()->handleRequest($requestInstance, $responseInstance); } /** @@ -242,19 +209,17 @@ class ApplicationHelper extends BaseApplication implements ManageableApplication public function handleFatalMessages (array $messageList) { // Walk through all messages foreach ($messageList as $message) { - print("MSG:".$message."
\n"); - } // END - if + exit(__METHOD__ . ':MSG:' . $message); + } // END - foreach } /** - * Assigns application-depending data + * Builds the master template's name * - * @param $templateInstance An instance of a template engine - * @return void + * @return $masterTemplateName Name of the master template */ - public function assignExtraTemplateData (CompileableTemplate $templateInstance) { - // Assign charset - $templateInstance->assignConfigVariable('header_charset'); + public function buildMasterTemplateName () { + return 'node_main'; } }