nl:: Weave:: DeviceLayer:: SoftwareUpdateManager
Tóm tắt
Tính kế thừa
Lớp con đã biết trực tiếp:nl::Weave::DeviceLayer::SoftwareUpdateManagerImpl
nl::Weave::DeviceLayer::SoftwareUpdateManagerImpl
nl::Weave::DeviceLayer::SoftwareUpdateManagerImpl
Loại công khai |
|
---|---|
ActionType{
|
enum Khi có bản cập nhật phần mềm, ứng dụng có thể chọn một trong các thao tác sau đây trong lệnh gọi lại sự kiện SoftwareUpdateAvailable API. |
EventCallback)(void *apAppState, EventType aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)
|
typedefvoid(*
|
EventType{
|
enum Các sự kiện API do đối tượng SoftwareUpdateManager tạo. |
RetryPolicyCallback)(void *aAppState, RetryParam &aRetryParam, uint32_t &aOutIntervalMsec)
|
typedefvoid(*
|
State
|
enum |
Lớp bạn bè |
|
---|---|
Internal::GenericPlatformManagerImpl
|
friend class
|
Hàm công khai |
|
---|---|
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
|
Hàm tĩnh công khai |
|
---|---|
DefaultEventHandler(void *apAppState, EventType aEvent, const InEventParam & aInParam, OutEventParam & aOutParam)
|
void
|
Hàm được bảo vệ |
|
---|---|
SoftwareUpdateManager()=default
|
|
SoftwareUpdateManager(const SoftwareUpdateManager &)=delete
|
|
SoftwareUpdateManager(const SoftwareUpdateManager &&)=delete
|
|
operator=(const SoftwareUpdateManager &)=delete
|
|
~SoftwareUpdateManager()=default
|
|
Cấu trúc |
|
---|---|
nl:: |
Hiệp hội |
|
---|---|
nl:: |
|
nl:: |
Loại công khai
ActionType
ActionType
Khi có bản cập nhật phần mềm, ứng dụng có thể chọn một trong các thao tác sau đây trong lệnh gọi lại sự kiện SoftwareUpdateAvailable API.
Hành động mặc định sẽ được đặt thành kAction_Now.
Thuộc tính | |
---|---|
kAction_ApplicationManaged
|
Cho phép ứng dụng quản lý các giai đoạn còn lại của quá trình cập nhật phần mềm, chẳng hạn như tải xuống, xác thực tính toàn vẹn của hình ảnh và cài đặt. Máy trạng thái của trình quản lý bản cập nhật phần mềm sẽ chuyển sang trạng thái ApplicationManaged. Các hoạt động kiểm tra bản cập nhật phần mềm đã lên lịch (nếu được bật) sẽ bị tạm ngưng cho đến khi ứng dụng gọi đến Cancellation (Huỷ bỏ) hoặc ImageInstallComplete API (API ImageInstallComplete). |
kAction_DownloadLater
|
Tạm dừng tải xuống khi bắt đầu. Quá trình kiểm tra bản cập nhật phần mềm theo lịch (nếu được bật) sẽ bị tạm ngưng. Máy trạng thái sẽ vẫn ở trạng thái Tải xuống. Khi đã sẵn sàng, ứng dụng có thể gọi API tải tiếp tục xuống để tiếp tục tải xuống hoặc gọi Huỷ để huỷ. |
kAction_DownloadNow
|
Bắt đầu tải xuống ngay. Lệnh gọi lại sự kiện API kEvent_FetchPartialImageInfo API sẽ được tạo ngay sau đó. |
kAction_Ignore
|
Bỏ qua hoàn toàn quá trình tải xuống. Lệnh gọi lại sự kiện API kEvent_Completed sẽ được tạo kèm theo lỗi WEAVE_DEVICE_ERROR_NAMES_UPDATE_CANCELLED nếu bạn chọn tuỳ chọn này và logic thử lại sẽ không được gọi. |
EventCallback
void(* EventCallback)(void *apAppState, EventType aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)
EventType
EventType
Các sự kiện API do đối tượng SoftwareUpdateManager
tạo.
Thuộc tính | |
---|---|
kEvent_ComputeImageIntegrity
|
Tính toán giá trị kiểm tra tính toàn vẹn của hình ảnh. Yêu cầu ứng dụng tính toán giá trị kiểm tra tính toàn vẹn đối với hình ảnh đã tải xuống. Được tạo sau khi quá trình tải xuống hoàn tất. |
kEvent_DefaultCheck
|
Kiểm tra hành vi xử lý sự kiện mặc định. Dùng để xác minh cách xử lý sự kiện mặc định chính xác trong ứng dụng. Ứng dụng KHÔNG được xử lý sự kiện này. |
kEvent_FetchPartialImageInfo
|
Tìm nạp thông tin trạng thái vẫn tồn tại cho hình ảnh đã tải xuống một phần. Tạo cơ hội cho ứng dụng tiết lộ thông tin của một phần hình ảnh đã tải xuống trước đó để có thể tiếp tục quá trình tải xuống từ điểm dừng trước đó. URI của bản cập nhật phần mềm có sẵn được cung cấp dưới dạng tham số đầu vào mà ứng dụng có thể sử dụng để so sánh nếu hình ảnh đang tải xuống giống với hình ảnh một phần. Ứng dụng dự kiến sẽ trả về độ dài của một phần hình ảnh trong tham số đầu ra PartialImageLenInBytes. Ứng dụng có thể đặt giá trị của PartialImageLenInBytes thành 0 để cho biết không có hình ảnh một phần nào tồn tại hoặc URI của hình ảnh một phần không khớp. Ứng dụng có thể chọn bỏ qua sự kiện này bằng cách chuyển sự kiện đó vào trình xử lý sự kiện mặc định. Nếu việc này được thực hiện, hệ thống sẽ luôn tải toàn bộ hình ảnh chương trình cơ sở hiện có xuống. |
kEvent_Finished
|
Quá trình cập nhật phần mềm đã kết thúc. Được tạo khi quá trình kiểm tra bản cập nhật phần mềm hoàn tất (có hoặc không có lỗi). Các thông số đi kèm với sự kiện này cho biết lý do không thành công nếu lượt thử kết thúc do không thành công. |
kEvent_PrepareImageStorage
|
Chuẩn bị lưu trữ hình ảnh mới. Yêu cầu ứng dụng thực hiện mọi bước cần thiết để chuẩn bị bộ nhớ cục bộ cho quá trình tải hình ảnh chương trình cơ sở mới xuống. Ứng dụng có thể sử dụng chức năng này, chẳng hạn như để xóa các trang flash. Sự kiện PrepareImageStorage được tạo chỉ trong trường hợp hình ảnh chương trình cơ sở mới đang được tải xuống. Khi quá trình tải xuống bị gián đoạn trước đó được tiếp tục, PrepareImageStorage sẽ không được tạo. Ứng dụng phải báo hiệu việc hoàn tất thao tác chuẩn bị bằng cách gọi phương thức Ứng dụng có thể chọn bỏ qua sự kiện PrepareImageStorage bằng cách truyền sự kiện đó vào trình xử lý sự kiện mặc định. Nếu việc này được thực hiện, hệ thống sẽ tự động chuyển sang trạng thái tải ảnh xuống. Để hỗ trợ tiếp tục quá trình tải xuống bị gián đoạn, ứng dụng nên duy trì URI hình ảnh (được cung cấp dưới dạng thông số sự kiện) và sử dụng URI này khi xử lý các sự kiện FetchPartialImageInfo tiếp theo. |
kEvent_PrepareQuery
|
Chuẩn bị thông báo ImageQuery. Được tạo khi quá trình kiểm tra bản cập nhật phần mềm được kích hoạt. Mang đến cơ hội để ứng dụng cung cấp thông tin liên quan đến sản phẩm cho thông báo SofwareUpdate:ImageQuery. |
kEvent_PrepareQuery_Metadata
|
Chuẩn bị siêu dữ liệu cho yêu cầu ImageQuery. Cung cấp cơ hội để ứng dụng nối thêm siêu dữ liệu bổ sung vào thông báo SofwareUpdate:ImageQuery nếu cần. Được tạo khi quá trình triển khai đã sẵn sàng nhận siêu dữ liệu từ ứng dụng. |
kEvent_QueryPrepareFailed
|
Lỗi khi chuẩn bị yêu cầu ImageQuery. Được tạo khi quá trình triển khai gặp lỗi trong quá trình chuẩn bị gửi truy vấn cập nhật phần mềm. |
kEvent_QuerySent
|
Yêu cầu ImageQuery đã được gửi. Sự kiện thông tin để báo hiệu rằng thông báo SofwareUpdate:ImageQuery đã được gửi. |
kEvent_ReadyToInstall
|
Hình ảnh đã sẵn sàng để cài đặt. Sự kiện thông tin để báo hiệu rằng hình ảnh đã sẵn sàng để cài đặt. Được tạo sau khi hình ảnh vượt qua quy trình kiểm tra tính toàn vẹn. |
kEvent_ResetPartialImageInfo
|
Đặt lại trạng thái của hình ảnh đã tải xuống một phần. Yêu cầu ứng dụng bỏ qua trạng thái ổn định liên kết với hình ảnh đã tải xuống. Sự kiện ResetpartImageInfo được tạo bất cứ khi nào hình ảnh đã tải xuống không vượt qua được quy trình kiểm tra tính toàn vẹn. Sau khi sự kiện ResetPartialImageInfo đã được xử lý, các sự kiện FetchPartialImageInfo tiếp theo sẽ cho biết rằng không có hình ảnh một phần nào. Lưu ý rằng khi xử lý sự kiện ResetPartialImageInfo, ứng dụng KHÔNG bắt buộc phải xoá chính dữ liệu hình ảnh, mà chỉ bắt buộc phải thông tin trạng thái liên kết với hình ảnh (tức là URI và một phần chiều dài hình ảnh). Nếu không hỗ trợ tiếp tục tải hình ảnh xuống, thì ứng dụng có thể bỏ qua sự kiện này bằng cách chuyển sự kiện đó đến trình xử lý sự kiện mặc định. |
kEvent_SoftwareUpdateAvailable
|
Đã có bản cập nhật phần mềm. Được tạo khi nhận được một SofwareUpdate:ImageQueryResponse để phản hồi một truy vấn chứa thông tin về bản cập nhật có sẵn. |
kEvent_StartImageDownload
|
Đã bắt đầu tải ảnh xuống. Sự kiện thông tin để báo hiệu việc bắt đầu một giao dịch tải hình ảnh xuống. |
kEvent_StartInstallImage
|
Bắt đầu cài đặt hình ảnh. Yêu cầu ứng dụng thực hiện quy trình cài đặt hình ảnh chương trình cơ sở đã tải xuống. |
kEvent_StoreImageBlock
|
Lưu trữ một khối dữ liệu hình ảnh. Được tạo bất cứ khi nào một khối dữ liệu được nhận từ máy chủ tải tệp xuống. Các thông số đi kèm với sự kiện này sẽ cung cấp dữ liệu và độ dài của dữ liệu. Để hỗ trợ tiếp tục quá trình tải xuống bị gián đoạn, ứng dụng phải duy trì tổng số byte hình ảnh đã lưu trữ liên tục và sử dụng giá trị này khi xử lý các sự kiện FetchPartialImageInfo tiếp theo. |
RetryPolicyCallback
void(* RetryPolicyCallback)(void *aAppState, RetryParam &aRetryParam, uint32_t &aOutIntervalMsec)
Tiểu bang
State
Lớp bạn bè
Nội bộ::GenericPlatformManagerImpl
friend class Internal::GenericPlatformManagerImpl
Hàm công khai
Hủy
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 )
Hàm tĩnh công khai
DefaultEventHandler
void DefaultEventHandler( void *apAppState, EventType aEvent, const InEventParam & aInParam, OutEventParam & aOutParam )
Hàm được bảo vệ
SoftwareUpdateManager
SoftwareUpdateManager()=default
SoftwareUpdateManager
SoftwareUpdateManager( const SoftwareUpdateManager & )=delete
SoftwareUpdateManager
SoftwareUpdateManager( const SoftwareUpdateManager && )=delete
toán tử=
SoftwareUpdateManager & operator=( const SoftwareUpdateManager & )=delete
~SoftwareUpdateManager
~SoftwareUpdateManager()=default