nl:: Weave:: Profiles:: SoftwareUpdate:: ImageQuery
#include <src/lib/profiles/software-update/SoftwareUpdateProfile.h>
فئة لدعم إنشاء رسائل طلب البحث عن الصور وفك ترميزها.
ملخّص
يحتوي إطار طلب البحث بالصور على الشكل التالي فوق السلك.
الطول | اسم الحقل |
1 بايت | التحكّم في الإطار |
6 بايت | مواصفات المنتج |
متغير | مواصفات الإصدار |
2..4 بايت | قائمة أنواع السلامة |
2.5 بايت | تعديل قائمة المخططات |
متغير | مواصفات اللغة (اختياري) |
8 بايت | رقم تعريف العُقدة المستهدفة |
متغير | البيانات الخاصة بالمورّد (اختياري) |
ريشة | المعنى |
0 | 1 - البيانات الخاصة بالمورد موجودة، 0 - غير موجودة |
1 | 1 - مواصفات اللغة متوفرة، 0 - غير موجودة |
2 | 1 - رقم تعريف العقدة المستهدفة موجود، 0 - غير موجود |
3..7 | تم الحجز |
الدلالة والهياكل |
|
---|---|
ImageQuery()
الدالة الإنشائية التلقائية لـ ImageQuery.
|
السمات العامة |
|
---|---|
integrityTypes
|
أنواع التكامل المتوافقة مع الجهاز
|
localeSpec
|
سلسلة UTF-8 متغيرة الطول تحتوي على لغة POSIX السارية على الجهاز الذي يتم إجراء طلب البحث عن الصورة له.
|
packageSpec
|
سلسلة UTF-8 ذات طول متغير تحتوي على سلسلة لمواصفات الحزمة الخاصة بالمورّد.
|
productSpec
|
مواصفات المنتج التي تصف الجهاز الذي يجري طلب البحث عن الصورة.
|
targetNodeId
|
uint64_t
معرّف عقدة اختياري للجهاز الذي يُجري الاستعلام عليه.
|
theMetaData
|
يتغير حقل البيانات الخاصة بالمورّد ويشغل الجزء المتبقي من حمولة رسالة Weave خارج الحقول الموضحة أعلاه.
|
updateSchemes
|
حدِّث المخططات (بروتوكولات التنزيل) التي يدعمها الجهاز.
|
version
|
سلسلة UTF-8 متغيرة الطول تحتوي على إصدار البرنامج الذي حدّده المورّد للجهاز الذي يتم إجراء الطلب له.
|
الدوال العامة |
|
---|---|
init(ProductSpec & aProductSpec, ReferencedString & aVersion, IntegrityTypeList & aTypeList, UpdateSchemeList & aSchemeList, ReferencedString *aPackage, ReferencedString *aLocale, uint64_t aTargetNodeId, ReferencedTLVData *aMetaData)
|
عليك إعداد الكائن ImageQuery صراحةً باستخدام القيم المقدَّمة.
|
operator==(const ImageQuery &) const
|
bool
عامل مساواة.
|
pack(PacketBuffer *)
|
عليك إجراء تسلسل لـ ImageQuery الأساسي في PacketBuffer المتوفّر.
|
print(void)
|
void
|
الدوال الثابتة العامة |
|
---|---|
parse(PacketBuffer *, ImageQuery &)
|
عليك الاطّلاع على رسالة طلب البحث عن الصورة المقدَّمة في PacketBuffer باستخدام دالة ImageQuery المقدَّمة.
|
السمات العامة
localeSpec
ReferencedString localeSpec
سلسلة UTF-8 متغيرة الطول تحتوي على لغة POSIX السارية على الجهاز الذي يتم إجراء طلب البحث عن الصورة له.
ويجب أن يتوافق محتوى السلسلة مع تنسيق معرّف اللغة POSIX، كما هو محدّد في ISO/IEC 15897، مثل en_AU.UTF-8 للإنجليزية الأسترالية.
packageSpec
ReferencedString packageSpec
سلسلة UTF-8 ذات طول متغير تحتوي على سلسلة لمواصفات الحزمة الخاصة بالمورّد.
يصف محتوى الحقل نوع الحاوية المطلوب لصورة البرنامج، مثل "rpm" و"deb" و"tgz" و"elf" وما إلى ذلك (ملاحظة: هذا الحقل غير مستخدَم في تطبيقات Nest للبروتوكول)
targetNodeId
uint64_t targetNodeId
معرّف عقدة اختياري للجهاز الذي يُجري الاستعلام عليه.
حقل رقم تعريف العقدة الهدف اختياري. وفي حال عدم توفّرها، يكون رقم تعريف العُقدة الهدف لطلب البحث ضمنًا العُقدة التي كانت مصدر رسالة طلب البحث عن الصورة.
يُستخدم حقل معرّف العقدة الهدف عادةً في الحالات التي تعمل فيها العقدة مصدر رسالة IMAGE QUERY كخادم وكيل لتحديث البرامج لعقدة أخرى.
theMetaData
ReferencedTLVData theMetaData
يتغير حقل البيانات الخاصة بالمورّد ويشغل الجزء المتبقي من حمولة رسالة Weave خارج الحقول الموضحة أعلاه.
يشفّر هذا الحقل المعلومات الخاصة بالمورد حول الجهاز الذي يتم إجراء الاستعلام له. حقل البيانات الخاصة بالمورّد اختياري. يحتوي الحقل، في حال توفّره، على شكل بنية مجهولة المصدر بترميز TLV. يجب أن تكون العلامات المقدمة في هذه البنية علامات مؤهلة بالكامل للملف الشخصي.
updateSchemes
UpdateSchemeList updateSchemes
حدِّث المخططات (بروتوكولات التنزيل) التي يدعمها الجهاز.
إصدار
ReferencedString version
سلسلة UTF-8 متغيرة الطول تحتوي على إصدار البرنامج الذي حدّده المورّد للجهاز الذي يتم إجراء الطلب له.
يجب أن يكون طولها 32 أو أقل.
الدوال العامة
ImageQuery
ImageQuery()
الدالة الإنشائية التلقائية لـ ImageQuery.
يمكن تعبئة ImageQuery عن طريق استدعاء init() أو من خلال إلغاء تسلسل الكائن من رسالة.
init
WEAVE_ERROR init( ProductSpec & aProductSpec, ReferencedString & aVersion, IntegrityTypeList & aTypeList, UpdateSchemeList & aSchemeList, ReferencedString *aPackage, ReferencedString *aLocale, uint64_t aTargetNodeId, ReferencedTLVData *aMetaData )
عليك إعداد الكائن ImageQuery صراحةً باستخدام القيم المقدَّمة.
التفاصيل | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
المَعلمات |
|
||||||||||||||||
المرتجعات |
WEAVE_NO_ERROR بدون شروط.
|
==
bool operator==( const ImageQuery & ) const
عامل مساواة.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
true إذا كانت جميع الحقول في كلا الكائنين متساوية، false وإلا
|
حزمة
WEAVE_ERROR pack( PacketBuffer * )
عليك إجراء تسلسل لـ ImageQuery الأساسي في PacketBuffer المتوفّر.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
قيم الإرجاع |
|
طباعة
void print( void )
الدوال الثابتة العامة
parse
WEAVE_ERROR parse( PacketBuffer *, ImageQuery & )
عليك الاطّلاع على رسالة طلب البحث عن الصورة المقدَّمة في PacketBuffer باستخدام دالة ImageQuery المقدَّمة.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
المرتجعات |
WEAVE_NO_ERROR عند النجاح
|
||||
المرتجعات |
WEAVE_ERROR_BUFFER_TOO_SMALL إذا كانت الرسالة صغيرة جدًا بحيث لا يمكن أن تحتوي على جميع حقول ImageQuery
|
||||
المرتجعات |
WEAVE_ERROR_INVALID_LIST_LENGTH إذا كانت الرسالة تحتوي على IntegrityTypeList أو UpdateSchemeList الذي كان طويلاً جدًا
|