requestWrapper = $requestWrapper; $this->data = \DeliciousBrains\WP_Offload_Media\Gcp\GuzzleHttp\Psr7\stream_for($data); $this->uri = $uri; $this->metadata = isset($options['metadata']) ? $options['metadata'] : []; $this->chunkSize = isset($options['chunkSize']) ? $options['chunkSize'] : null; $this->requestOptions = array_intersect_key($options, ['restOptions' => null, 'retries' => null, 'requestTimeout' => null]); $this->contentType = isset($options['contentType']) ? $options['contentType'] : 'application/octet-stream'; } /** * @return array */ public abstract function upload(); }