nl:: Weave:: DeviceLayer:: SoftwareUpdateManager
Riepilogo
Eredità
Sottoclassi note direttamente:nl::Weave::DeviceLayer::SoftwareUpdateManagerImpl
nl::Weave::DeviceLayer::SoftwareUpdateManagerImpl
nl::Weave::DeviceLayer::SoftwareUpdateManagerImpl
Tipi pubblici |
|
---|---|
ActionType{
|
enum Quando è disponibile un aggiornamento software, l'applicazione può scegliere una delle seguenti azioni come parte del callback dell'evento API SoftwareUpdateAvailable. |
EventCallback)(void *apAppState, EventType aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)
|
typedefvoid(*
|
EventType{
|
enum Eventi API generati dall'oggetto SoftwareUpdateManager . |
RetryPolicyCallback)(void *aAppState, RetryParam &aRetryParam, uint32_t &aOutIntervalMsec)
|
typedefvoid(*
|
State
|
enum |
Classi di amici |
|
---|---|
Internal::GenericPlatformManagerImpl
|
friend class
|
Funzioni pubbliche |
|
---|---|
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
|
Funzioni statiche pubbliche |
|
---|---|
DefaultEventHandler(void *apAppState, EventType aEvent, const InEventParam & aInParam, OutEventParam & aOutParam)
|
void
|
Funzioni protette |
|
---|---|
SoftwareUpdateManager()=default
|
|
SoftwareUpdateManager(const SoftwareUpdateManager &)=delete
|
|
SoftwareUpdateManager(const SoftwareUpdateManager &&)=delete
|
|
operator=(const SoftwareUpdateManager &)=delete
|
|
~SoftwareUpdateManager()=default
|
|
Structs |
|
---|---|
nl:: |
Sindacati |
|
---|---|
nl:: |
|
nl:: |
Tipi pubblici
ActionType
ActionType
Quando è disponibile un aggiornamento software, l'applicazione può scegliere una delle seguenti azioni come parte del callback dell'evento API SoftwareUpdateAvailable.
L'azione predefinita sarà impostata su kAction_Now.
Proprietà | |
---|---|
kAction_ApplicationManaged
|
Consente all'applicazione di gestire le altre fasi dell'aggiornamento del software, come il download, la convalida dell'integrità dell'immagine e l'installazione. La macchina dello stato di Software Update Manager passerà allo stato ApplicationManaged. I controlli programmati degli aggiornamenti software (se abilitati) verranno sospesi fino all'interruzione della chiamata all'applicazione o all'API ImageInstallComplete. |
kAction_DownloadLater
|
Metti in pausa il download all'avvio. I controlli programmati degli aggiornamenti software (se abilitati) verranno sospesi. La macchina a stato rimarrà in stato di download. Quando è pronta, l'applicazione può chiamare l'API resume download per continuare il download o chiamare Interrompi per annullare. |
kAction_DownloadNow
|
Avvia subito il download. Subito dopo verrà generato un callback dell'evento API kEvent_FetchPartialImageInfo. |
kAction_Ignore
|
Ignorare completamente il download. Se questa opzione viene selezionata e la logica dei nuovi tentativi non verrà richiamata, verrà generato un callback di eventi API kEvent_Finished con l'errore WEAVE_DEVICE_ERROR_SOFTWARE_UPDATE_CANCELLED. |
EventCallback
void(* EventCallback)(void *apAppState, EventType aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)
EventType
EventType
Eventi API generati dall'oggetto SoftwareUpdateManager
.
Proprietà | |
---|---|
kEvent_ComputeImageIntegrity
|
Calcola un valore di controllo dell'integrità dell'immagine. Chiede all'applicazione di calcolare un valore di controllo dell'integrità sull'immagine scaricata. Viene generato al termine del download. |
kEvent_DefaultCheck
|
Controlla il comportamento predefinito di gestione degli eventi. Utilizzato per verificare la corretta gestione degli eventi predefiniti nell'applicazione. Le applicazioni NON devono gestire questo evento. |
kEvent_FetchPartialImageInfo
|
Recupera le informazioni sullo stato persistente per un'immagine scaricata parzialmente. Consente all'applicazione di divulgare informazioni su un'immagine parziale precedentemente scaricata, in modo che il download possa continuare dal punto in cui è stato interrotto l'ultima volta. L'URI dell'aggiornamento software disponibile viene fornito come parametro di input che l'applicazione può utilizzare per confrontare se l'immagine da scaricare è uguale all'immagine parziale. L'applicazione deve restituire la lunghezza dell'immagine parziale nel parametro di output PartialImageLenInBytes. L'applicazione può impostare il valore di PartialImageLenInBytes su 0 per indicare che non esiste alcuna immagine parziale o che l'URI dell'immagine parziale non corrisponde. L'applicazione può scegliere di ignorare questo evento passando al gestore di eventi predefinito. In questo caso, il sistema scarica sempre l'intera immagine firmware disponibile. |
kEvent_Finished
|
Processo di aggiornamento software terminato. Generato quando un controllo degli aggiornamenti software è terminato con o senza errori. I parametri inclusi in questo evento forniscono il motivo dell'errore se il tentativo è terminato a causa di un errore. |
kEvent_PrepareImageStorage
|
Preparati per l'archiviazione di una nuova immagine. Consente all'applicazione di eseguire i passaggi necessari per preparare la memoria locale per il download di una nuova immagine firmware. L'applicazione può usare questo metodo, ad esempio, per cancellare le pagine Flash. L'evento PrepareImageStorage viene generato solo nel caso in cui venga scaricata una nuova immagine firmware. Quando viene ripreso un download interrotto in precedenza, PrepareImageStorage non viene generato. L'applicazione deve segnalare il completamento dell'operazione di preparazione chiamando il metodo L'applicazione può scegliere di ignorare l'evento PrepareImageStorage passando al gestore di eventi predefinito. In questo caso, il sistema passa automaticamente allo stato di download dell'immagine. Per supportare la ripresa di un download interrotto, l'applicazione deve rendere permanente l'URI dell'immagine (fornito come parametro evento) e utilizzarlo durante la gestione degli eventi FetchPartialImageInfo successivi. |
kEvent_PrepareQuery
|
Prepara il messaggio ImageQuery. Generato quando è stato attivato un controllo degli aggiornamenti software. Consente all'applicazione di fornire informazioni relative al prodotto per il messaggio SofwareUpdate:ImageQuery. |
kEvent_PrepareQuery_Metadata
|
Prepara i metadati per la richiesta ImageQuery. Offre all'applicazione l'opportunità di aggiungere metadati aggiuntivi al messaggio SofwareUpdate:ImageQuery, se necessario. Viene generato quando l'implementazione è pronta per ottenere metadati dall'applicazione. |
kEvent_QueryPrepareFailed
|
Errore durante la preparazione di una richiesta ImageQuery. Generato quando l'implementazione rileva un errore durante la preparazione dell'invio di una query di aggiornamento software. |
kEvent_QuerySent
|
La richiesta ImageQuery è stata inviata. Evento informativo per segnalare l'invio di un messaggio SofwareUpdate:ImageQuery. |
kEvent_ReadyToInstall
|
L'immagine è pronta per essere installata. Evento informativo che segnala che l'immagine è pronta per essere installata. Viene generato quando un'immagine ha superato il controllo di integrità. |
kEvent_ResetPartialImageInfo
|
Reimposta lo stato dell'immagine scaricata parzialmente. Consente all'applicazione di cancellare lo stato persistente associato a un'immagine scaricata. Viene generato un evento ResetPartialImageInfo ogni volta che un'immagine scaricata non supera il controllo dell'integrità. Dopo l'elaborazione di un evento ResetPartialImageInfo, i successivi eventi FetchPartialImageInfo devono indicare che non sono disponibili immagini parziali. Tieni presente che, quando gestisci l'evento ResetPartialImageInfo, l'applicazione NON deve cancellare i dati dell'immagine stessa, ma solo le informazioni sullo stato associate all'immagine (ad es. l'URI e la lunghezza parziale dell'immagine). Se l'applicazione non supporta la ripresa del download di immagini, potrebbe ignorare questo evento passando al gestore di eventi predefinito. |
kEvent_SoftwareUpdateAvailable
|
È disponibile un aggiornamento software. Generato quando si riceve una risposta SofwareUpdate:ImageQueryResponse in risposta a una query contenente informazioni sull'aggiornamento disponibile. |
kEvent_StartImageDownload
|
Il download dell'immagine è iniziato. Evento informativo per segnalare l'inizio di una transazione di download di un'immagine. |
kEvent_StartInstallImage
|
Avvia l'installazione dell'immagine. Consente di richiedere che l'applicazione avvii il processo di installazione di un'immagine firmware scaricata. |
kEvent_StoreImageBlock
|
Archivia un blocco di dati immagine. Viene generato ogni volta che viene ricevuto un blocco dati dal server di download del file. I parametri inclusi in questo evento forniscono i dati e la loro durata. Per supportare la ripresa di un download interrotto, l'applicazione deve mantenere un conteggio permanente del numero totale di byte immagine archiviati e utilizzare questo valore durante la gestione degli eventi FetchPartialImageInfo successivi. |
RetryPolicyCallback
void(* RetryPolicyCallback)(void *aAppState, RetryParam &aRetryParam, uint32_t &aOutIntervalMsec)
Stato
State
Classi di amici
Interno::GenericPlatformManagerImpl
friend class Internal::GenericPlatformManagerImpl
Funzioni pubbliche
Interrompi
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 )
Funzioni statiche pubbliche
DefaultEventHandler
void DefaultEventHandler( void *apAppState, EventType aEvent, const InEventParam & aInParam, OutEventParam & aOutParam )
Funzioni protette
SoftwareUpdateManager
SoftwareUpdateManager()=default
SoftwareUpdateManager
SoftwareUpdateManager( const SoftwareUpdateManager & )=delete
SoftwareUpdateManager
SoftwareUpdateManager( const SoftwareUpdateManager && )=delete
operator=
SoftwareUpdateManager & operator=( const SoftwareUpdateManager & )=delete
~SoftwareUpdateManager
~SoftwareUpdateManager()=default