<?php
// Own namespace
-namespace CoreFramework\Helper;
+namespace Org\Mxchange\CoreFramework\Helper;
// Import framework stuff
-use CoreFramework\Factory\ObjectFactory;
-use CoreFramework\Generic\FrameworkInterface;
-use CoreFramework\Generic\NullPointerException;
-use CoreFramework\Object\BaseFrameworkSystem;
-use CoreFramework\Registry\Registry;
+use Org\Mxchange\CoreFramework\Factory\ObjectFactory;
+use Org\Mxchange\CoreFramework\Generic\FrameworkInterface;
+use Org\Mxchange\CoreFramework\Generic\NullPointerException;
+use Org\Mxchange\CoreFramework\Object\BaseFrameworkSystem;
+use Org\Mxchange\CoreFramework\Registry\GenericRegistry;
+use Org\Mxchange\CoreFramework\Utils\String\StringUtils;
/**
* A generic helper class with generic methods
*
* @author Roland Haeder <webmaster@shipsimu.org>
* @version 0.0.0
- * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2017 Core Developer Team
+ * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2020 Core Developer Team
* @license GNU GPL 3.0 or any newer version
* @link http://www.shipsimu.org
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-class BaseHelper extends BaseFrameworkSystem {
+abstract class BaseHelper extends BaseFrameworkSystem {
/**
* Instance to the class which provides field values
*/
/**
* Array with groups
*/
- private $groups = array();
+ private $groups = [];
/**
* Array with sub group
*/
- private $subGroups = array();
+ private $subGroups = [];
/**
* Previously opened group
* @param $className Real name of the class
* @return void
*/
- protected function __construct ($className) {
+ protected function __construct (string $className) {
// Call parent constructor
parent::__construct($className);
}
* @param $newContent New content to add
* @return void
*/
- protected final function addContent ($newContent) {
- $this->content .= (string) trim($newContent) . PHP_EOL;
+ protected final function addContent (string $newContent) {
+ $this->content .= trim($newContent) . PHP_EOL;
}
/**
* @param $content Content to to the base
* @return void
*/
- protected function addHeaderContent ($content) {
+ protected function addHeaderContent (string $content) {
// Add the header content
- $this->groups['header']['content'] = (string) trim($content);
+ $this->groups['header']['content'] = trim($content);
}
/**
* @param $content Content to to the base
* @return void
*/
- protected function addFooterContent ($content) {
+ protected function addFooterContent (string $content) {
// Add the footer content
- $this->groups['footer']['content'] = (string) trim($content);
+ $this->groups['footer']['content'] = trim($content);
}
/**
* @param $newContent New content to add
* @return void
*/
- protected final function addContentToPreviousGroup ($newContent) {
+ protected final function addContentToPreviousGroup (string $newContent) {
// Check for sub/group
if ($this->ifSubGroupOpenedPreviously()) {
// Get sub group id
* @param $fieldName Name of the field to assign
* @return void
*/
- public function assignField ($fieldName) {
+ public function assignField (string $fieldName) {
// Get the value from value instance
$fieldValue = $this->getValueField($fieldName);
* @return void
* @todo Rewrite this method using a helper class for filtering data
*/
- public function assignFieldWithFilter ($fieldName, $filterMethod) {
+ public function assignFieldWithFilter (string $fieldName, string $filterMethod) {
// Get the value
$fieldValue = $this->getValueField($fieldName);
//* DEBUG: */ self::createDebugInstance(__CLASS__, __LINE__)->debugOutput($fieldName.'='.$fieldValue);
// Now filter it through the value through the filter method
- $filteredValue = call_user_func_array(array($this, 'doFilter' . self::convertToClassName($filterMethod)), array($fieldValue));
+ $filteredValue = call_user_func_array(array($this, 'doFilter' . StringUtils::convertToClassName($filterMethod)), array($fieldValue));
// Assign it with a template variable
$this->getTemplateInstance()->assignVariable('block_' . $fieldName, $filteredValue);
* @return void
* @throws NullPointerException If recovery of requested value instance failed
*/
- public function prefetchValueInstance ($registryKey, $extraKey = NULL) {
+ public function prefetchValueInstance (string $registryKey, string $extraKey = NULL) {
//* DEBUG: */ self::createDebugInstance(__CLASS__, __LINE__)->debugOutput('O:'.$registryKey.'/'.$extraKey);
try {
// Get the required instance
- $this->valueInstance = Registry::getRegistry()->getInstance($registryKey);
+ $this->valueInstance = GenericRegistry::getRegistry()->getInstance($registryKey);
} catch (NullPointerException $e) {
// Not set in registry
// @TODO Try to log it here
if (!is_null($extraKey)) {
try {
// Get the extra instance.
- $this->extraInstance = Registry::getRegistry()->getInstance($extraKey);
+ $this->extraInstance = GenericRegistry::getRegistry()->getInstance($extraKey);
} catch (NullPointerException $e) {
// Try to create it
$this->extraInstance = ObjectFactory::createObjectByConfiguredName($extraKey . '_class', array($this->valueInstance));
* @return void
* @throws HelperGroupAlreadyCreatedException If the group was already created before
*/
- protected function openGroupByIdContent ($groupId, $content, $tag) {
+ protected function openGroupByIdContent (string $groupId, string $content, string $tag) {
//* DEBUG: */ echo "OPEN:groupId={$groupId},content=<pre>".htmlentities($content)."</pre>\n";
// Is the group already there?
if (isset($this->groups[$groupId])) {
* @return void
* @throws HelperNoPreviousOpenedGroupException If no previously opened group was found
*/
- public function closePreviousGroupByContent ($content = '') {
+ public function closePreviousGroupByContent (string $content = '') {
// Check if any sub group was opened before
if ($this->ifSubGroupOpenedPreviously()) {
// Close it automatically
* @return void
* @throws HelperSubGroupAlreadyCreatedException If the sub group was already created before
*/
- protected function openSubGroupByIdContent ($subGroupId, $content, $tag) {
+ protected function openSubGroupByIdContent (string $subGroupId, string $content, string $tag) {
//* DEBUG: */ echo "OPEN:subGroupId={$subGroupId},content=".htmlentities($content)."<br />\n";
// Is the group already there?
if (isset($this->subGroups[$subGroupId])) {
* @return void
* @throws HelperNoPreviousOpenedSubGroupException If no previously opened sub group was found
*/
- public function closePreviousSubGroupByContent ($content = '') {
+ public function closePreviousSubGroupByContent (string $content = '') {
// Check if any sub group was opened before
if ($this->ifSubGroupOpenedPreviously() === false) {
// Then throw an exception
* @param $groupId Id of group to check
* @return $isOpened Whether the specified group is open
*/
- protected function ifGroupIsOpened ($groupId) {
+ protected function ifGroupIsOpened (string $groupId) {
// Is the group open?
$isOpened = ((isset($this->groups[$groupId])) && ($this->groups[$groupId]['opened'] === true));
* @return $fieldValue Value from field
* @throws NullPointerException Thrown if $valueInstance is null
*/
- public function getValueField ($fieldName) {
+ public function getValueField (string $fieldName) {
// Init value
$fieldValue = NULL;
//* DEBUG: */ self::createDebugInstance(__CLASS__, __LINE__)->debugOutput($fieldName.'[]='.gettype($fieldValue).'('.strlen($fieldValue).') - Extra instance!');
} else {
// Field is not set
- $this->debugOutput('[' . __METHOD__ . ':' . __LINE__ . '] fieldName=' . $fieldName . ' is not set! - @TODO');
- } // END - if
+ $this->debugOutput('BASE-HELPER: fieldName=' . $fieldName . ' is not set! - @TODO');
+ }
// Return it
return $fieldValue;
* @param $previousGroupId Id of previously opened group
* @return void
*/
- protected final function setPreviousGroupId ($previousGroupId) {
- $this->previousGroupId = (string) $previousGroupId;
+ protected final function setPreviousGroupId (string $previousGroupId) {
+ $this->previousGroupId = $previousGroupId;
}
/**
* @param $previousSubGroupId Id of previously opened sub group
* @return void
*/
- protected final function setPreviousSubGroupId ($previousSubGroupId) {
- $this->previousSubGroupId = (string) $previousSubGroupId;
+ protected final function setPreviousSubGroupId (string $previousSubGroupId) {
+ $this->previousSubGroupId = $previousSubGroupId;
}
}