nl::Weave::DeviceLayer::SoftwareUpdateManager

סיכום

ירושה

Direct known Subclasses:
  nl::Weave::DeviceLayer::SoftwareUpdateManagerImpl
  nl::Weave::DeviceLayer::SoftwareUpdateManagerImpl
  nl::Weave::DeviceLayer::SoftwareUpdateManagerImpl

סוגים ציבוריים

ActionType{
  kAction_Ignore,
  kAction_DownloadNow,
  kAction_DownloadLater,
  kAction_ApplicationManaged
}
טיפוסים בני מנייה (enum)
כאשר יש עדכון תוכנה זמין, האפליקציה יכולה לבחור באחת מהפעולות הבאות כחלק מקריאה חוזרת לאירוע SoftwareUpdateAvailable API.
EventCallback)(void *apAppState, EventType aEvent, const InEventParam &aInParam, OutEventParam &aOutParam) typedef
void(*
EventType{
  kEvent_PrepareQuery,
  kEvent_PrepareQuery_Metadata,
  kEvent_QueryPrepareFailed,
  kEvent_QuerySent,
  kEvent_SoftwareUpdateAvailable,
  kEvent_FetchPartialImageInfo,
  kEvent_PrepareImageStorage,
  kEvent_StartImageDownload,
  kEvent_StoreImageBlock,
  kEvent_ComputeImageIntegrity,
  kEvent_ResetPartialImageInfo,
  kEvent_ReadyToInstall,
  kEvent_StartInstallImage,
  kEvent_Finished,
  kEvent_DefaultCheck = 100
}
טיפוסים בני מנייה (enum)
אירועי API שנוצרו על ידי האובייקט SoftwareUpdateManager.
RetryPolicyCallback)(void *aAppState, RetryParam &aRetryParam, uint32_t &aOutIntervalMsec) typedef
void(*
State טיפוסים בני מנייה (enum)

קורסים עם חברים

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::Weave::DeviceLayer::SoftwareUpdateManager::RetryParam

התאגדויות

nl::Weave::DeviceLayer::SoftwareUpdateManager::InEventParam
nl::Weave::DeviceLayer::SoftwareUpdateManager::OutEventParam

סוגים ציבוריים

ActionType

 ActionType

כאשר יש עדכון תוכנה זמין, האפליקציה יכולה לבחור באחת מהפעולות הבאות כחלק מקריאה חוזרת לאירוע SoftwareUpdateAvailable API.

פעולת ברירת המחדל תוגדר בתור kAction_Now.

תכונות
kAction_ApplicationManaged

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

מחשב במצב של מנהל עדכוני תוכנה יעבור למצב Applicationmanaged. הבדיקות המתוזמנות של עדכוני תוכנה (אם הן מופעלות) יושעו עד שהאפליקציה תקרא Abort או ImageInstallComplete API.

kAction_DownloadLater

השהיית ההורדה כשההורדה מתחילה.

תתבצע השעיה של בדיקות מתוזמנות של עדכוני תוכנה (אם הופעלו). המחשב במצב 'הורדה' יישאר במצב 'הורדה'. כשהאפליקציה תהיה מוכנה, היא תוכל להפעיל את ה-API של חידוש ההורדה כדי להמשיך בהורדה, או להתקשר ל'ביטול' כדי לבטל.

kAction_DownloadNow

התחלת ההורדה מיד.

מיד לאחר מכן, תיווצר קריאה חוזרת של אירוע (callback) מסוג kEvent_FetchAutomaticImageInfo API.

kAction_Ignore

מתעלמים לגמרי מההורדה.

תתבצע קריאה חוזרת של אירוע API מסוג kEvent_Done עם השגיאה WEAVE_DEVICE_ERROR_SOFTWARE_UPDATE_CANCELLED, אם תבחרו באפשרות הזו והלוגיקה של הניסיון החוזר לא תופעל.

EventCallback

void(* EventCallback)(void *apAppState, EventType aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)

EventType

 EventType

אירועי API שנוצרו על ידי האובייקט SoftwareUpdateManager.

תכונות
kEvent_ComputeImageIntegrity

חישוב ערך של בדיקת תקינות של תמונה.

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

kEvent_DefaultCheck

בדיקת התנהגות ברירת המחדל לטיפול באירועים.

משמש לאימות ברירת המחדל של טיפול באירועים באפליקציה.

אפליקציות לא יכולות לטפל באירוע הזה.

kEvent_FetchPartialImageInfo

אחזור פרטי מצב עקביים של תמונה שהורדתם חלקית.

מאפשרת לאפליקציה לחשוף מידע על תמונה חלקית שהורדתם בעבר, כדי שניתן יהיה להמשיך את ההורדה מהנקודה שבה עצרה לאחרונה. ה-URI של עדכון התוכנה הזמין מסופק כפרמטר קלט שהאפליקציה יכולה להשתמש בו כדי להשוות אם התמונה שמורידים זהה לתמונה החלקית.

האפליקציה צפויה להחזיר את אורך התמונה החלקית בפרמטר הפלט PartialImageLenInBytes. האפליקציה יכולה להגדיר את הערך של PartialImageLenInBytes ל-0 כדי לציין שלא קיימת תמונה חלקית או שה-URI של התמונה החלקית לא תואם.

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

kEvent_Finished

תהליך עדכון התוכנה הסתיים.

נוצר כאשר בדיקה של עדכוני תוכנה מסתיימת עם או בלי שגיאות. הפרמטרים הכלולים באירוע הזה מציינים את הסיבה לכשל אם הניסיון הסתיים עקב כשל.

kEvent_PrepareImageStorage

הכנה לקראת אחסון של תמונה חדשה.

מבקש מהאפליקציה לבצע את השלבים הדרושים כדי להכין אחסון מקומי להורדה של תמונת קושחה חדשה. היישום יכול להשתמש בכך, לדוגמה, כדי למחוק דפי Flash.

אירוע PrepareImageStorage נוצר רק במקרה שבו מתבצעת הורדה של תמונת קושחה חדשה. כשממשיכים הורדה שנקטעה בעבר, לא נוצר PrepareImageStorage.

האפליקציה חייבת לציין שהשלמת את פעולת ההכנה על ידי קריאה ל-method PrepareImageStorageComplete(). אפשר לעשות זאת באמצעות הקריאה החוזרת (callback) של האירוע עצמו, או במועד מאוחר יותר. אם מתקבלת קריאה ממשימה שאינה המשימה של Weave, מבצע הקריאה צריך להחזיק את נעילת המקבץ Weave.

האפליקציה יכולה להתעלם מהאירוע 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

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

מבקשת מהאפליקציה לשכוח את המצב הקבוע שמשויך לתמונה שהורדה. אירוע איפוס חלקי תמונה נוצר בכל פעם שתמונה שהורדה נכשלת בבדיקת התקינות שלה. לאחר העיבוד של אירוע #PartialImageInfo, צריך לציין שאין תמונה חלקית זמינה.

חשוב לשים לב שבעת הטיפול באירוע DeletePartialImageInfo, האפליקציה לא נדרשת לנקות את נתוני התמונה עצמה, אלא רק את נתוני המצב שמשויכים לתמונה (כלומר, ה-URI ואורך התמונה החלקית).

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

kEvent_SoftwareUpdateAvailable

יש עדכון תוכנה.

נוצר כאשר SofwareUpdate:ImageQueryResponse מתקבל בתגובה לשאילתה שמכילה מידע על העדכון הזמין.

kEvent_StartImageDownload

הורדת התמונה החלה.

אירוע אינפורמטיבי שמציין את ההתחלה של עסקה של הורדת תמונה.

kEvent_StartInstallImage

מתחילים בהתקנת התמונה.

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

kEvent_StoreImageBlock

אחסון בלוק של נתוני תמונה.

הקובץ נוצר בכל פעם שמתקבל חסימת נתונים משרת הורדת הקבצים. פרמטרים הכלולים באירוע הזה מספקים את הנתונים ואת אורך הנתונים.

כדי לתמוך בהמשך הורדה שנקטעה, על האפליקציה לשמור על ספירה קבועה של המספר הכולל של בייטים המאוחסנים של תמונות, ולהשתמש בערך הזה בטיפול באירועי FetchpartImageInfo עוקבים.

RetryPolicyCallback

void(* RetryPolicyCallback)(void *aAppState, RetryParam &aRetryParam, uint32_t &aOutIntervalMsec)

ארץ

 State

קורסים עם חברים

פנימי::גנריPlatformManagerImpl

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

אופרטור=

SoftwareUpdateManager & operator=(
  const SoftwareUpdateManager &
)=delete

~SoftwareUpdateManager

 ~SoftwareUpdateManager()=default