public function rewind() {
    // Reset request to start from original offset.
    if ($this->response !== null) {
      if (isset($this->origin)) {
        $this->request->getOffset()->copyFrom($this->origin);
      } else {
        $this->request->clearOffset();
      }
    }

    $this->current = null;
    $this->response = null;
    $this->position = 0;
  }