/** * @return KalturaContentResource content resource for the given asset in the target account * @param string $assetId * @param KalturaServiceBase $assetService * @param bool $remote */ protected function getAssetContentResource($assetId, KalturaServiceBase $assetService, $remote) { $contentResource = null; if ($remote) { // get remote resource $contentResource = new KalturaRemoteStorageResources(); $contentResource->resources = array(); $remotePaths = $assetService->getRemotePaths($assetId); $remotePaths = $remotePaths->objects; foreach ($remotePaths as $remotePath) { /* @var $remotePath KalturaRemotePath */ $res = new KalturaRemoteStorageResource(); if (!isset($this->mapStorageProfileIds[$remotePath->storageProfileId])) { throw new Exception('Cannot map storage profile ID [' . $remotePath->storageProfileId . ']'); } $res->storageProfileId = $this->mapStorageProfileIds[$remotePath->storageProfileId]; $res->url = $remotePath->uri; $contentResource->resources[] = $res; } } else { // get local resource $contentResource = new KalturaUrlResource(); $contentResource->url = $this->getAssetUrl($assetId, $assetService); } return $contentResource; }
/** * @return KalturaContentResource content resource for the given asset in the target account * @param string $assetId * @param KalturaServiceBase $assetService * @param bool $remote */ protected function getAssetContentResource($assetId, KalturaServiceBase $assetService, $remote) { KalturaLog::debug('Getting content resource for asset id [' . $assetId . '] remote [' . $remote . ']'); $contentResource = null; if ($remote) { // get remote resource $contentResource = new KalturaRemoteStorageResources(); $contentResource->resources = array(); $remotePaths = $assetService->getRemotePaths($assetId); $remotePaths = $remotePaths->objects; foreach ($remotePaths as $remotePath) { /* @var $remotePath KalturaRemotePath */ $res = new KalturaRemoteStorageResource(); if (!isset($this->mapStorageProfileIds[$remotePath->storageProfileId])) { throw new Exception('Cannot map storage profile ID [' . $remotePath->storageProfileId . ']'); } $res->storageProfileId = $this->mapStorageProfileIds[$remotePath->storageProfileId]; $res->url = $remotePath->uri; $contentResource->resources[] = $res; } } else { // get local resource $contentResource = new KalturaUrlResource(); $options = new KalturaFlavorAssetUrlOptions(); $options->fileName = $assetId; $contentResource->url = $assetService->getUrl($assetId, null, false, $options); } return $contentResource; }