'2.0', 'method' => $request->getPath(), 'params' => $request->getParams(), 'id' => $request->getId(), 'context' => $this->context->getData(), ]; } public function formatResponse(Response $response): array { return [ 'jsonrpc' => '2.0', 'id' => $response->getId(), 'result' => $response->getResult(), 'context' => $this->context->getData(), ]; } public function formatErrorResponse(ErrorResponse $response): array { $exception = $response->getException(); if ($exception instanceof Throwable) { $exception = [ 'class' => get_class($exception), 'code' => $exception->getCode(), 'message' => $exception->getMessage(), ]; } return [ 'jsonrpc' => '2.0', 'id' => $response->getId(), 'error' => [ 'code' => $response->getCode(), 'message' => $response->getMessage(), 'data' => $exception, ], 'context' => $this->context->getData(), ]; } }