nlib
nn::nlib::msgpack::jsonrpc::JsonRpcResponseWriter クラスfinal

JSON-RPCのレスポンスのバイト列を書きこむためのクラスです。 [詳解]

#include "nn/nlib/msgpack/jsonrpc/JsonRpcResponse.h"

公開メンバ関数

 JsonRpcResponseWriter ()
 デフォルトコンストラクタです。
 
 JsonRpcResponseWriter (bool msgpack)
 引数にtrueを指定するとmsgpackのバイト列を作成します。 [詳解]
 
errno_t BeginWriteResponse (uint32_t n)
 JSON-RPCのレスポンスを書きこむ前に1回呼び出します。 [詳解]
 
errno_t WriteResponse (JsonRpcResponse *result)
 JSON-RPCのレスポンスを書き込みます。 [詳解]
 
errno_t EndWriteResponse (ReallocOutputStream::UniquePtrType *ptr, size_t *n)
 JSON-RPCレスポンスの書き込みを完了します。 [詳解]
 

詳解

JSON-RPCのレスポンスのバイト列を書きこむためのクラスです。

説明
JSON-RPCのサーバー側で利用されるクラスです。
バイト列に変換した後の送信処理はユーザーが記述する必要があります。
JsonRpcServerExec()内で利用されていて、サーバーの処理にJsonRpcServerExecを利用する場合は利用する必要がありません。

JsonRpcResponse.h86 行目に定義があります。

構築子と解体子

nn::nlib::msgpack::jsonrpc::JsonRpcResponseWriter::JsonRpcResponseWriter ( bool  msgpack)
inlineexplicit

引数にtrueを指定するとmsgpackのバイト列を作成します。

引数
[in]msgpackmsgpackのバイト列を作成する場合はtrue

JsonRpcResponse.h89 行目に定義があります。

関数詳解

nn::nlib::msgpack::jsonrpc::JsonRpcResponseWriter::BeginWriteResponse ( uint32_t  n)

JSON-RPCのレスポンスを書きこむ前に1回呼び出します。

引数
[in]nレスポンスの数(n >= 2でバッチリクエストへのレスポンスになる)
戻り値
0成功しました。
ENOMEMメモリの確保に失敗した場合
nn::nlib::msgpack::jsonrpc::JsonRpcResponseWriter::EndWriteResponse ( ReallocOutputStream::UniquePtrType ptr,
size_t *  n 
)

JSON-RPCレスポンスの書き込みを完了します。

引数
[out]ptrバイト列が格納されるポインタ
[out]nデータのバイト数が書き込まれるポインタ
戻り値
0成功しました。
EINVALptr またはnNULLの場合
ERANGEレスポンスの個数がBeginWriteRequest()で指定した数と一致しない場合
ENOMEMメモリの確保に失敗した場合
説明
成功すると、ptrn バイトのデータが設定されます。 このデータをクライアントに送信することでサーバー側の処理が終わります。
nn::nlib::msgpack::jsonrpc::JsonRpcResponseWriter::WriteResponse ( JsonRpcResponse result)

JSON-RPCのレスポンスを書き込みます。

引数
[in]resultJsonRpcResponseへのポインタ
戻り値
0成功しました。
EINVALresultNULLの場合
ERANGEリクエストの個数がBeginWriteRequest()で指定した数を超えた場合
ENOMEMメモリの確保に失敗した場合
その他JSON/msgpackの書き込みに失敗した際にエラーが発生した場合
説明
result が指すオブジェクトの内容は変更されることがあります。

このクラス詳解は次のファイルから抽出されました: