QGrpcChannelOptions Class
QGrpcChannelOptionsクラスは、gRPCチャネルを微調整するための様々なオプションを提供します。詳細...
ヘッダ | #include <QGrpcChannelOptions> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Grpc) target_link_libraries(mytarget PRIVATE Qt6::Grpc) |
以来: | Qt 6.6 |
QMLでは | GrpcChannelOptions |
パブリック関数
QGrpcChannelOptions() | |
QGrpcChannelOptions(const QGrpcChannelOptions &other) | |
QGrpcChannelOptions(QGrpcChannelOptions &&other) | |
~QGrpcChannelOptions() | |
(since 6.10) QGrpcChannelOptions & | addMetadata(QByteArrayView key, QByteArrayView value) |
std::optional<std::chrono::milliseconds> | deadlineTimeout() const |
(since 6.11) std::optional<bool> | filterServerMetadata() const |
(until 6.13) QHash<QByteArray, QByteArray> | metadata() && |
(until 6.13) const QHash<QByteArray, QByteArray> & | metadata() const & |
(since 6.10) QMultiHash<QByteArray, QByteArray> | metadata(QtGrpc::MultiValue_t) && |
(since 6.10) const QMultiHash<QByteArray, QByteArray> & | metadata(QtGrpc::MultiValue_t) const & |
(since 6.8) QGrpcSerializationFormat | serializationFormat() const |
QGrpcChannelOptions & | setDeadlineTimeout(std::chrono::milliseconds timeout) |
(since 6.11) QGrpcChannelOptions & | setFilterServerMetadata(bool value) |
(until 6.13) QGrpcChannelOptions & | setMetadata(QHash<QByteArray, QByteArray> &&metadata) |
(since 6.10) QGrpcChannelOptions & | setMetadata(QMultiHash<QByteArray, QByteArray> &&metadata) |
(until 6.13) QGrpcChannelOptions & | setMetadata(const QHash<QByteArray, QByteArray> &metadata) |
(since 6.10) QGrpcChannelOptions & | setMetadata(const QMultiHash<QByteArray, QByteArray> &metadata) |
(since 6.10) QGrpcChannelOptions & | setMetadata(std::initializer_list<std::pair<QByteArray, QByteArray>> list) |
(since 6.8) QGrpcChannelOptions & | setSerializationFormat(const QGrpcSerializationFormat &format) |
QGrpcChannelOptions & | setSslConfiguration(const QSslConfiguration &sslConfiguration) |
std::optional<QSslConfiguration> | sslConfiguration() const |
(since 6.8) void | swap(QGrpcChannelOptions &other) |
(since 6.8) QVariant | operator QVariant() const |
QGrpcChannelOptions & | operator=(QGrpcChannelOptions &&other) |
QGrpcChannelOptions & | operator=(const QGrpcChannelOptions &other) |
関連する非メンバー
(since 6.8) QDebug | operator<<(QDebug debug, const QGrpcChannelOptions &chOpts) |
詳細説明
QGrpcChannelOptionsは、チャンネルをカスタマイズすることができます。 gRPC™チャネルをカスタマイズできます。いくつかのオプションは、サービスとの通信に使用される、関連付けられたチャネル上で動作する全てのリモートプロシージャコール(RPC)に適用されます。
QGrpcCallOptions を使用して、特定の RPC のオプションをオーバーライドします。
QGrpcChannelOptionschannelOpts;// すべての RPC に共通のメタデータを適用channelOpts.setMetadata({"header" , "value1"},{"header" , "value2"},});const auto &md =channelOpts.metadata(QtGrpc::MultiValue);qDebug() << "Channel Metadata: " << md; // すべての RPC に 2 秒のデッドラインを適用channelOpts.setDeadlineTimeout(2s);qDebug() << "Channel timeout: " << channelOpts.deadlineTimeout(); // SSL/TLSコンフィギュレーションの構成channelOpts.setSslConfiguration(QSslConfiguration());
注意: これらのオプションの詳細を決定するのは、チャネルの実装次第です。
メンバ関数ドキュメント
[until 6.13]
QHash<QByteArray, QByteArray> QGrpcChannelOptions::metadata() &&
[noexcept, until 6.13]
const QHash<QByteArray, QByteArray> &QGrpcChannelOptions::metadata() const &
この関数はバージョン 6.13 で廃止予定です。
代わりにmetadata(QtGrpc::MultiValue) を使用してください。
メタデータを返します。このフィールドが設定されていない場合は、空のメタデータを返します。
注意: QGrpcHttp2Channel は、メタデータを HTTP/2 ヘッダーとして転送します。キーは大文字小文字を区別しない ASCII 文字列です。:
(擬似ヘッダー)、grpc-
、またはqtgrpc-
という内部接頭辞の使用は避けなければなりません。値はASCII 文字列またはバイナリデータです。詳しくはRFC 7540の8.1.2節を参照してください。
metadata(QtGrpc::MultiValue_t) およびsetMetadata()も参照してください 。
[until 6.13]
QGrpcChannelOptions &QGrpcChannelOptions::setMetadata(QHash<QByteArray, QByteArray> &&metadata)
[until 6.13]
QGrpcChannelOptions &QGrpcChannelOptions::setMetadata(const QHash<QByteArray, QByteArray> &metadata)
この関数はバージョン6.13で非推奨となる予定です。
代わりにQMultiHash オーバーロードを使用してください。
metadata を設定し、更新されたオブジェクトへの参照を返します。
注意: QGrpcHttp2Channel はメタデータを HTTP/2 ヘッダーとして転送します。キーは大文字小文字を区別しない ASCII 文字列です。:
(擬似ヘッダー)、grpc-
、またはqtgrpc-
という内部接頭辞の使用は避けなければなりません。値はASCII 文字列またはバイナリデータです。詳細はRFC 7540のセクション8.1.2を参照のこと。
注意: このメタデータは、チャネルを通して行われるすべての RPC に含まれる。チャネルのメタデータは、RPCの開始時に呼び出し固有のメタデータとマージされる -QGrpcCallOptions::setMetadata(QMultiHash) を参照のこと。
metadata()も参照のこと 。
[since 6.10]
QMultiHash<QByteArray, QByteArray> QGrpcChannelOptions::metadata(QtGrpc::MultiValue_t) &&
[noexcept, since 6.10]
const QMultiHash<QByteArray, QByteArray> &QGrpcChannelOptions::metadata(QtGrpc::MultiValue_t) const &
メタデータを返す。このフィールドが設定されていない場合は、空のメタデータを返します。
注意: QGrpcHttp2Channel はメタデータを HTTP/2 ヘッダーとして転送します。キーは大文字小文字を区別しないASCII文字列です。:
(擬似ヘッダー)、grpc-
、またはqtgrpc-
という内部接頭辞の使用は避けなければなりません。値はASCII 文字列またはバイナリデータです。詳細はRFC 7540のセクション8.1.2を参照のこと。キーごとに複数の値がサポートされています。
const auto &md = opts.metadata(QtGrpc::MultiValue);
この関数は Qt 6.10 で導入されました。
setMetadataも参照してください 。
[since 6.10]
QGrpcChannelOptions &QGrpcChannelOptions::setMetadata(QMultiHash<QByteArray, QByteArray> &&metadata)
[since 6.10]
QGrpcChannelOptions &QGrpcChannelOptions::setMetadata(const QMultiHash<QByteArray, QByteArray> &metadata)
[since 6.10]
QGrpcChannelOptions &QGrpcChannelOptions::setMetadata(std::initializer_list<std::pair<QByteArray, QByteArray>> list)
metadata を設定し、更新されたオブジェクトへの参照を返す。
注: QGrpcHttp2Channel はメタデータを HTTP/2 ヘッダーとして転送します。キーは大文字小文字を区別しない ASCII 文字列です。:
(擬似ヘッダー)、grpc-
、またはqtgrpc-
という内部接頭辞の使用は避けなければなりません。値はASCII 文字列またはバイナリデータです。詳細はRFC 7540のセクション8.1.2を参照のこと。1つのキーにつき複数の値がサポートされている。
注意: このメタデータは、チャネルを介したすべてのRPCに含まれる。チャネルのメタデータは、RPCの開始時に呼び出し固有のメタデータとマージされます -QGrpcCallOptions::setMetadata(QMultiHash) を参照してください。
この関数は Qt 6.10 で導入されました。
metadata(QtGrpc::MultiValue_t)も参照してください 。
QGrpcChannelOptions::QGrpcChannelOptions()
Default-空の QGrpcChannelOptions を構築します。
QGrpcChannelOptions::QGrpcChannelOptions(const QGrpcChannelOptions &other)
other から QGrpcChannelOptions をコピー構築する。
[noexcept]
QGrpcChannelOptions::QGrpcChannelOptions(QGrpcChannelOptions &&other)
Move はother から新しい QGrpcChannelOptions を構築する。
注意: 移動元のオブジェクトother は、破壊と新しい値の割り当てだけが有効な、部分的に形成された状態に置かれる。
[noexcept]
QGrpcChannelOptions::~QGrpcChannelOptions()
QGrpcChannelOptions を破壊する。
[since 6.10]
QGrpcChannelOptions &QGrpcChannelOptions::addMetadata(QByteArrayView key, QByteArrayView value)
完全なペアがまだ含まれていなければ、metadata にkey とvalue を追加する。同じキーが異なる値で複数回現れることがある。
注意: QGrpcHttp2Channel はメタデータを HTTP/2 ヘッダーとして転送する。キーは大文字小文字を区別しないASCII文字列である。:
(擬似ヘッダ)、grpc-
、またはqtgrpc-
という内部接頭辞の使用は避けなければなりません。値はASCII 文字列またはバイナリデータです。詳細はRFC 7540のセクション8.1.2を参照のこと。
注意: このメタデータは、チャネルを通して行われるすべての RPC に含まれる。チャネルのメタデータは、RPCの開始時に呼び出し固有のメタデータとマージされます -QGrpcCallOptions::addMetadata() を参照してください。
この関数は Qt 6.10 で導入されました。
metadata() およびsetMetadata()も参照して ください。
[noexcept]
std::optional<std::chrono::milliseconds> QGrpcChannelOptions::deadlineTimeout() const
チャネルのデッドラインを計算するために使用されるタイムアウト時間を返します。
このフィールドが設定されていない場合は、空のstd::optional
を返します。
setDeadlineTimeout()も参照 。
[noexcept, since 6.11]
std::optional<bool> QGrpcChannelOptions::filterServerMetadata() const
プロトコル関連のサーバーメタデータを結果から除外する場合はtrue
を返す。サーバから受け取ったすべてのメタデータを含める場合はfalse
を返す。
このフィールドが設定されていない場合は、空のstd::optional
を返します。
この関数は Qt 6.11 で導入されました。
setFilterServerMetadata() およびQGrpcCallOptions::filterServerMetadata()も参照してください 。
[since 6.8]
QGrpcSerializationFormat QGrpcChannelOptions::serializationFormat() const
チャネルが使用するシリアライゼーション・フォーマットを返します。
このフィールドが未設定の場合、Default 構築されたシリアライズフォーマットを返します。
この関数は Qt 6.8 で導入されました。
setSerializationFormat()も参照してください 。
QGrpcChannelOptions &QGrpcChannelOptions::setDeadlineTimeout(std::chrono::milliseconds timeout)
timeout を設定し、更新されたオブジェクトへの参照を返す。
デッドラインは、クライアントがサーバーからの応答を待つことができる時間の制限を設定します。実際のデッドラインは、RPCの開始時刻にtimeout を加算して計算される。
デッドラインは、RPC の全ライフタイムに適用される。このライフタイ ムには、以前に開始された呼び出しに対する最終的なQGrpcStatus の受信も 含まれるため、(長寿命の) ストリームでは不要となる可能性がある。
注意: このフィールドの設定は、QGrpcCallOptions::setDeadlineTimeout() によってオーバーライドされるものを除き、チャネル上で動作するすべての RPC に適用される。
deadlineTimeout()も参照のこと 。
[since 6.11]
QGrpcChannelOptions &QGrpcChannelOptions::setFilterServerMetadata(bool value)
value がtrue
の場合、gRPCトランスポートで定義されたプロトコル関連のメタデータ(予約されたgrpc-
キーなど)は除外される。value がfalse
の場合、サーバから受信したすべてのメタデータが含まれる。
*/ voidQGrpcCommonOptions::setFilterServerMetadata(bool value) { m_filterServerMetadata = value; }.
qt_end_namespace
注意: このフィールドを設定すると、Qt 6.0でオーバーライドされたものを除き、チャネル上で動作するすべてのRPCに適用されます。QGrpcCallOptions::filterServerMetadata
この関数は Qt 6.11 で導入されました。
filterServerMetadata() およびQGrpcCallOptions::setFilterServerMetadata()も参照してください 。
[since 6.8]
QGrpcChannelOptions &QGrpcChannelOptions::setSerializationFormat(const QGrpcSerializationFormat &format)
チャネルのシリアライゼーションformat を設定し、更新されたオブジェクトへの参照を返します。
この関数は Qt 6.8 で導入されました。
serializationFormat()も参照してください 。
QGrpcChannelOptions &QGrpcChannelOptions::setSslConfiguration(const QSslConfiguration &sslConfiguration)
チャネルのsslConfiguration を設定し、更新されたオブジェクトへの参照を返します。
sslConfiguration()も参照してください 。
std::optional<QSslConfiguration> QGrpcChannelOptions::sslConfiguration() const
チャネルの SSL 設定を返します。
このフィールドが設定されていない場合は、空のstd::optional
を返します。
setSslConfiguration()も参照 。
[noexcept, since 6.8]
void QGrpcChannelOptions::swap(QGrpcChannelOptions &other)
other をこのオブジェクトと交換する。この操作は非常に高速で、失敗することはありません。
この関数は Qt 6.8 で導入されました。
[since 6.8]
QVariant QGrpcChannelOptions::operator QVariant() const
このオブジェクトから新しいQVariant を構築します。
この関数は Qt 6.8 で導入されました。
[noexcept]
QGrpcChannelOptions &QGrpcChannelOptions::operator=(QGrpcChannelOptions &&other)
Move-assignother をこのQGrpcChannelOptions に割り当て、更新されたオブジェクトへの参照を返す。
注: 移動元のオブジェクトother は、部分的に形成された状態に置かれる。この状態では、有効な操作は破壊と新しい値の割り当てのみである。
QGrpcChannelOptions &QGrpcChannelOptions::operator=(const QGrpcChannelOptions &other)
このQGrpcChannelOptions にother を割り当て、更新されたオブジェクトへの参照を返します。
関連する非会員
[since 6.8]
QDebug operator<<(QDebug debug, const QGrpcChannelOptions &chOpts)
chOpts を指定されたストリームdebug に書き込みます。
この関数は Qt 6.8 で導入されました。
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.