transferInfo = $transferInfo; } /** * Get all transfer information as an associative array if no $name * argument is supplied, or gets a specific transfer statistic if * a $name attribute is supplied (e.g., 'total_time'). * * @param string $name Name of the transfer stat to retrieve * * @return mixed|null|array */ public function getTransferInfo($name = null) { if (!$name) { return $this->transferInfo; } return isset($this->transferInfo[$name]) ? $this->transferInfo[$name] : null; } /** * Get the response * * @return ResponseInterface|null */ abstract public function getResponse(); /** * Intercept the request and associate a response * * @param ResponseInterface $response Response to set */ abstract public function intercept(ResponseInterface $response); }