X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=application%2Fhub%2Fmain%2Fhandler%2Fmessage-types%2Fclass_BaseMessageHandler.php;h=adf44452169ebf51b0b7788c28b1c8b1592df2a8;hb=8e90b922c66aa345f5a6547b2535f90f49310857;hp=b20a8ab3bab15e40845262c06d6a358a274b36b0;hpb=f7f9d94056e3a6608c75c6cd4f972eab39373bc9;p=hub.git diff --git a/application/hub/main/handler/message-types/class_BaseMessageHandler.php b/application/hub/main/handler/message-types/class_BaseMessageHandler.php index b20a8ab3b..adf444521 100644 --- a/application/hub/main/handler/message-types/class_BaseMessageHandler.php +++ b/application/hub/main/handler/message-types/class_BaseMessageHandler.php @@ -22,33 +22,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ -abstract class BaseMessageHandler extends BaseHandler { - /** - * Array with search criteria elements - */ - protected $searchData = array(); - - /** - * Array with all data XML nodes (which hold the actual data) and their values - */ - protected $messageDataElements = array(); - - /** - * Array for translating message data elements (other node's data mostly) - * into configuration elements. - */ - protected $messageToConfig = array(); - - /** - * Array for copying configuration entries - */ - protected $configCopy = array(); - - /** - * Last exception instance from database layer or NULL (default) - */ - private $lastException = NULL; - +abstract class BaseMessageHandler extends BaseDataHandler { /** * Protected constructor * @@ -60,15 +34,6 @@ abstract class BaseMessageHandler extends BaseHandler { parent::__construct($className); } - /** - * Getter for last exception - * - * @return $lastException Last thrown exception - */ - protected final function getLastException () { - return $this->lastException; - } - /** * "Getter" for a translated last exception as a status code * @@ -79,9 +44,9 @@ abstract class BaseMessageHandler extends BaseHandler { $statusCode = self::MESSAGE_STATUS_CODE_OKAY; // Is the last exception not NULL? - if ($this->lastException instanceof FrameworkException) { + if ($this->getLastException() instanceof FrameworkException) { // "Determine" the right status code (may differ from exception to exception) - $this->debugInstance('lastException=' . $this->lastException->__toString() . ',message=' . $this->lastException->getMessage() . ' is not finished!'); + $this->debugInstance('lastException=' . $this->getLastException()->__toString() . ',message=' . $this->getLastException()->getMessage() . ' is not finished!'); } // END - if // Return the status code @@ -132,66 +97,8 @@ abstract class BaseMessageHandler extends BaseHandler { } // Save last exception - $this->lastException = $wrapperInstance->getLastException(); - } - - /** - * Prepares a message as answer for given message data for delivery. - * - * @param $messageData An array with all message data - * @param $packageInstance An instance of a Deliverable instance - * @return void - */ - protected function prepareAnswerMessage (array $messageData, Deliverable $packageInstance) { - // Debug message - /* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput('MESSAGE-HANDLER[' . $this->__toString() . ']: Going to send an answer message ...'); - - // Get a helper instance based on this handler's name - $helperInstance = ObjectFactory::createObjectByConfiguredName('node_answer_' . $this->getHandlerName() . '_helper_class', array($messageData)); - - // Load descriptor XML - $helperInstance->loadDescriptorXml(); - - /* - * Set missing (temporary) configuration data, mostly it needs to be - * copied from message data array. - */ - $this->initMessageConfigurationData($messageData); - - // Compile any configuration variables - $helperInstance->getTemplateInstance()->compileConfigInVariables(); - - // Get node instance - $nodeInstance = Registry::getRegistry()->getInstance('node'); - - // Deliver the package - $helperInstance->sendPackage($nodeInstance); - - /* - * Remove temporary configuration - */ - $this->removeMessageConfigurationData($messageData); - - // Debug message - /* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput('MESSAGE-HANDLER[' . $this->__toString() . ']: Answer message has been prepared.'); + $this->setLastException($wrapperInstance->getLastException()); } - - /** - * Initializes configuration data from given message data array - * - * @param $messageData An array with all message data - * @return void - */ - abstract protected function initMessageConfigurationData (array $messageData); - - /** - * Removes configuration data with given message data array from global - * configuration - * - * @param $messageData An array with all message data - * @return void - */ - abstract protected function removeMessageConfigurationData (array $messageData); } // [EOF]