nl:: بافت:: پروفایل ها:: به روز رسانی نرم افزار:: 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 از پروتکل استفاده نمی شود)
محصول خاص
ProductSpec productSpec
مشخصات محصول که دستگاهی را که درخواست تصویر را انجام می دهد را توصیف می کند.
targetNodeId
uint64_t targetNodeId
شناسه گره اختیاری دستگاهی که پرس و جو برای آن انجام می شود.
فیلد شناسه گره هدف اختیاری است. اگر وجود نداشته باشد، شناسه گره هدف برای پرس و جو به طور ضمنی همان گره ای است که منبع پیام پرس و جو تصویر بوده است.
فیلد شناسه گره هدف معمولاً در مواردی استفاده میشود که گرهی که منبع پیام IMAGE QUERY است به عنوان یک پروکسی بهروزرسانی نرمافزار برای گره دیگر استفاده میشود.
متا دیتا
ReferencedTLVData theMetaData
طول فیلد داده خاص فروشنده متغیر است و باقیمانده بار پیام Weave را فراتر از فیلدهای توضیح داده شده در بالا اشغال می کند.
این فیلد اطلاعات خاص فروشنده را در مورد دستگاهی که پرس و جو برای آن انجام می شود رمزگذاری می کند. فیلد داده های خاص فروشنده اختیاری است. در صورت وجود، فیلد شکلی از ساختار کدگذاری شده با TLV ناشناس دارد. تگ های ارائه شده در این ساختار باید تگ های کاملا واجد شرایط پروفایل خاص باشند.
به روز رسانی طرح ها
UpdateSchemeList updateSchemes
به روز رسانی طرح ها (پروتکل های دانلود) پشتیبانی شده توسط دستگاه.
نسخه
ReferencedString version
یک رشته UTF-8 با طول متغیر که حاوی نسخه نرم افزاری مشخص شده توسط فروشنده دستگاهی است که درخواست برای آن انجام می شود.
طول باید 32 یا کمتر باشد.
توابع عمومی
ImageQuery
ImageQuery()
سازنده پیش فرض برای ImageQuery .
ImageQuery ممکن است با فراخوانی init() یا با deserialized شی از یک پیام پر شود.
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 )
توابع استاتیک عمومی
تجزیه
WEAVE_ERROR parse( PacketBuffer *, ImageQuery & )
پیام پرس و جو تصویر ارائه شده در PacketBuffer را در یک ImageQuery ارائه شده از حالت سریال خارج کنید.
جزئیات | |||||
---|---|---|---|---|---|
پارامترها |
| ||||
برمی گرداند | WEAVE_NO_ERROR در موفقیت | ||||
برمی گرداند | WEAVE_ERROR_BUFFER_TOO_SMALL اگر پیام خیلی کوچک بود که شامل تمام فیلدهای ImageQuery نمی شد | ||||
برمی گرداند | WEAVE_ERROR_INVALID_LIST_LENGTH اگر پیام حاوی IntegrityTypeList یا UpdateSchemeList بود که خیلی طولانی بود |
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates. The OPENTHREAD and related marks are trademarks of the Thread Group and are used under license.
تاریخ آخرین بهروزرسانی 2024-11-13 بهوقت ساعت هماهنگ جهانی.