* $cloudsearchService = new Google\Service\CloudSearch(...); * $media = $cloudsearchService->media; * */ class Media extends \Google\Service\Resource { /** * Uploads media for indexing. The upload endpoint supports direct and resumable * upload protocols and is intended for large items that can not be [inlined * during index requests](https://developers.google.com/cloud- * search/docs/reference/rest/v1/indexing.datasources.items#itemcontent). To * index large content: 1. Call indexing.datasources.items.upload with the item * name to begin an upload session and retrieve the UploadItemRef. 1. Call * media.upload to upload the content, as a streaming request, using the same * resource name from the UploadItemRef from step 1. 1. Call * indexing.datasources.items.index to index the item. Populate the [ItemContent * ](/cloud- * search/docs/reference/rest/v1/indexing.datasources.items#ItemContent) with * the UploadItemRef from step 1. For additional information, see [Create a * content connector using the REST API](https://developers.google.com/cloud- * search/docs/guides/content-connector#rest). **Note:** This API requires a * service account to execute. (media.upload) * * @param string $resourceName Name of the media that is being downloaded. See * ReadRequest.resource_name. * @param MediaModel $postBody * @param array $optParams Optional parameters. * @return MediaModel */ public function upload($resourceName, MediaModel $postBody, $optParams = []) { $params = ['resourceName' => $resourceName, 'postBody' => $postBody]; $params = array_merge($params, $optParams); return $this->call('upload', [$params], MediaModel::class); } } // Adding a class alias for backwards compatibility with the previous class name. class_alias(Media::class, 'Google_Service_CloudSearch_Resource_Media');