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 แบบไม่ระบุตัวตน แท็กที่แสดงภายในโครงสร้างนี้จะเป็นแท็กเฉพาะโปรไฟล์ที่มีคุณสมบัติครบถ้วน
เวอร์ชัน
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
โอเปอเรเตอร์ความเท่าเทียม
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
||
การส่งคืน |
จริง หากทุกช่องในออบเจ็กต์ทั้งสองเท่ากัน ไม่เช่นนั้นจะเป็นเท็จ
|
แพ็ก
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 ยาวเกินไป
|