/** * Update Business-Process server status by id * * @action updateStatus * @param int $id * @param KalturaBusinessProcessServerStatus $status * @return KalturaBusinessProcessServer * * @throws KalturaBusinessProcessNotificationErrors::BUSINESS_PROCESS_SERVER_NOT_FOUND */ function updateStatusAction($id, $status) { // get the object $dbBusinessProcessServer = BusinessProcessServerPeer::retrieveByPK($id); if (!$dbBusinessProcessServer) { throw new KalturaAPIException(KalturaBusinessProcessNotificationErrors::BUSINESS_PROCESS_SERVER_NOT_FOUND, $id); } if ($status == BusinessProcessServerStatus::ACTIVE) { //Check uniqueness of new object's system name $systemNameServers = BusinessProcessServerPeer::retrieveBySystemName($dbBusinessProcessServer->getSystemName()); if (count($systemNameServers)) { throw new KalturaAPIException(KalturaBusinessProcessNotificationErrors::BUSINESS_PROCESS_SERVER_DUPLICATE_SYSTEM_NAME, $dbBusinessProcessServer->getSystemName()); } } // save the object $dbBusinessProcessServer->setStatus($status); $dbBusinessProcessServer->save(); // return the saved object $businessProcessServer = KalturaBusinessProcessServer::getInstanceByType($dbBusinessProcessServer->getType()); $businessProcessServer->fromObject($dbBusinessProcessServer); return $businessProcessServer; }