/** * @param Segment $segment * * @return RepositoryResponse * @throws RepositoryException */ public function update(Segment $segment) { if (!$segment->getId()) { throw RepositoryException::missingId($segment); } $compiledUrl = $this->baseUrl . $segment->getMemberId() . '/' . $segment->getId(); $payload = ['segment' => $segment->toArray()]; $response = $this->client->request('PUT', $compiledUrl, ['body' => json_encode($payload)]); $repositoryResponse = RepositoryResponse::fromResponse($response); return $repositoryResponse; }