nl:: Weave:: Profiles:: BDX_Development:: BDXTransfer
#include <src/lib/profiles/bulk-data-transfer/Development/BDXTransferState.h>
تحتوي هذه البنية على أعضاء بيانات يمثلون عملية نقل BDX نشطة.
ملخّص
ويتم استخدام هذه الكائنات بواسطة BdxProtocol للحفاظ على حالة البروتوكول. وتتم إدارتها بواسطة BdxServer، الذي يعالج إنشاء عمليات نقل جديدة وإعدادها، بما في ذلك إدارة الاتصالات وExchangeContexts.
السمات العامة |
|
---|---|
mAmInitiator
|
bool
|
mAmSender
|
bool
|
mAppState
|
void *
|
mBlockCounter
|
uint32_t
رقم الحظر التالي الذي نتوقع أن يتم تلقّي BlockQuery أو سياسة حظر ACK عليه عند الإرسال (بعد بدء عملية النقل رسميًا).
|
mBytesSent
|
uint64_t
|
mExchangeContext
|
|
mFileDesignator
|
ملف/حظر أعضاء البيانات ذات الصلة بـ TODO: هل تريد إزالة هذا؟ أم يجب علينا فقط وضع عقد لما قد تبدو عليه هذه السلسلة وكيف سيتم استخدامها؟ على وجه التحديد، هل مدعوم بواسطة PacketBuffer؟ إذا كان الأمر كذلك، فربما لا ينبغي أن يستمر هذا المحتوى طوال الوقت لأن ذلك يستغرق وقتًا طويلاً
|
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
في حال ضبط معالِج حظر الوصول، يجب الاتصال به.
|
DispatchPutBlockHandler(uint64_t aLength, uint8_t *aDataBlock, bool aLastBlock)
|
void
في حال ضبط معالج حظر الوضع، اتصل به.
|
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
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mAmInitiator
mAmSender
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mAmSender
mAppState
void * nl::Weave::Profiles::BDX_Development::BDXTransfer::mAppState
mBlockCounter
uint32_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mBlockCounter
رقم الحظر التالي الذي نتوقع أن يتم تلقّي BlockQuery أو سياسة حظر ACK عليه عند الإرسال (بعد بدء عملية النقل رسميًا).
عند استلام الرسالة، تكون رسالة BlockSend التالية التي نتوقّع تلقّيها أو آخر رسالة BlockQuery التي أرسلناها (بعد بدء عملية النقل رسميًا وأول طلب بحث تم إرساله).
mBytesSent
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
ملف/حظر أعضاء البيانات ذات الصلة بـ TODO: هل تريد إزالة هذا؟ أم يجب علينا فقط وضع عقد لما قد تبدو عليه هذه السلسلة وكيف سيتم استخدامها؟ على وجه التحديد، هل مدعوم بواسطة PacketBuffer؟ إذا كان الأمر كذلك، فربما لا ينبغي أن يستمر هذا المحتوى طوال الوقت لأن ذلك يستغرق وقتًا طويلاً
mFirstQuery
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mFirstQuery
mHandlers
BDXHandlers nl::Weave::Profiles::BDX_Development::BDXTransfer::mHandlers
mIsAccepted
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsAccepted
mIsCompletedSuccessfully
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsCompletedSuccessfully
mIsInitiated
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsInitiated
mIsWideRange
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsWideRange
mLength
uint64_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mLength
mMaxBlockSize
uint16_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mMaxBlockSize
mNext
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 )
في حال ضبط معالج الأخطاء، اتصل به.
وإذا لم يتم ضبط السياسة، عليك أيضًا إيقاف عملية النقل كسلوك تلقائي.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
DispatchGetBlockHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchGetBlockHandler( uint64_t *aLength, uint8_t **aDataBlock, bool *aLastBlock )
في حال ضبط معالِج حظر الوصول، يجب الاتصال به.
التفاصيل | |||||||
---|---|---|---|---|---|---|---|
المَعلمات |
|
DispatchPutBlockHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchPutBlockHandler( uint64_t aLength, uint8_t *aDataBlock, bool aLastBlock )
في حال ضبط معالج حظر الوضع، اتصل به.
التفاصيل | |||||||
---|---|---|---|---|---|---|---|
المَعلمات |
|
DispatchReceiveAccept
WEAVE_ERROR nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchReceiveAccept( ReceiveAccept *aReceiveAcceptMsg )
يتحقق المرسلون ببساطة مما إذا كان قد تم تعيين المعالج أم لا، ثم يستدعونه في هذه الحالة.
إذا كان قد تم ضبط معالج قبول الاستلام، يمكنك الاتصال به.
ولذلك، يجب استخدام هذه الواجهة كواجهة عامة لاستدعاء عمليات رد الاتصال، والتي يجب ألا تتأثر التطبيقات الخارجية مباشرةً. من الممكن أن تستخدم نسخة مستقبلية لـ BDXTransfer كائنًا مفوضًا بدلاً من تخزين مؤشرات فردية لكل عملية استدعاء.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
قيمة خطأ
|
DispatchRejectHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchRejectHandler( StatusReport *aReport )
في حال ضبط معالج الرفض، يجب طلبه.
وإذا لم يتم ضبط السياسة، عليك أيضًا إيقاف عملية النقل كسلوك تلقائي.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
DispatchSendAccept
WEAVE_ERROR nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchSendAccept( SendAccept *aSendAcceptMsg )
في حال ضبط معالج قبول الإرسال، اتصل به.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
قيمة خطأ
|
DispatchXferDoneHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchXferDoneHandler( void )
في حال ضبط معالج تم النقل، اتصل به.
وإذا لم يتم ضبط السياسة، عليك أيضًا إيقاف عملية النقل كسلوك تلقائي.
DispatchXferErrorHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchXferErrorHandler( StatusReport *aXferError )
في حال ضبط معالج أخطاء النقل، اتصل به.
وإذا لم يتم ضبط السياسة، عليك أيضًا إيقاف عملية النقل كسلوك تلقائي.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
GetDefaultFlags
uint16_t nl::Weave::Profiles::BDX_Development::BDXTransfer::GetDefaultFlags( bool 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.
التفاصيل | |
---|---|
المرتجعات |
صحيح إذا كان هذا الكيان هو الدافع لعملية النقل هذه
|
إعادة الضبط
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.
يجب دائمًا استخدام هذه الطريقة بدلاً من محاولة إعدادها يدويًا لأن التنفيذ الأساسي لكيفية تخزين مؤشرات الدوالّ في المعالج ليس جزءًا من واجهة برمجة التطبيقات العامة.
.التفاصيل | |||
---|---|---|---|
المَعلمات |
|
إيقاف التشغيل
void nl::Weave::Profiles::BDX_Development::BDXTransfer::Shutdown( void )
Shuts down the current transfer, including closing any open ExchangeContext.
اغتنم هذه الفرصة لإخلاء أي موارد مرتبطة بعملية النقل هذه ومنطق طلب التقديم.