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

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

#include <src/lib/profiles/bulk-data-transfer/Development/BDXTransferState.h>

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

まとめ

これらのオブジェクトは、プロトコルの状態を維持するために BdxProtocol で使用されます。管理対象は BdxServer によって管理されます。BdxServer は、Connections と ExchangeContexts の管理を含む、新しい転送の作成と初期化を処理します。

パブリック属性

mAmInitiator
bool
mAmSender
bool
mAppState
void *
mBlockCounter
uint32_t
(転送が正式に開始された後)送信時に BlockQuery または BlockACK を受信することが期待される次のブロック番号。
mBytesSent
uint64_t
mExchangeContext
mFileDesignator
file/block related data members TODO: これを削除するか、この文字列の外観と使用方法に関する契約を結ぶ必要があるか?具体的には、PacketBuffer を基盤としていますか?もしそうであれば、pbuf を占有しているので、おそらく xfer の最後まで立ち止まってはいけません。
mFirstQuery
bool
mHandlers
mIsAccepted
bool
mIsCompletedSuccessfully
bool
mIsInitiated
bool
mIsWideRange
bool
mLength
uint64_t
mMaxBlockSize
uint16_t
mNext)(BDXTransfer &)
mStartOffset
uint64_t
mTransferMode
uint8_t
mVersion
uint8_t

パブリック関数

DispatchErrorHandler(WEAVE_ERROR anErrorCode)
void
エラーハンドラが設定されている場合は、呼び出します。
DispatchGetBlockHandler(uint64_t *aLength, uint8_t **aDataBlock, bool *aLastBlock)
void
get ブロック ハンドラが設定されている場合は、このメソッドを呼び出します。
DispatchPutBlockHandler(uint64_t aLength, uint8_t *aDataBlock, bool aLastBlock)
void
put ブロック ハンドラが設定されている場合は、このメソッドを呼び出します。
DispatchReceiveAccept(ReceiveAccept *aReceiveAcceptMsg)
ディスパッチャは、ハンドラが設定されているかどうかを確認し、設定されている場合は呼び出します。
DispatchRejectHandler(StatusReport *aReport)
void
拒否ハンドラが設定されている場合は、呼び出します。
DispatchSendAccept(SendAccept *aSendAcceptMsg)
送信承認ハンドラが設定されている場合は、呼び出します。
DispatchXferDoneHandler(void)
void
転送完了ハンドラが設定されている場合は、呼び出します。
DispatchXferErrorHandler(StatusReport *aXferError)
void
転送エラーハンドラが設定されている場合は、呼び出します。
GetDefaultFlags(bool aExpectResponse)
uint16_t
この関数は、メッセージとともに送信されるデフォルトのフラグを返します。
IsAsync(void)
bool
 Returns true if this transfer is asynchronous, false otherwise.
IsDriver(void)
bool
 Returns true if this entity (node) is the driver for this transfer, false otherwise.
Reset(void)
void
 Sets all pointers to NULL, resets counters, etc.
SetHandlers(BDXHandlers aHandlers)
void
この関数は、この BDXTransfer オブジェクトのハンドラを設定します。
Shutdown(void)
void
 Shuts down the current transfer, including closing any open ExchangeContext.

パブリック属性

mAmInitiator(mAmInitiator)

bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mAmInitiator

送信者

bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mAmSender

モバイルアプリ

void * nl::Weave::Profiles::BDX_Development::BDXTransfer::mAppState

mBlockCounter

uint32_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mBlockCounter

(転送が正式に開始された後)送信時に BlockQuery または BlockACK を受信することが期待される次のブロック番号。

これは、受信すると想定される BlockSend または最後に送信された BlockQuery(転送が正式に開始され、最初のクエリが送信された後)です。

BytesSent

uint64_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mBytesSent

mExchangeContext

ExchangeContext * nl::Weave::Profiles::BDX_Development::BDXTransfer::mExchangeContext

mFileDesignator

ReferencedString nl::Weave::Profiles::BDX_Development::BDXTransfer::mFileDesignator

file/block related data members TODO: これを削除するか、この文字列の外観と使用方法に関する契約を結ぶ必要があるか?具体的には、PacketBuffer を基盤としていますか?もしそうであれば、pbuf を占有しているので、おそらく xfer の最後まで立ち止まってはいけません。

mFirstQuery

bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mFirstQuery

mHandlers

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

同意済み

bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsAccepted

mCompletedCompleted

bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsCompletedSuccessfully

misitiated

bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsInitiated

幅広い幅

bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsWideRange

長さ

uint64_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mLength

mMaxBlockSize

uint16_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mMaxBlockSize

WEAVE_ERROR(* nl::Weave::Profiles::BDX_Development::BDXTransfer::mNext)(BDXTransfer &)

mStartOffset

uint64_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mStartOffset

mTransferMode(移行モード)

uint8_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mTransferMode

mVersion

uint8_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mVersion

パブリック関数

DispatchErrorHandler

void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchErrorHandler(
  WEAVE_ERROR anErrorCode
)

エラーハンドラが設定されている場合は、呼び出します。

設定されていない場合、デフォルトの動作として転送をシャットダウンします。

詳細
パラメータ
[in] anErrorCode
処理されるエラーコード

DispatchGetBlockHandler

void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchGetBlockHandler(
  uint64_t *aLength,
  uint8_t **aDataBlock,
  bool *aLastBlock
)

get ブロック ハンドラが設定されている場合は、このメソッドを呼び出します。

詳細
パラメータ
[in] aLength
ブロックの長さ
[in] aDataBlock
データブロックへのポインタ
[in] aLastBlock
これが転送の最後のブロックの場合は true

DispatchPutBlockHandler

void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchPutBlockHandler(
  uint64_t aLength,
  uint8_t *aDataBlock,
  bool aLastBlock
)

put ブロック ハンドラが設定されている場合は、このメソッドを呼び出します。

詳細
パラメータ
[in] aLength
ブロックの長さ
[in] aDataBlock
データブロックへのポインタ
[in] aLastBlock
これが転送の最後のブロックの場合は true

DispatchReceiveAccept

WEAVE_ERROR nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchReceiveAccept(
  ReceiveAccept *aReceiveAcceptMsg
)

ディスパッチャは、ハンドラが設定されているかどうかを確認し、設定されている場合は呼び出します。

受信受け入れハンドラが設定されている場合は、呼び出します。

そのため、コールバックを呼び出すパブリック インターフェースとして使用する必要があります。外部アプリケーションによって直接アクセスされることはありません。BDXTransfer の今後のリビジョンでは、各コールバックに個別のポインタを保存するのではなく、デリゲート オブジェクトを使用する可能性があります。

詳細
パラメータ
[in] aReceiveAcceptMsg
処理される ReceiveAccept メッセージ
戻り値
エラー値

DispatchRejectHandler

void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchRejectHandler(
  StatusReport *aReport
)

拒否ハンドラが設定されている場合は、呼び出します。

設定されていない場合、デフォルトの動作として転送をシャットダウンします。

詳細
パラメータ
[in] aReport
処理される StatusReport メッセージ

DispatchSendAccept

WEAVE_ERROR nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchSendAccept(
  SendAccept *aSendAcceptMsg
)

送信承認ハンドラが設定されている場合は、呼び出します。

詳細
パラメータ
[in] aSendAcceptMsg
SendAccept メッセージを処理する
戻り値
エラー値

DispatchXferDoneHandler

void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchXferDoneHandler(
  void
)

転送完了ハンドラが設定されている場合は、呼び出します。

設定されていない場合、デフォルトの動作として転送をシャットダウンします。

DispatchXferErrorHandler

void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchXferErrorHandler(
  StatusReport *aXferError
)

転送エラーハンドラが設定されている場合は、呼び出します。

設定されていない場合、デフォルトの動作として転送をシャットダウンします。

詳細
パラメータ
[in] aXferError
処理されるエラーのステータス レポート

GetDefaultFlags

uint16_t nl::Weave::Profiles::BDX_Development::BDXTransfer::GetDefaultFlags(
  bool aExpectResponse
)

この関数は、メッセージとともに送信されるデフォルトのフラグを返します。

詳細
パラメータ
[in] aExpectResponse
このメッセージへの返信文が必要な場合
戻り値
送信されるフラグ

IsAsync

bool nl::Weave::Profiles::BDX_Development::BDXTransfer::IsAsync(
  void
)

 Returns true if this transfer is asynchronous, false otherwise.

詳細
戻り値
転送が非同期の場合は true。

IsDriver

bool nl::Weave::Profiles::BDX_Development::BDXTransfer::IsDriver(
  void
)

 Returns true if this entity (node) is the driver for this transfer, false otherwise.

詳細
戻り値
このエンティティがこの転送のドライバの場合は true

リセット

void nl::Weave::Profiles::BDX_Development::BDXTransfer::Reset(
  void
)

 Sets all pointers to NULL, resets counters, etc.

シャットダウン時に呼び出されます。

SetHandlers

void nl::Weave::Profiles::BDX_Development::BDXTransfer::SetHandlers(
  BDXHandlers aHandlers
)

この関数は、この BDXTransfer オブジェクトのハンドラを設定します。

ハンドラ関数のポインタが保存される基本的な実装は公開 API の一部ではないため、手動で設定しようとするのではなく、必ずこのメソッドを使用してください。

詳細
パラメータ
[in] aHandlers
呼び出されるコールバック ハンドラの構造

シャットダウン

void nl::Weave::Profiles::BDX_Development::BDXTransfer::Shutdown(
  void
)

 Shuts down the current transfer, including closing any open ExchangeContext.

この機会を利用して、この転送とアプリケーション ロジックに関連するリソースを解放します。

エラーが発生している