Google は、黒人コミュニティのための人種的公平の促進に取り組んでいます。詳細をご覧ください。

nl::Weave::Profiles::SoftwareUpdate::ImageQueryResponse

#include <src/lib/profiles/software-update/SoftwareUpdateProfile.h>

画像クエリ レスポンス メッセージの作成とデコードをサポートするクラス。

まとめ

画像クエリ レスポンス メッセージの形式は次のとおりです。

長さ 項目名
変数 URI
変数 バージョンの仕様
変数 整合性の仕様
1 バイト スキームの更新
1 バイト 更新オプション
(オプション)更新オプション フィールドの形式は次のとおりです。

ビット 説明
0 ~ 2 優先度の更新
3 ~ 4 条件の更新
5 レポートのステータス。設定すると、クライアントにはオプションの DownloadNotify メッセージと UpdateNotify メッセージの生成がリクエストされます。
5 ~ 7 予約済み
画像クエリ レスポンスは、画像クエリが正常に処理され、ダウンロードする画像が生成される場合にのみ送信されます。このメッセージは、クエリを送信したノードのダウンロード手順を表します。サーバーが画像クエリの処理に失敗した場合は、画像クエリ ステータスを生成するものとします。

コンストラクタとデストラクタ

ImageQueryResponse()
ImageQueryResponse のデフォルト コンストラクタ。

パブリック属性

integritySpec
ソフトウェア アップデート イメージの整合性情報(整合性タイプとハッシュ)を含むフィールド。
reportStatus
bool
オプションの DownloadNotify メッセージと UpdateNotify メッセージを使用して、ソフトウェアの更新の進行状況をサーバーに通知するようにします。
updateCondition
ソフトウェアの更新を進めるための条件について説明します。
updatePriority
ソフトウェア アップデートを実行するタイミングをデバイスに指示します。
updateScheme
uint8_t
ソフトウェア アップデート イメージのダウンロードに使用するアップデート スキーム。
uri
ソフトウェア画像の場所が含まれる可変長の UTF-8 文字列。
versionSpec
ベンダー固有のソフトウェア バージョン ID を含む可変長の UTF-8 文字列。

パブリック関数

init(ReferencedString &, ReferencedString &, IntegritySpec &, uint8_t, UpdatePriority, UpdateCondition, bool)
指定された値で ImageQueryResponse オブジェクトを明示的に初期化します。
operator==(const ImageQueryResponse &) const
bool
等価演算子。
pack(PacketBuffer *)
指定された PacketBuffer に ImageQueryResponse をシリアル化します。
print(void)
void

静的パブリック関数

parse(PacketBuffer *, ImageQueryResponse &)
PacketBuffer で提供される画像クエリのレスポンス メッセージを指定された ImageQueryResponse にシリアル化解除します。

パブリック属性

integritySpec

IntegritySpec integritySpec

ソフトウェア アップデート イメージの整合性情報(整合性タイプとハッシュ)を含むフィールド。

reportStatus(レポートのステータス)

bool reportStatus

オプションの DownloadNotify メッセージと UpdateNotify メッセージを使用して、ソフトウェアの更新の進行状況をサーバーに通知するようにします。

updateCondition

UpdateCondition updateCondition

ソフトウェアの更新を進めるための条件について説明します。

updatePriority

UpdatePriority updatePriority

ソフトウェア アップデートを実行するタイミングをデバイスに指示します。

updateScheme(更新スキーム)

uint8_t updateScheme

ソフトウェア アップデート イメージのダウンロードに使用するアップデート スキーム。

値は UpdateSchemes から取得されます。

uri

ReferencedString uri

ソフトウェア画像の場所が含まれる可変長の UTF-8 文字列。

この文字列の内容は、RFC 3986 の仕様に準拠している必要があります。明確に定義されたインターネット プロトコル(HTTP、HTTPS、SFTP)に対応する更新スキームの場合、URI のスキーム要素は、そのプロトコル スキームの正規 URL エンコードに従う必要があります。文字列の長さは 65, 565 以下でなければなりません。また、文字列は 1 つの Weave メッセージに収まる必要があり、MTU の制限を受ける可能性があります。

versionSpec

ReferencedString versionSpec

ベンダー固有のソフトウェア バージョン ID を含む可変長の UTF-8 文字列。

文字列の長さは 256 バイト以下にする必要があります。

パブリック関数

ImageQueryResponse

 ImageQueryResponse()

ImageQueryResponse のデフォルト コンストラクタ。

ImageQueryResponse を設定するには、init() メソッドを使用するか、オブジェクトをメッセージからシリアル化解除します。

init

WEAVE_ERROR init(
  ReferencedString &,
  ReferencedString &,
  IntegritySpec &,
  uint8_t,
  UpdatePriority,
  UpdateCondition,
  bool
)

指定された値で ImageQueryResponse オブジェクトを明示的に初期化します。

詳細
パラメータ
[in] aUri
新しいファームウェア イメージがある URI。
[in] aVersion
このイメージのバージョン文字列。
[in] aIntegrity
新しい画像に対応する完全性仕様。
[in] aScheme
ダウンロードに使用するアップデート スキーム。
[in] aPriority
この更新に関連付けられた更新の優先順位です。
[in] aCondition
更新する条件。
[in] aReportStatus
true を指定した場合、ダウンロードと更新の後で報告するようクライアントにリクエストします。それ以外の場合、クライアントは報告しません。
戻り値
WEAVE_NO_ERROR 無条件。

オペレーター==

bool operator==(
  const ImageQueryResponse &
) const 

等価演算子。

詳細
パラメータ
another
この ImageQueryResponse に対して確認する ImageQueryResponse
戻り値
両方のオブジェクトのすべてのフィールドが等しい場合は true、それ以外の場合は false

パック

WEAVE_ERROR pack(
  PacketBuffer *
)

指定された PacketBuffer に ImageQueryResponse をシリアル化します。

詳細
パラメータ
[in] aBuffer
クエリ レスポンスをパックするパケット バッファ
戻り値
WEAVE_NO_ERROR
成功
WEAVE_ERROR_BUFFER_TOO_SMALL
ImageQueryResponse が大きすぎて提供されたバッファに収まらない場合。

print

void print(
  void
)

静的パブリック関数

parse

WEAVE_ERROR parse(
  PacketBuffer *,
  ImageQueryResponse &
)

PacketBuffer で提供される画像クエリのレスポンス メッセージを指定された ImageQueryResponse にシリアル化解除します。

詳細
パラメータ
[in] aBuffer
画像クエリを解析したパケットへのポインタ
[in] aResponse
結果を挿入するオブジェクト
戻り値
WEAVE_NO_ERROR 成功
戻り値
WEAVE_ERROR_BUFFER_TOO_SMALL メッセージが小さすぎて ImageQuery のすべてのフィールドが含まれない場合
戻り値
WEAVE_ERROR_INVALID_INTEGRITY_TYPE 提供された完全性タイプが IntegrityTypes で指定された値のいずれでもない場合