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

nl::Weave::Profiles::BDX_Development

この名前空間には、開発中に使用され、本番環境での使用に適さない Bulk Data Transfer(BDX)プロファイル用の Weave 内のすべてのインターフェースが含まれます。

まとめ

列挙型

@80 列挙型
@81 列挙型
@82 列挙型
@83 列挙型

Typedef

BdxClient typedef
BdxServer typedef
ErrorHandler)(BDXTransfer *aXfer, WEAVE_ERROR anErrorCode) typedef
void(*
このハンドラは、エラーコードを使用してユーザー アプリケーション定義のコントロール フローに直接返すことができない Weave エラーが発生した場合に呼び出されます。
GetBlockHandler)(BDXTransfer *aXfer, uint64_t *aLength, uint8_t **aDataBlock, bool *aLastBlock) typedef
void(*
Get a block of data to be transmitted.
PutBlockHandler)(BDXTransfer *aXfer, uint64_t aLength, uint8_t *aDataBlock, bool aLastBlock) typedef
void(*
長さ aLength の aDataBlock が指すデータブロックを処理します。
ReceiveAcceptHandler)(BDXTransfer *aXfer, ReceiveAccept *aReceiveAcceptMsg) typedef
以前に送信された ReceiveInit が宛先で受け入れられたときに呼び出されるコールバック。
ReceiveInitHandler)(BDXTransfer *aXfer, ReceiveInit *aReceiveInitMsg) typedef
uint16_t(*
ReceiveInit メッセージを受信したときにコールバックします。
RejectHandler)(BDXTransfer *aXfer, StatusReport *aReport) typedef
void(*
以前の init メッセージの 1 つが宛先によって拒否された場合に呼び出されます。
SendAcceptHandler)(BDXTransfer *aXfer, SendAccept *aSendAcceptMsg) typedef
以前に送信された SendInit が宛先によって受け入れられたときに呼び出されるコールバック。
SendInitHandler)(BDXTransfer *aXfer, SendInit *aSendInitMsg) typedef
uint16_t(*
SendInit メッセージを受信したときにコールバックが呼び出されました。
XferDoneHandler)(BDXTransfer *aXfer) typedef
void(*
転送が完了したケースを処理する。
XferErrorHandler)(BDXTransfer *aXfer, StatusReport *aXferError) typedef
void(*
BDX によって送受信された TransferError メッセージを処理します。

Functions

GetBDXAckFlag(ExchangeContext *anEc)
uint16_t
GetBDXAckFlag は、エクスチェンジのコンテキストに応じて(TCP のリクエスト確認なし)、WRMP のコンパイル時サポートに応じて、RequestAck フィールドに適したフラグを返します。

クラス

nl::Weave::Profiles::BDX_Development::BdxNode
nl::Weave::Profiles::BDX_Development::BlockAck

BlockAck メッセージは、データブロックの確認に使用されます。

nl::Weave::Profiles::BDX_Development::BlockAckV1

BlockAckV1 メッセージは、データブロックの確認に使用されます。

nl::Weave::Profiles::BDX_Development::BlockEOF

BlockEOF メッセージは、最後のデータブロックを送信者から受信者に転送するために使用されます。

nl::Weave::Profiles::BDX_Development::BlockEOFAck

BlockEOFAck メッセージは、データの最後のブロックを確認するために使用されます。

nl::Weave::Profiles::BDX_Development::BlockEOFAckV1

BlockEOFAckV1 メッセージは、データの最後のブロックを確認するために使用されます。

nl::Weave::Profiles::BDX_Development::BlockEOFV1

BlockEOFV1 メッセージは、最後のデータブロックを送信者から受信者に転送するために使用されます。

nl::Weave::Profiles::BDX_Development::BlockQuery

BlockQuery メッセージは、データのブロックを送信者から受信者に転送するようリクエストするために使用されます。

nl::Weave::Profiles::BDX_Development::BlockQueryV1

BlockQueryV1 メッセージは、データのブロックを送信者から受信者に転送するようリクエストするために使用されます。

nl::Weave::Profiles::BDX_Development::BlockSend

BlockSend メッセージは、データのブロックを送信者から受信者に転送するために使用されます。

nl::Weave::Profiles::BDX_Development::BlockSendV1

BlockSendV1 メッセージは、データのブロックを送信者から受信者に転送するために使用されます。

nl::Weave::Profiles::BDX_Development::ReceiveAccept

ReceiveAccept メッセージは、受信者がイニシエータである場合に、提案された交換を受け入れるために使用します。

nl::Weave::Profiles::BDX_Development::ReceiveInit

ReceiveInit メッセージは、レシーバーがイニシエータである場合に交換を開始するために使用されます。

nl::Weave::Profiles::BDX_Development::ReceiveReject

ReceiveReject メッセージは、送信者がイニシエーターである場合、提案された交換を拒否するために使用されます。

nl::Weave::Profiles::BDX_Development::SendAccept

SendAccept メッセージは、送信者がイニシエータである場合に、提案された交換を受け入れるために使用されます。

nl::Weave::Profiles::BDX_Development::SendInit

SendInit メッセージは、送信者がイニシエーターの場合に交換を開始するために使用されます。

nl::Weave::Profiles::BDX_Development::SendReject

SendReject メッセージは、送信者がイニシエーターである場合、提案された交換を拒否するために使用されます。

nl::Weave::Profiles::BDX_Development::TransferError

エラー メッセージは、エラーの報告とエクスチェンジの中止に使用されます。

構造体

nl::Weave::Profiles::BDX_Development::BDXHandlers
nl::Weave::Profiles::BDX_Development::BDXTransfer

この構造には、アクティブな BDX 転送を表すデータメンバーが含まれます。

Namespace

nl::Weave::Profiles::BDX_Development::BdxProtocol

列挙型

80

 @80

81

 @81

82

 @82

83

 @83

Typedef

BDX クライアント

BdxNode BdxClient

DBX サーバー

BdxNode BdxServer

ErrorHandler

void(* ErrorHandler)(BDXTransfer *aXfer, WEAVE_ERROR anErrorCode)

このハンドラは、エラーコードを使用してユーザー アプリケーション定義のコントロール フローに直接返すことができない Weave エラーが発生した場合に呼び出されます。

つまり、署名が戻り値の型が void である別のハンドラ内で発生した場合(受信 Weave メッセージへの応答、プロトコルによってディスパッチされた場合など)、このハンドラは、転送の復元と続行の可否や Shutdown() の呼び出しが必要かどうかを判断するために呼び出されます。BDXTransfer の初期化前にエラーが発生する(エラーなど)可能性があります。この場合、そのエラーは Weave によって記録され、プロトコルによって割り当てられた必要な状態のクリーンアップがすべて処理されます。

詳細
パラメータ
[in] aXfer
この転送に関連付けられた BDXTransfer へのポインタ。
[in] anErrorCode
処理する必要があるエラーコード

GetBlockHandler

void(* GetBlockHandler)(BDXTransfer *aXfer, uint64_t *aLength, uint8_t **aDataBlock, bool *aLastBlock)

Get a block of data to be transmitted.

呼び出し元はバッファリング領域(バッファとバッファの長さ、参照で渡される時間)を提供します。呼び出し先(ユーザー アプリ)は提供されたバッファを使用すべきですが、下位互換性の理由から、独自のバッファを返す必要があります。呼び出し先では、バイトの aLength 以下にする必要があります。返された aLength には、バッファに読み込まれた実際のバイト数が含まれます。

詳細
パラメータ
[in] aXfer
この継続的な転送に関連付けられている BDXTransfer
[in,out] aLength
このブロックに読み取られて保存されたデータの長さ。関数の呼び出し時には、aDataBlock で渡されたバッファの長さが含まれます。戻り値には、実際に読み取られたデータの長さが含まれます。
[in,out] aDataBlock
データブロックへのポインタ。入力時に、フレームワークが提供するバッファが含まれます。呼び出し先は、そのスペースを使用してバッファを埋めるか、独自のバッファリング スペースを提供する(下位互換性のあるアプリケーションの場合)ことができます。提供されたバッファを使用するアプリは、アライメントを想定しないでください。
[out] aLastBlock
ブロックを BlockEOF として送信して転送が完了した場合は true、それ以外の場合は false。

PutBlockHandler

void(* PutBlockHandler)(BDXTransfer *aXfer, uint64_t aLength, uint8_t *aDataBlock, bool aLastBlock)

長さ aLength の aDataBlock が指すデータブロックを処理します。

ほとんどの場合、これにはファイルへの書き込みと、isLastBlock が true の場合に対象のファイルを閉じることが含まれます。

詳細
パラメータ
[in] aXfer
この継続的な転送に関連付けられている BDXTransfer
[in] aLength
指定したブロックに保存され、保存されるデータの長さ
[in] aDataBlock
データの実際のブロック
[in] aLastBlock
ブロックが BlockEOF として受信され、転送が完了した場合は true、それ以外の場合は false。true の場合、プログラマーはおそらくファイル ハンドルをファイナライズする必要があります。この後、XferDoneHandler が呼び出されることに留意してください。

ReceiveAcceptHandler

WEAVE_ERROR(* ReceiveAcceptHandler)(BDXTransfer *aXfer, ReceiveAccept *aReceiveAcceptMsg)

以前に送信された ReceiveInit が宛先で受け入れられたときに呼び出されるコールバック。

この機会に、ファイルを開いたり、転送を開始する際にリソースを割り当てたりする必要はありません。

詳細
パラメータ
[in] aXfer
この転送に関連付けられた BDXTransfer へのポインタ。
[in] aReceiveAcceptMsg
処理中の ReceiveAccept メッセージへのポインタ

ReceiveInitHandler

uint16_t(* ReceiveInitHandler)(BDXTransfer *aXfer, ReceiveInit *aReceiveInitMsg)

ReceiveInit メッセージを受信したときにコールバックします。

その役割は、受信を受け入れるかどうかを決定し、受け入れる場合は、aXfer->mIsAccepted=true を設定して、プロトコルがイニシエーターに送信できるようにすることです。BDXTransfer オブジェクトでデフォルトの設定が開始されます。ここには、アプリケーション固有の状態(開いているファイル ハンドルなど)を aXfer->mAppState に関連付けるのに適した場所があります。この時点で、ブロック処理などのハンドラも BDXTransfer オブジェクトにアタッチする必要があります。kStatus_Success 以外のエラーコードが返された場合、転送は拒否されたものとみなされ、プロトコルによって拒否コードの送信がコードとともに処理されます。

詳細
パラメータ
[in] aXfer
この転送に関連付けられた BDXTransfer へのポインタ。
[in] aReceiveInitMsg
処理中の ReceiveInit メッセージへのポインタ

RejectHandler

void(* RejectHandler)(BDXTransfer *aXfer, StatusReport *aReport)

以前の init メッセージの 1 つが宛先によって拒否された場合に呼び出されます。

詳細
パラメータ
[in] aXfer
この転送に関連付けられた BDXTransfer へのポインタ。
[in] aReport
処理中の StatusReport メッセージの不承認を示すポインタ

SendAcceptHandler

WEAVE_ERROR(* SendAcceptHandler)(BDXTransfer *aXfer, SendAccept *aSendAcceptMsg)

以前に送信された SendInit が宛先によって受け入れられたときに呼び出されるコールバック。

この機会に、ファイルを開いたり、転送を開始する際にリソースを割り当てたりする必要はありません。

詳細
パラメータ
[in] aXfer
この転送に関連付けられた BDXTransfer へのポインタ。
[in] aSendAcceptMsg
処理中の SendAccept メッセージへのポインタ

SendInitHandler

uint16_t(* SendInitHandler)(BDXTransfer *aXfer, SendInit *aSendInitMsg)

SendInit メッセージを受信したときにコールバックが呼び出されました。

その役割は、SendInit を受け入れるかどうかを決定し、同意する場合は、aXfer->mIsAccepted=true を設定して、プロトコルによってイニシエーターに送信されるようにします。BDXTransfer オブジェクトでデフォルトの設定が開始されます。ここには、アプリケーション固有の状態(開いているファイル ハンドルなど)を aXfer->mAppState に関連付けるのに適した場所があります。この時点で、ブロック処理などのハンドラも BDXTransfer オブジェクトにアタッチする必要があります。WEAVE_NO_ERROR 以外のエラーコードが返された場合、転送は拒否されたものと見なされ、プロトコルによって拒否メッセージの送信がコードと一緒に処理されます。

詳細
パラメータ
[in] aXfer
この転送に関連付けられた BDXTransfer へのポインタ。
[in] aSendInitMsg
処理中の SendInit メッセージへのポインタ

XferDoneHandler

void(* XferDoneHandler)(BDXTransfer *aXfer)

転送が完了したケースを処理する。

詳細
パラメータ
[in] aXfer
この転送に関連付けられた BDXTransfer へのポインタ。

XferErrorHandler

void(* XferErrorHandler)(BDXTransfer *aXfer, StatusReport *aXferError)

BDX によって送受信された TransferError メッセージを処理します。

注: BDX 転送は復元可能であると考えられるため(その時点で一時的に PacketBuffer から外れるなど)、アプリケーション プログラマーと定義するコールバックに Shutdown() を呼び出すオプションが用意されています。TODO: BDX ドキュメントの言語に間違いがないことを確認し、次のよう調整してください。&があります

詳細
パラメータ
[in] aXfer
この転送に関連付けられた BDXTransfer へのポインタ。
[in] aXferError
処理中の StatusReport メッセージ エラーを指すポインタ

Functions

GetBDXAckFlag

uint16_t GetBDXAckFlag(
  ExchangeContext *anEc
)

GetBDXAckFlag は、エクスチェンジのコンテキストに応じて(TCP のリクエスト確認なし)、WRMP のコンパイル時サポートに応じて、RequestAck フィールドに適したフラグを返します。

詳細
パラメータ
[in] anEc
次に基づくフラグを取得するエクスチェンジのコンテキスト
戻り値
0 または kSendFlag_RequestAck