nl:: Weave:: DeviceLayer:: SoftwareUpdateManager
สรุป
การสืบทอด
คลาสย่อยที่รู้จักโดยตรง:nl::Weave::DeviceLayer::SoftwareUpdateManagerImpl
nl::Weave::DeviceLayer::SoftwareUpdateManagerImpl
nl::Weave::DeviceLayer::SoftwareUpdateManagerImpl
ประเภทสาธารณะ |
|
---|---|
ActionType{
|
enum เมื่อการอัปเดตซอฟต์แวร์พร้อมให้บริการ แอปพลิเคชันจะเลือกการดำเนินการอย่างใดอย่างหนึ่งต่อไปนี้ได้ ซึ่งเป็นส่วนหนึ่งของ Callback ของเหตุการณ์ SoftwareUpdateavailable API |
EventCallback)(void *apAppState, EventType aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)
|
Typedefvoid(*
|
EventType{
|
enum เหตุการณ์ API ที่สร้างโดยออบเจ็กต์ SoftwareUpdateManager |
RetryPolicyCallback)(void *aAppState, RetryParam &aRetryParam, uint32_t &aOutIntervalMsec)
|
Typedefvoid(*
|
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:: |
สหภาพ |
|
---|---|
nl:: |
|
nl:: |
ประเภทสาธารณะ
ActionType
ActionType
เมื่อการอัปเดตซอฟต์แวร์พร้อมใช้งาน แอปพลิเคชันจะเลือกการดำเนินการอย่างใดอย่างหนึ่งต่อไปนี้ได้ ซึ่งเป็นส่วนหนึ่งของ Callback ของเหตุการณ์ SoftwareUpdateavailable API
การดำเนินการเริ่มต้นจะตั้งค่าเป็น kAction_Now
พร็อพเพอร์ตี้ | |
---|---|
kAction_ApplicationManaged
|
อนุญาตให้แอปพลิเคชันจัดการขั้นตอนที่เหลือของการอัปเดตซอฟต์แวร์ เช่น การดาวน์โหลด การตรวจสอบความสมบูรณ์ของรูปภาพ และการติดตั้ง เครื่องสถานะของตัวจัดการการอัปเดตซอฟต์แวร์จะย้ายไปที่สถานะ ApplicationManaged การตรวจสอบการอัปเดตซอฟต์แวร์ที่กำหนดเวลาไว้ (หากเปิดใช้) จะถูกระงับจนกว่าแอปพลิเคชันจะเรียกใช้ Abort หรือ ImageInstallComplete API |
kAction_DownloadLater
|
หยุดการดาวน์โหลดชั่วคราวเมื่อเริ่ม การตรวจสอบการอัปเดตซอฟต์แวร์ที่กำหนดเวลาไว้ (หากเปิดใช้) จะถูกระงับ เครื่องของรัฐจะยังคงอยู่ในสถานะดาวน์โหลด เมื่อพร้อมแล้ว แอปพลิเคชันจะเรียกใช้ API การดาวน์โหลดประวัติการทำงานเพื่อดำเนินการดาวน์โหลดต่อ หรือเรียกใช้การยกเลิกเพื่อยกเลิก |
kAction_DownloadNow
|
เริ่มดาวน์โหลดทันที ระบบจะสร้างการเรียกกลับเหตุการณ์ kEvent_FetchOtherImageInfo API ทันทีในภายหลัง |
kAction_Ignore
|
ละเว้นการดาวน์โหลดโดยสิ้นเชิง ระบบจะสร้างการเรียกกลับของเหตุการณ์ kEvent_Finished API โดยมีข้อผิดพลาด 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 ของการอัปเดตซอฟต์แวร์ที่ใช้ได้จะระบุเป็นพารามิเตอร์อินพุตที่แอปพลิเคชันสามารถใช้เปรียบเทียบว่ารูปภาพที่ดาวน์โหลดเหมือนกับรูปภาพบางส่วน คาดว่าแอปพลิเคชันจะส่งคืนความยาวของรูปภาพบางส่วนในพารามิเตอร์เอาต์พุต บางส่วนของImageLenInBytes แอปพลิเคชันสามารถกำหนดค่าของ บางส่วนของImageLenInBytes เป็น 0 เพื่อระบุว่าไม่มีรูปภาพบางส่วน หรือ URI ของรูปภาพบางส่วนไม่ตรงกัน แอปพลิเคชันอาจเลือกละเว้นเหตุการณ์นี้ด้วยการส่งต่อไปยังเครื่องจัดการเหตุการณ์เริ่มต้น หากส่งออกแล้ว ระบบจะดาวน์โหลดอิมเมจเฟิร์มแวร์ที่มีทั้งหมดเสมอ |
kEvent_Finished
|
ขั้นตอนการอัปเดตซอฟต์แวร์เสร็จสิ้นแล้ว สร้างเมื่อการตรวจสอบการอัปเดตซอฟต์แวร์เสร็จสิ้นโดยมีหรือไม่มีข้อผิดพลาด พารามิเตอร์ที่รวมอยู่ในเหตุการณ์นี้จะระบุเหตุผลที่ล้มเหลวหากดำเนินการเสร็จสิ้นเนื่องจากล้มเหลว |
kEvent_PrepareImageStorage
|
เตรียมพื้นที่เก็บข้อมูลรูปภาพใหม่ ขอให้แอปพลิเคชันทำตามขั้นตอนที่จำเป็นในการเตรียมพื้นที่เก็บข้อมูลในเครื่องสำหรับการดาวน์โหลดอิมเมจเฟิร์มแวร์ใหม่ แอปพลิเคชันสามารถใช้สิ่งนี้ เช่น เพื่อลบหน้า Flash ระบบจะสร้างเหตุการณ์ PrepareImageStorage เฉพาะกรณีที่ดาวน์โหลดอิมเมจเฟิร์มแวร์ใหม่ เมื่อการดาวน์โหลดที่หยุดชะงักก่อนหน้านี้ดำเนินการต่อ ระบบจะไม่สร้าง PrepareImageStorage แอปพลิเคชันต้องส่งสัญญาณแจ้งการดำเนินการเตรียมเสร็จสมบูรณ์โดยเรียกใช้เมธอด แอปพลิเคชันสามารถเลือกที่จะละเว้นเหตุการณ์ PrepareImageStorage โดยการส่งไปยังเครื่องจัดการเหตุการณ์เริ่มต้น เมื่อดำเนินการเสร็จแล้ว ระบบจะดำเนินการต่อเป็นสถานะดาวน์โหลดภาพ เพื่อให้การดาวน์โหลดที่หยุดชะงักกลับมาทำงานอีกครั้ง แอปพลิเคชันควรคง URI ของรูปภาพ (ซึ่งระบุเป็นพารามิเตอร์เหตุการณ์) ไว้และใช้เมื่อจัดการเหตุการณ์ Fetchส่วนอื่นๆImageInfo ที่ตามมา |
kEvent_PrepareQuery
|
เตรียมข้อความ ImageQuery สร้างขึ้นเมื่อมีการเรียกให้ตรวจหาการอัปเดตซอฟต์แวร์ทำงาน เปิดโอกาสให้แอปพลิเคชันส่งข้อมูลที่เกี่ยวข้องกับผลิตภัณฑ์ไปยังข้อความ SofwareUpdate:ImageQuery |
kEvent_PrepareQuery_Metadata
|
เตรียมข้อมูลเมตาสำหรับคำขอ ImageQuery ให้โอกาสแอปพลิเคชันในการเพิ่มข้อมูลเมตาเพิ่มเติมลงในข้อความ SofwareUpdate:ImageQuery หากจำเป็น สร้างขึ้นเมื่อการติดตั้งใช้งานพร้อมที่จะรับข้อมูลเมตาจากแอปพลิเคชัน |
kEvent_QueryPrepareFailed
|
เกิดข้อผิดพลาดขณะเตรียมคำขอ ImageQuery สร้างขึ้นเมื่อการใช้งานพบข้อผิดพลาดขณะเตรียมส่งคำค้นหาการอัปเดตซอฟต์แวร์ |
kEvent_QuerySent
|
ส่งคำขอ ImageQuery แล้ว เหตุการณ์ที่ให้ข้อมูลที่จะส่งสัญญาณว่าส่งข้อความ SofwareUpdate:ImageQuery แล้ว |
kEvent_ReadyToInstall
|
รูปภาพพร้อมติดตั้งแล้ว เหตุการณ์ที่ให้ข้อมูลเพื่อส่งสัญญาณว่าอิมเมจพร้อมติดตั้งแล้ว สร้างเมื่อรูปภาพผ่านการตรวจสอบความสมบูรณ์ |
kEvent_ResetPartialImageInfo
|
รีเซ็ตสถานะของรูปภาพที่ดาวน์โหลดบางส่วน ขอให้แอปพลิเคชันไม่จำสถานะถาวรซึ่งเชื่อมโยงกับรูปภาพที่ดาวน์โหลด ระบบจะสร้างเหตุการณ์รีเซ็ตบางส่วนของรูปภาพเมื่อรูปภาพที่ดาวน์โหลดไม่ผ่านการตรวจสอบความสมบูรณ์ หลังจากประมวลผลเหตุการณ์รีเซ็ตบางส่วนของImageInfo แล้ว เหตุการณ์ Fetchส่วนอื่นๆImageInfo ที่ตามมาควรแสดงว่าไม่มีรูปภาพบางส่วนพร้อมใช้งาน โปรดทราบว่า เมื่อจัดการกับเหตุการณ์รีเซ็ตบางส่วนของImageInfo แอปพลิเคชันจะ "ไม่" ล้างข้อมูลรูปภาพด้วยตนเอง แต่จะมีเฉพาะข้อมูลสถานะที่เชื่อมโยงกับรูปภาพเท่านั้น (เช่น URI และความยาวของรูปภาพบางส่วน) หากแอปพลิเคชันไม่รองรับการเริ่มดาวน์โหลดรูปภาพอีกครั้ง แอปอาจเพิกเฉยต่อเหตุการณ์นี้ด้วยการส่งต่อไปยังเครื่องจัดการเหตุการณ์เริ่มต้น |
kEvent_SoftwareUpdateAvailable
|
มีการอัปเดตซอฟต์แวร์ สร้างขึ้นเมื่อได้รับ SofwareUpdate:ImageQueryResponse ต่อคำค้นหาที่มีข้อมูลของการอัปเดตที่มีอยู่ |
kEvent_StartImageDownload
|
เริ่มดาวน์โหลดรูปภาพแล้ว เหตุการณ์ที่ให้ข้อมูลเพื่อส่งสัญญาณเริ่มต้นธุรกรรมการดาวน์โหลดรูปภาพ |
kEvent_StartInstallImage
|
เริ่มการติดตั้งอิมเมจ ขอให้แอปพลิเคชันเป็นกระบวนการติดตั้งอิมเมจเฟิร์มแวร์ที่ดาวน์โหลด |
kEvent_StoreImageBlock
|
จัดเก็บบล็อกของข้อมูลรูปภาพ สร้างเมื่อใดก็ตามที่ได้รับบล็อกข้อมูลจากเซิร์ฟเวอร์ดาวน์โหลดไฟล์ พารามิเตอร์ที่รวมอยู่ในเหตุการณ์นี้จะให้ข้อมูลและความยาวของข้อมูล เพื่อรองรับการดาวน์โหลดที่หยุดชะงักอีกครั้ง แอปพลิเคชันควรรักษาจำนวนไบต์ของรูปภาพที่จัดเก็บทั้งหมดไว้ตลอดเวลา และใช้ค่านี้เมื่อจัดการเหตุการณ์ Fetchส่วนอื่นๆImageInfo ที่ตามมา |
RetryPolicyCallback
void(* RetryPolicyCallback)(void *aAppState, RetryParam &aRetryParam, uint32_t &aOutIntervalMsec)
รัฐ
State
ชั้นเรียนของเพื่อน
ภายใน::genericPlatformManagerImpl
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
operator=
SoftwareUpdateManager & operator=( const SoftwareUpdateManager & )=delete
~SoftwareUpdateManager
~SoftwareUpdateManager()=default