nl::Weave::Profiles::SoftwareUpdate::ImageQueryResponse

#include <src/lib/profiles/software-update/SoftwareUpdateProfile.h>

מחלקה לתמיכה ביצירה ובפענוח של הודעות תגובה לשאילתות תמונה.

סיכום

הודעת התגובה לשאילתת התמונה היא בצורה הבאה:

אורך שם השדה
משתנה URI
משתנה מפרט הגרסה
משתנה מפרט תקינות
בייט אחד עדכון סכימה
בייט אחד אפשרויות עדכון
הפורמט של שדה אפשרויות העדכון (אופציונלי) הוא:

מקדח משמעות
0..2 עדכון העדיפות
3..4 עדכון המצב
5 סטטוס דיווח לאחר ההגדרה, הלקוח יתבקש ליצור את ההודעות האופציונליות DownloadNotification ו-UpdateNotifications.
5..7 בוצעה הזמנה
התגובה לשאילתת התמונה נשלחת רק במקרה שבו שאילתת התמונה מעובדת בהצלחה ויוצרת תמונה להורדה. ההודעה מכילה הוראות להורדה של הצומת שהשאילתה שלחה לגביו. שימו לב שבמקרים שבהם השרת לא מצליח לעבד את שאילתת התמונה, הוא ייצור סטטוס של שאילתת תמונה.

בונים והורסים

ImageQueryResponse()
בנאי ברירת המחדל של ImageQueryResponse.

מאפיינים ציבוריים

integritySpec
שדה שמכיל את המידע לגבי התקינות (סוג התקינות וגיבוב) של התמונה של עדכון התוכנה.
reportStatus
bool
מבקשים ליידע את השרת לגבי ההתקדמות של עדכון התוכנה באמצעות ההודעות האופציונליות DownloadNotification ו-UpdateNotification.
updateCondition
הוראות לגבי התנאים שבהם יש להמשיך עם עדכון התוכנה.
updatePriority
הוראות שמנחות את המכשיר מתי לבצע את עדכון התוכנה.
updateScheme
uint8_t
סכימת העדכון המשמשת להורדת התמונה של עדכון התוכנה.
uri
מחרוזת UTF-8 באורך משתנה שמכילה את המיקום של תמונת התוכנה.
versionSpec
מחרוזת UTF-8 באורך משתנה שמכילה זיהוי של גרסת תוכנה ספציפית לספק.

תפקידים ציבוריים

init(ReferencedString &, ReferencedString &, IntegritySpec &, uint8_t, UpdatePriority, UpdateCondition, bool)
מפעילים באופן מפורש את האובייקט ImageQueryResponse עם הערכים שסופקו.
operator==(const ImageQueryResponse &) const
bool
מפעיל של שוויון.
pack(PacketBuffer *)
מסדרים את ImageQueryResponse ל-PacketBuffer שסופק.
print(void)
void

פונקציות סטטיות ציבוריות

parse(PacketBuffer *, ImageQueryResponse &)
מבצעים פעולת deserialize של הודעת התגובה לשאילתת התמונה שסופקה ב-PacketBuffer ל-ImageQueryResponse.

מאפיינים ציבוריים

integritySpec

IntegritySpec integritySpec

שדה שמכיל את המידע לגבי התקינות (סוג התקינות וגיבוב) של התמונה של עדכון התוכנה.

reportStatus

bool reportStatus

מבקשים ליידע את השרת לגבי ההתקדמות של עדכון התוכנה באמצעות ההודעות האופציונליות DownloadNotification ו-UpdateNotification.

updateCondition

UpdateCondition updateCondition

הוראות לגבי התנאים שבהם יש להמשיך עם עדכון התוכנה.

updatePriority

UpdatePriority updatePriority

הוראות שמנחות את המכשיר מתי לבצע את עדכון התוכנה.

updateScheme

uint8_t updateScheme

סכימת העדכון המשמשת להורדת התמונה של עדכון התוכנה.

הערך שלו נגזר מ-UpdateSchemes.

uri

ReferencedString uri

מחרוזת UTF-8 באורך משתנה שמכילה את המיקום של תמונת התוכנה.

התוכן של המחרוזת הזו חייב להתאים למפרט RFC 3986. עבור סכמות עדכון שתואמות לפרוטוקול אינטרנט מוגדר היטב (HTTP, HTTPS, SFTP), רכיב הסכמה של ה-URI חייב להיות תואם לקידוד של כתובת ה-URL הקנונית של אותה סכימת פרוטוקול. אורך המחרוזת לא יחרוג מ-65565 והמחרוזת חייבת להתאים בתוך הודעת Weave אחת, דבר שעלול להיות כפוף למגבלות MTU.

versionSpec

ReferencedString versionSpec

מחרוזת UTF-8 באורך משתנה שמכילה זיהוי של גרסת תוכנה ספציפית לספק.

האורך המרבי של המחרוזת הוא 256 בייטים.

תפקידים ציבוריים

ImageQueryResponse

 ImageQueryResponse()

בנאי ברירת המחדל של ImageQueryResponse.

ניתן לאכלס את ImageQueryResponse באמצעות השיטה init() או על ידי ביצוע פעולת deserialize של האובייקט מהודעה.

init

WEAVE_ERROR init(
  ReferencedString &,
  ReferencedString &,
  IntegritySpec &,
  uint8_t,
  UpdatePriority,
  UpdateCondition,
  bool
)

מפעילים באופן מפורש את האובייקט ImageQueryResponse עם הערכים שסופקו.

פרטים
פרמטרים
[in] aUri
ה-URI שבו נמצאת תמונת הקושחה החדשה.
[in] aVersion
מחרוזת הגרסה של התמונה הזו.
[in] aIntegrity
מפרט התקינות של התמונה החדשה.
[in] aScheme
סכימת העדכונים שבה משתמשים בהורדה.
[in] aPriority
עדיפות העדכון שמשויכת לעדכון הזה.
[in] aCondition
התנאי שבו צריך לעדכן.
[in] aReportStatus
אם הפרמטר true מבקש מהלקוח לדווח אחרי ההורדה והעדכון, אחרת הלקוח לא ידווח.
החזרות
WEAVE_NO_ERROR ללא תנאי.

אופרטור==

bool operator==(
  const ImageQueryResponse &
) const 

מפעיל של שוויון.

פרטים
פרמטרים
another
ImageQueryResponse שיש לבדוק מול ה-ImageQueryResponse
החזרות
TRUE אם כל השדות בשני האובייקטים שווים, FALSE אם לא

חבילה

WEAVE_ERROR pack(
  PacketBuffer *
)

מסדרים את ImageQueryResponse ל-PacketBuffer שסופק.

פרטים
פרמטרים
[in] aBuffer
מאגר חבילות שאליו יש לדחוס את תגובת השאילתה
ערכים מוחזרים
WEAVE_NO_ERROR
בהצלחה.
WEAVE_ERROR_BUFFER_TOO_SMALL
אם ה-ImageQueryResponse גדול מדי מכדי להכיל את המאגר הזמני.

הדפסה

void print(
  void
)

פונקציות סטטיות ציבוריות

parse

WEAVE_ERROR parse(
  PacketBuffer *,
  ImageQueryResponse &
)

מבצעים פעולת deserialize של הודעת התגובה לשאילתת התמונה שסופקה ב-PacketBuffer ל-ImageQueryResponse.

פרטים
פרמטרים
[in] aBuffer
הפניה לחבילה שממנה יש לנתח את שאילתת התמונה
[in] aResponse
אובייקט שבו תציב את התוצאה
החזרות
WEAVE_NO_ERROR: ההצלחה בוצעה
החזרות
WEAVE_ERROR_BUFFER_TOO_small אם ההודעה קטנה מדי מכדי להכיל את כל השדות של ה-ImageQuery
החזרות
WEAVE_ERROR_INVALID_INTEGRITY_TYPE אם סוג התקינות שסופק אינו אחד מהערכים שצוינו ב-IntegrityTypes