Ikwattro\GuzzleStereo\Recorder::record PHP Method

record() public method

public record ( Psr\Http\Message\ResponseInterface $response )
$response Psr\Http\Message\ResponseInterface
    public function record(ResponseInterface $response)
    {
        foreach ($this->tapes as $tape) {
            $tape->record($response);
        }
    }

Usage Example

コード例 #1
0
 /**
  * @param \Ikwattro\GuzzleStereo\Recorder
  *
  * @return callable
  */
 public static function record(Recorder $recorder)
 {
     return function (callable $handler) use($recorder) {
         return function ($request, array $options) use($handler, $recorder) {
             return $handler($request, $options)->then(function ($response) use($request, $recorder) {
                 $recorder->record($response);
                 return $response;
             }, function ($reason) use($request, $recorder) {
                 $response = $reason instanceof RequestException ? $reason->getResponse() : null;
                 if ($response) {
                     $recorder->record($response);
                 }
                 return \GuzzleHttp\Promise\rejection_for($reason);
             });
         };
     };
 }