RpcResponse: allow additional fields in responses

This commit is contained in:
Stéphane Lepin 2019-11-15 19:13:46 +01:00
parent ffa6371e3d
commit d1ee9d83b5
2 changed files with 6 additions and 3 deletions

View File

@ -40,9 +40,9 @@ const RpcResponse::RpcResponse ok(const RpcRequest& request, obs_data_t* additio
return response; return response;
} }
const RpcResponse::RpcResponse fail(const RpcRequest& request, const QString& errorMessage) const RpcResponse::RpcResponse fail(const RpcRequest& request, const QString& errorMessage, obs_data_t* additionalFields)
{ {
RpcResponse response(ResponseStatus::Error, request.messageId(), request.methodName()); RpcResponse response(ResponseStatus::Error, request.messageId(), request.methodName(), additionalFields);
response._errorMessage = errorMessage; response._errorMessage = errorMessage;
return response; return response;
} }

View File

@ -36,7 +36,10 @@ class RpcResponse
public: public:
static RpcResponse ofRequest(const RpcRequest& request); static RpcResponse ofRequest(const RpcRequest& request);
static const RpcResponse ok(const RpcRequest& request, obs_data_t* additionalFields = nullptr); static const RpcResponse ok(const RpcRequest& request, obs_data_t* additionalFields = nullptr);
static const RpcResponse fail(const RpcRequest& request, const QString& errorMessage); static const RpcResponse fail(
const RpcRequest& request, const QString& errorMessage,
obs_data_t* additionalFields = nullptr
);
ResponseStatus status() { ResponseStatus status() {
return _status; return _status;