protected function internalFulfilled(kScope $scope) { KalturaLog::debug("Validating edge server [{$this->getEdgeServerIds()}] are active"); $edgeServers = ServerNodePeer::retrieveRegisteredServerNodesArrayByPKs($this->edgeServerIds); if (!count($edgeServers)) { KalturaLog::debug("Unable to find active edge in list, condition is false"); return false; } KalturaLog::debug("Found active edge in list, condition is true"); return true; }
protected function internalFulfilled(kScope $scope) { KalturaLog::debug("Validating edge server [{$this->getEdgeServerIds()}] are active"); $edgeServers = ServerNodePeer::retrieveRegisteredServerNodesArrayByPKs($this->edgeServerIds); if (!count($edgeServers)) { KalturaLog::debug("Unable to find active edge in list, condition is false"); return false; } $isFulfilled = false; foreach ($edgeServers as $edgeServer) { /* @var $edgeServer EdgeServerNode */ if ($edgeServer->validateEdgeTreeRegistered()) { $isFulfilled = true; KalturaLog::debug("Found active edge in list, condition is true"); break; } } return $isFulfilled; }
public function getDeliveryServerNodeUrl($removeAfterUse = false) { $deliveryUrl = null; $deliveryNodeIds = $this->params->getEdgeServerIds(); $deliveryNodes = ServerNodePeer::retrieveRegisteredServerNodesArrayByPKs($deliveryNodeIds); if (!count($deliveryNodes)) { KalturaLog::debug("No active delivery nodes found among the requested edge list: " . print_r($deliveryNodeIds, true)); return null; } /* @var $deliveryNode EdgeServerNode */ $deliveryNode = array_shift($deliveryNodes); $deliveryUrl = $deliveryNode->getPlaybackHost($this->params->getMediaProtocol(), $this->params->getFormat(), $this->getType()); if (count($deliveryNodes) && $removeAfterUse) { $this->params->setEdgeServerIds(array_diff($deliveryNodeIds, array($deliveryNode->getId()))); } return $deliveryUrl; }
public function getRegiteredNodeServers() { $edgeServerIds = explode(',', $this->getEdgeServerIds()); $edgeServers = ServerNodePeer::retrieveRegisteredServerNodesArrayByPKs($edgeServerIds); return $edgeServers; }
public function getDeliveryServerNodeUrl($removeAfterUse = false) { $deliveryUrl = null; $deliveryNodeIds = $this->params->getEdgeServerIds(); $deliveryNodes = ServerNodePeer::retrieveRegisteredServerNodesArrayByPKs($deliveryNodeIds); if (!count($deliveryNodes)) { KalturaLog::debug("No active delivery nodes found among the requested edge list: " . print_r($deliveryNodeIds, true)); return null; } $deliveryNode = null; foreach ($deliveryNodes as $node) { /* @var $node EdgeServerNode */ if ($node->validateEdgeTreeRegistered()) { $deliveryNode = $node; break; } } if (!$deliveryNode) { KalturaLog::debug("Active edges were found but non of them is active, Failed to build valid serving route"); return null; } $deliveryUrl = $deliveryNode->getPlaybackHost($this->params->getMediaProtocol(), $this->params->getFormat(), $this->getType()); if (count($deliveryNodes) && $removeAfterUse) { $this->params->setEdgeServerIds(array_diff($deliveryNodeIds, array($deliveryNode->getId()))); } return $deliveryUrl; }