Example #1
0
    /**
     * Update Message-Application
     *
     * @param string $messageApplicationUid Unique id of Message-Application
     * @param array  $arrayData             Data
     *
     * return bool Return true if been updated, false otherwise
     */
    public function update($messageApplicationUid, array $arrayData)
    {
        try {
            //Verify data
            if (!$this->exists($messageApplicationUid)) {
                //Return
                return false;
            }

            //Update
            $cnn = \Propel::getConnection("workflow");

            try {
                $messageApplication = \MessageApplicationPeer::retrieveByPK($messageApplicationUid);

                $messageApplication->fromArray($arrayData, \BasePeer::TYPE_FIELDNAME);

                $messageApplication->setMsgappCatchDate("now");

                if ($messageApplication->validate()) {
                    $cnn->begin();

                    $result = $messageApplication->save();

                    $cnn->commit();

                    //Return
                    return true;
                } else {
                    $msg = "";

                    foreach ($messageApplication->getValidationFailures() as $validationFailure) {
                        $msg = $msg . (($msg != "")? "\n" : "") . $validationFailure->getMessage();
                    }

                    throw new \Exception(\G::LoadTranslation("ID_REGISTRY_CANNOT_BE_UPDATED") . (($msg != "")? "\n" . $msg : ""));
                }
            } catch (\Exception $e) {
                $cnn->rollback();

                throw $e;
            }
        } catch (\Exception $e) {
            throw $e;
        }
    }