nl:: Weave:: DeviceLayer:: SoftwareUpdateManager
ملخّص
الاكتساب
الفئات الفرعية المعروفة المباشرة:nl::Weave::DeviceLayer::SoftwareUpdateManagerImpl
nl::Weave::DeviceLayer::SoftwareUpdateManagerImpl
nl::Weave::DeviceLayer::SoftwareUpdateManagerImpl
الأنواع العامة |
|
---|---|
ActionType{
|
تعداد عند توفُّر تحديث برنامج، يمكن للتطبيق اختيار أحد الإجراءات التالية كجزء من استدعاء حدث واجهة برمجة التطبيقات SoftwareUpdateAvailable API. |
EventCallback)(void *apAppState, EventType aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)
|
تعريف الكتابةvoid(*
|
EventType{
|
تعداد أحداث واجهة برمجة التطبيقات التي أنشأها عنصر SoftwareUpdateManager |
RetryPolicyCallback)(void *aAppState, RetryParam &aRetryParam, uint32_t &aOutIntervalMsec)
|
تعريف الكتابةvoid(*
|
State
|
تعداد |
صفوف الأصدقاء |
|
---|---|
Internal::GenericPlatformManagerImpl
|
friend class
|
وظائف عامة |
|
---|---|
Abort(void)
|
|
CheckNow(void)
|
|
GetState(void)
|
State
|
ImageInstallComplete(WEAVE_ERROR aError)
|
|
IsInProgress(void)
|
bool
|
PrepareImageStorageComplete(WEAVE_ERROR aError)
|
|
SetEventCallback(void *const aAppState, const EventCallback aEventCallback)
|
|
SetQueryIntervalWindow(uint32_t aMinWaitTimeMs, uint32_t aMaxWaitTimeMs)
|
|
SetRetryPolicyCallback(const RetryPolicyCallback aRetryPolicyCallback)
|
void
|
الدوال الثابتة العامة |
|
---|---|
DefaultEventHandler(void *apAppState, EventType aEvent, const InEventParam & aInParam, OutEventParam & aOutParam)
|
void
|
الدوال المحمية |
|
---|---|
SoftwareUpdateManager()=default
|
|
SoftwareUpdateManager(const SoftwareUpdateManager &)=delete
|
|
SoftwareUpdateManager(const SoftwareUpdateManager &&)=delete
|
|
operator=(const SoftwareUpdateManager &)=delete
|
|
~SoftwareUpdateManager()=default
|
|
بُنى |
|
---|---|
nl:: |
الاتحادات |
|
---|---|
nl:: |
|
nl:: |
الأنواع العامة
ActionType
ActionType
عند توفر تحديث للبرنامج، يمكن للتطبيق اختيار أحد الإجراءات التالية كجزء من استدعاء حدث واجهة برمجة التطبيقات SoftwareUpdateavailable.
سيتمّ ضبط الإجراء التلقائي على kAction_Now.
أماكن إقامة | |
---|---|
kAction_ApplicationManaged
|
للسماح للتطبيق بإدارة بقية مراحل تحديث البرنامج مثل التنزيل والتحقق من سلامة الصورة والتثبيت. سيتم نقل الجهاز الخاص بإدارة تحديثات البرامج إلى الحالة "ApplicationManaged". سيتم تعليق عمليات التحقّق المجدولة لتحديث البرامج (في حال تفعيلها) إلى أن يتم تنفيذ عمليات استدعاء التطبيق للإلغاء أو واجهة برمجة التطبيقات ImageInstallComplete. |
kAction_DownloadLater
|
إيقاف التنزيل مؤقتًا عند البدء سيتم تعليق عمليات التحقق من تحديثات البرامج المجدولة (في حال تفعيلها). سيظل جهاز الحالة في حالة التنزيل. عندما يكون التطبيق جاهزًا، يمكنه استدعاء واجهة برمجة تطبيقات تنزيل السيرة الذاتية لمتابعة التنزيل أو طلب الإلغاء للإلغاء. |
kAction_DownloadNow
|
ابدأ التنزيل على الفور. وسيتم إنشاء استدعاء حدث واجهة برمجة التطبيقات kEvent_FetchPartialImageInfo API بعد ذلك مباشرةً. |
kAction_Ignore
|
تجاهُل عملية التنزيل تمامًا. سيتم إنشاء استدعاء حدث واجهة برمجة التطبيقات kEvent_Finished مع ظهور الخطأ WEAVE_DEVICE_ERROR_Software_UPDATE_CANCELLED في حال تحديد هذا الخيار ولم يتم استدعاء منطق إعادة المحاولة. |
EventCallback
void(* EventCallback)(void *apAppState, EventType aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)
EventType
EventType
أحداث واجهة برمجة التطبيقات التي أنشأها عنصر SoftwareUpdateManager
أماكن إقامة | |
---|---|
kEvent_ComputeImageIntegrity
|
احتساب قيمة التحقّق من سلامة الصورة يطلب هذا الإذن من التطبيق احتساب قيمة التحقّق من السلامة على الصورة التي تم تنزيلها. يتم إنشاؤه بعد اكتمال التنزيل. |
kEvent_DefaultCheck
|
التحقّق من سلوك التعامل التلقائي مع الأحداث يتم استخدامه للتأكّد من صحة المعالجة التلقائية للأحداث في التطبيق. يجب ألا تعالج التطبيقات هذا الحدث. |
kEvent_FetchPartialImageInfo
|
استرجع معلومات الحالة الثابتة لصورة تم تنزيلها جزئيًا. يتيح هذا الإذن للتطبيق الإفصاح عن معلومات حول صورة جزئية تم تنزيلها سابقًا كي تتم مواصلة التنزيل من آخر نقطة توقف فيها. يتم توفير معرف موارد منتظم (URI) لتحديث البرنامج المتوفر كمعلمة إدخال يمكن للتطبيق استخدامها للمقارنة إذا كانت الصورة التي يتم تنزيلها مطابقة للصورة الجزئية. من المتوقع أن يعرض التطبيق طول الصورة الجزئية في معلمة الإخراج PartialImageLenInBytes. يمكن للتطبيق ضبط قيمة PartialImageLenInBytes على 0 للإشارة إلى عدم وجود صورة جزئية أو عدم تطابق معرّف الموارد المنتظم (URI) للصورة الجزئية. قد يختار التطبيق تجاهل هذا الحدث من خلال تمريره إلى معالج الأحداث التلقائي. في حالة حدوث ذلك، سيقوم النظام دائمًا بتنزيل نسخة البرامج الثابتة المتوفرة بالكامل. |
kEvent_Finished
|
انتهت عملية تحديث البرنامج. يتم إنشاؤه عند انتهاء البحث عن تحديث البرامج مع حدوث أخطاء أو بدونها. توفِّر المَعلمات المضمّنة في هذا الحدث سبب التعذُّر إذا انتهت المحاولة بسبب تعذُّر إتمامها. |
kEvent_PrepareImageStorage
|
الاستعداد لتخزين صورة جديدة يطلب من التطبيق تنفيذ أي خطوات ضرورية لإعداد مساحة التخزين المحلية لتنزيل نسخة جديدة من البرامج الثابتة. يمكن للتطبيق استخدام هذه الطريقة، على سبيل المثال، لمحو صفحات الفلاش. ولا يتم إنشاء حدث PrepareImageStorage إلّا في حال تنزيل صورة جديدة للبرامج الثابتة. عند استئناف عملية تنزيل تمت مقاطعتها سابقًا، لا يتم إنشاء PrepareImageStorage. يجب أن يشير التطبيق إلى اكتمال عملية التجهيز من خلال استدعاء طريقة يمكن للتطبيق اختيار تجاهل حدث PrepareImageStorage من خلال تمريره إلى معالج الأحداث التلقائي. إذا تم ذلك، يتابع النظام تلقائيًا إلى حالة تنزيل الصورة. ولإتاحة استئناف عملية تنزيل تمت مقاطعتها، يجب أن يحتفظ التطبيق بمعرّف الموارد المنتظم (URI) للصورة (الذي يتم توفيره كمعلمة حدث)، ويستخدمه عند التعامل مع أحداث FetchPartialImageInfo اللاحقة. |
kEvent_PrepareQuery
|
إعداد رسالة ImageQuery. يتم إنشاؤه عند بدء عملية التحقق من تحديث البرنامج. يتيح هذا الإعداد للتطبيق فرصة لتقديم معلومات ذات صلة بالمنتج إلى رسالة SofwareUpdate:ImageQuery. |
kEvent_PrepareQuery_Metadata
|
إعداد البيانات الوصفية لطلب ImageQuery. لتوفير فرصة للتطبيق لإلحاق بيانات وصفية إضافية برسالة SofwareUpdate:ImageQuery إذا لزم الأمر. يتم إنشاؤه عندما يكون التنفيذ جاهزًا للحصول على البيانات الوصفية من التطبيق. |
kEvent_QueryPrepareFailed
|
حدث خطأ أثناء إعداد طلب ImageQuery. يتم إنشاؤه عندما تواجه عملية التنفيذ خطأً أثناء الاستعداد لإرسال طلب بشأن تحديث البرنامج. |
kEvent_QuerySent
|
تم إرسال طلب ImageQuery. حدث إعلامي للإشارة إلى أنّه تم إرسال رسالة SofwareUpdate:ImageQuery. |
kEvent_ReadyToInstall
|
الصورة جاهزة للتثبيت. حدث إعلامي للإشارة إلى أنّ الصورة جاهزة للتثبيت يتم إنشاؤه بعد اجتياز الصورة عملية التحقّق من السلامة. |
kEvent_ResetPartialImageInfo
|
إعادة ضبط حالة الصورة التي تم تنزيلها جزئيًا. يطلب من التطبيق نسيان الحالة المستمرة المرتبطة بصورة تم تنزيلها. يتم إنشاء حدث renameImageInfo عند تعذُّر عملية التحقّق من سلامة الصورة التي تم تنزيلها. بعد معالجة حدث renamePartialImageInfo، من المفترض أن تشير أحداث FetchPartialImageInfo إلى عدم توفّر صورة جزئية. تجدر الإشارة إلى أنّه عند التعامل مع حدث renameImageInfo، لا يُطلب من التطبيق محو بيانات الصورة نفسها، بل فقط معلومات الحالة المرتبطة بالصورة (أي معرّف الموارد المنتظم (URI) وطول الصورة الجزئي). إذا كان التطبيق لا يتيح استئناف تنزيل الصور، قد يتجاهل هذا الحدث من خلال تمريره إلى معالِج الحدث التلقائي. |
kEvent_SoftwareUpdateAvailable
|
يتوفر تحديث للبرنامج. يتم إنشاؤه عند تلقي SofwareUpdate:ImageQueryResponse استجابةً لطلب بحث يحتوي على معلومات عن التحديث المتاح. |
kEvent_StartImageDownload
|
تم بدء تنزيل الصورة. حدث معلوماتي للإشارة إلى بدء معاملة تنزيل صورة |
kEvent_StartInstallImage
|
ابدأ تثبيت الصورة. يشير إلى أنّ التطبيق يجري عملية تثبيت نسخة البرامج الثابتة التي تم تنزيلها. |
kEvent_StoreImageBlock
|
تخزين جزء من بيانات الصورة يتم إنشاؤه عند تلقّي كتلة بيانات من خادم تنزيل الملفات. توفِّر المَعلمات المضمّنة في هذا الحدث البيانات وطولها. لإتاحة استئناف عملية تنزيل تمت مقاطعتها، يجب أن يحتفظ التطبيق بعدد مستمر من إجمالي عدد وحدات بايت الصورة المخزنة، وأن يستخدم هذه القيمة عند التعامل مع أحداث FetchPartialImageInfo اللاحقة. |
RetryPolicyCallback
void(* RetryPolicyCallback)(void *aAppState, RetryParam &aRetryParam, uint32_t &aOutIntervalMsec)
الحالة
State
صفوف الأصدقاء
داخلي::GeneralPlatformManagerImpl
friend class Internal::GenericPlatformManagerImpl
وظائف عامة
إلغاء
WEAVE_ERROR Abort( void )
CheckNow
WEAVE_ERROR CheckNow( void )
GetState
State GetState( void )
ImageInstallComplete
WEAVE_ERROR ImageInstallComplete( WEAVE_ERROR aError )
IsInProgress
bool IsInProgress( void )
PrepareImageStorageComplete
WEAVE_ERROR PrepareImageStorageComplete( WEAVE_ERROR aError )
SetEventCallback
WEAVE_ERROR SetEventCallback( void *const aAppState, const EventCallback aEventCallback )
SetQueryIntervalWindow
WEAVE_ERROR SetQueryIntervalWindow( uint32_t aMinWaitTimeMs, uint32_t aMaxWaitTimeMs )
SetRetryPolicyCallback
void SetRetryPolicyCallback( const RetryPolicyCallback aRetryPolicyCallback )
الدوال الثابتة العامة
DefaultEventHandler
void DefaultEventHandler( void *apAppState, EventType aEvent, const InEventParam & aInParam, OutEventParam & aOutParam )
الدوال المحمية
SoftwareUpdateManager
SoftwareUpdateManager()=default
SoftwareUpdateManager
SoftwareUpdateManager( const SoftwareUpdateManager & )=delete
SoftwareUpdateManager
SoftwareUpdateManager( const SoftwareUpdateManager && )=delete
operator=
SoftwareUpdateManager & operator=( const SoftwareUpdateManager & )=delete
~SoftwareUpdateManager
~SoftwareUpdateManager()=default