X-Git-Url: https://git.mxchange.org/?p=core.git;a=blobdiff_plain;f=inc%2Fclasses%2Fmain%2Fclass_BaseFrameworkSystem.php;h=b65564720e8eaa092f0bf3ad94d0f86d21355c94;hp=abcefc8c35f6b2aaed66eaa6e7fa31ed0e3c14c1;hb=94f39c01ee274ffee017375906b171f9eb418ab3;hpb=0a638eea103f0f2b6c48374cb8d01e68893f5a65 diff --git a/inc/classes/main/class_BaseFrameworkSystem.php b/inc/classes/main/class_BaseFrameworkSystem.php index abcefc8c..b6556472 100644 --- a/inc/classes/main/class_BaseFrameworkSystem.php +++ b/inc/classes/main/class_BaseFrameworkSystem.php @@ -5,7 +5,7 @@ * * @author Roland Haeder * @version 0.0.0 - * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2013 Core Developer Team + * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2014 Core Developer Team * @license GNU GPL 3.0 or any newer version * @link http://www.shipsimu.org * @@ -23,6 +23,11 @@ * along with this program. If not, see . */ class BaseFrameworkSystem extends stdClass implements FrameworkInterface { + /** + * Length of output from hash() + */ + private static $hashLength = NULL; + /** * The real class name */ @@ -111,7 +116,7 @@ class BaseFrameworkSystem extends stdClass implements FrameworkInterface { /** * Instance of the stacker */ - private $stackerInstance = NULL; + private $stackInstance = NULL; /** * A Compressor instance @@ -124,7 +129,7 @@ class BaseFrameworkSystem extends stdClass implements FrameworkInterface { private $parserInstance = NULL; /** - * A ProtocolHandler instance + * A HandleableProtocol instance */ private $protocolInstance = NULL; @@ -144,12 +149,12 @@ class BaseFrameworkSystem extends stdClass implements FrameworkInterface { private $sourceInstance = NULL; /** - * An instance of a InputStreamable class + * An instance of a InputStream class */ private $inputStreamInstance = NULL; /** - * An instance of a OutputStreamable class + * An instance of a OutputStream class */ private $outputStreamInstance = NULL; @@ -178,6 +183,31 @@ class BaseFrameworkSystem extends stdClass implements FrameworkInterface { */ private $pointerInstance = NULL; + /** + * An instance of an Indexable class + */ + private $indexInstance = NULL; + + /** + * An instance of a Block class + */ + private $blockInstance = NULL; + + /** + * A Minable instance + */ + private $minableInstance = NULL; + + /** + * A FrameworkDirectory instance + */ + private $directoryInstance = NULL; + + /** + * Listener instance + */ + private $listenerInstance = NULL; + /** * Thousands separator */ @@ -462,7 +492,7 @@ class BaseFrameworkSystem extends stdClass implements FrameworkInterface { $this->debugBackTrace(sprintf('Tried to set a missing field. name=%s, value[%s]=%s', $name, gettype($value), - $value + print_r($value, TRUE) )); } @@ -938,20 +968,20 @@ class BaseFrameworkSystem extends stdClass implements FrameworkInterface { /** * Setter for stacker instance * - * @param $stackerInstance An instance of an stacker + * @param $stackInstance An instance of an stacker * @return void */ - public final function setStackerInstance (Stackable $stackerInstance) { - $this->stackerInstance = $stackerInstance; + public final function setStackInstance (Stackable $stackInstance) { + $this->stackInstance = $stackInstance; } /** * Getter for stacker instance * - * @return $stackerInstance An instance of an stacker + * @return $stackInstance An instance of an stacker */ - public final function getStackerInstance () { - return $this->stackerInstance; + public final function getStackInstance () { + return $this->stackInstance; } /** @@ -993,19 +1023,19 @@ class BaseFrameworkSystem extends stdClass implements FrameworkInterface { } /** - * Setter for ProtocolHandler instance + * Setter for HandleableProtocol instance * - * @param $protocolInstance An instance of an ProtocolHandler + * @param $protocolInstance An instance of an HandleableProtocol * @return void */ - public final function setProtocolInstance (ProtocolHandler $protocolInstance = NULL) { + public final function setProtocolInstance (HandleableProtocol $protocolInstance = NULL) { $this->protocolInstance = $protocolInstance; } /** - * Getter for ProtocolHandler instance + * Getter for HandleableProtocol instance * - * @return $protocolInstance An instance of an ProtocolHandler + * @return $protocolInstance An instance of an HandleableProtocol */ public final function getProtocolInstance () { return $this->protocolInstance; @@ -1090,40 +1120,40 @@ class BaseFrameworkSystem extends stdClass implements FrameworkInterface { } /** - * Getter for a InputStreamable instance + * Getter for a InputStream instance * - * @param $inputStreamInstance The InputStreamable instance + * @param $inputStreamInstance The InputStream instance */ protected final function getInputStreamInstance () { return $this->inputStreamInstance; } /** - * Setter for a InputStreamable instance + * Setter for a InputStream instance * - * @param $inputStreamInstance The InputStreamable instance + * @param $inputStreamInstance The InputStream instance * @return void */ - protected final function setInputStreamInstance (InputStreamable $inputStreamInstance) { + protected final function setInputStreamInstance (InputStream $inputStreamInstance) { $this->inputStreamInstance = $inputStreamInstance; } /** - * Getter for a OutputStreamable instance + * Getter for a OutputStream instance * - * @param $outputStreamInstance The OutputStreamable instance + * @param $outputStreamInstance The OutputStream instance */ protected final function getOutputStreamInstance () { return $this->outputStreamInstance; } /** - * Setter for a OutputStreamable instance + * Setter for a OutputStream instance * - * @param $outputStreamInstance The OutputStreamable instance + * @param $outputStreamInstance The OutputStream instance * @return void */ - protected final function setOutputStreamInstance (OutputStreamable $outputStreamInstance) { + protected final function setOutputStreamInstance (OutputStream $outputStreamInstance) { $this->outputStreamInstance = $outputStreamInstance; } @@ -1226,7 +1256,7 @@ class BaseFrameworkSystem extends stdClass implements FrameworkInterface { /** * Setter for InputOutputPointer instance * - * @param $pointerInstance An instance of an InputOutputPointer + * @param $pointerInstance An instance of an InputOutputPointer class * @return void */ protected final function setPointerInstance (InputOutputPointer $pointerInstance) { @@ -1236,12 +1266,107 @@ class BaseFrameworkSystem extends stdClass implements FrameworkInterface { /** * Getter for InputOutputPointer instance * - * @return $pointerInstance An instance of an InputOutputPointer + * @return $pointerInstance An instance of an InputOutputPointer class */ public final function getPointerInstance () { return $this->pointerInstance; } + /** + * Setter for Indexable instance + * + * @param $indexInstance An instance of an Indexable class + * @return void + */ + protected final function setIndexInstance (Indexable $indexInstance) { + $this->indexInstance = $indexInstance; + } + + /** + * Getter for Indexable instance + * + * @return $indexInstance An instance of an Indexable class + */ + public final function getIndexInstance () { + return $this->indexInstance; + } + + /** + * Setter for Block instance + * + * @param $blockInstance An instance of an Block class + * @return void + */ + protected final function setBlockInstance (Block $blockInstance) { + $this->blockInstance = $blockInstance; + } + + /** + * Getter for Block instance + * + * @return $blockInstance An instance of an Block class + */ + public final function getBlockInstance () { + return $this->blockInstance; + } + + /** + * Setter for Minable instance + * + * @param $minableInstance A Minable instance + * @return void + */ + protected final function setMinableInstance (Minable $minableInstance) { + $this->minableInstance = $minableInstance; + } + + /** + * Getter for minable instance + * + * @return $minableInstance A Minable instance + */ + protected final function getMinableInstance () { + return $this->minableInstance; + } + + /** + * Setter for FrameworkDirectory instance + * + * @param $directoryInstance A FrameworkDirectoryPointer instance + * @return void + */ + protected final function setDirectoryInstance (FrameworkDirectory $directoryInstance) { + $this->directoryInstance = $directoryInstance; + } + + /** + * Getter for FrameworkDirectory instance + * + * @return $directoryInstance A FrameworkDirectory instance + */ + protected final function getDirectoryInstance () { + return $this->directoryInstance; + } + + /** + * Setter for listener instance + * + * @param $listenerInstance A Listenable instance + * @return void + */ + protected final function setListenerInstance (Listenable $listenerInstance) { + $this->listenerInstance = $listenerInstance; + } + + /** + * Getter for listener instance + * + * @return $listenerInstance A Listenable instance + */ + protected final function getListenerInstance () { + return $this->listenerInstance; + } + /** * Checks whether an object equals this object. You should overwrite this * method to implement own equality checks @@ -2090,19 +2215,37 @@ class BaseFrameworkSystem extends stdClass implements FrameworkInterface { } /** - * Hashes a given string with a simple but stronger hash function (no salts) + * Hashes a given string with a simple but stronger hash function (no salt) + * and hex-encode it. * * @param $str The string to be hashed * @return $hash The hash from string $str */ - public function hashString ($str) { + public static final function hash ($str) { // Hash given string with (better secure) hasher - $hash = mhash(MHASH_SHA256, $str); + $hash = bin2hex(mhash(MHASH_SHA256, $str)); // Return it return $hash; } + /** + * "Getter" for length of hash() output. This will be "cached" to speed up + * things. + * + * @return $length Length of hash() output + */ + public static final function getHashLength () { + // Is it cashed? + if (is_null(self::$hashLength)) { + // No, then hash a string and save its length. + self::$hashLength = strlen(self::hash('abc123')); + } // END - if + + // Return it + return self::$hashLength; + } + /** * Checks whether the given number is really a number (only chars 0-9). *