nl:: Weave:: DeviceLayer:: SoftwareUpdateManager
Resumo
Herança
Subclasses conhecidas diretas:nl::Weave::DeviceLayer::SoftwareUpdateManagerImpl
nl::Weave::DeviceLayer::SoftwareUpdateManagerImpl
nl::Weave::DeviceLayer::SoftwareUpdateManagerImpl
Tipos públicos |
|
---|---|
ActionType{
|
enum Quando uma atualização de software está disponível, o aplicativo pode escolher uma das ações a seguir como parte do callback do evento da API SoftwareUpdateAvailable. |
EventCallback)(void *apAppState, EventType aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)
|
typedefvoid(*
|
EventType{
|
enum Eventos de API gerados pelo objeto SoftwareUpdateManager . |
RetryPolicyCallback)(void *aAppState, RetryParam &aRetryParam, uint32_t &aOutIntervalMsec)
|
typedefvoid(*
|
State
|
enum |
Classes de amigos |
|
---|---|
Internal::GenericPlatformManagerImpl
|
friend class
|
Funções públicas |
|
---|---|
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
|
Funções estáticas públicas |
|
---|---|
DefaultEventHandler(void *apAppState, EventType aEvent, const InEventParam & aInParam, OutEventParam & aOutParam)
|
void
|
Funções protegidas |
|
---|---|
SoftwareUpdateManager()=default
|
|
SoftwareUpdateManager(const SoftwareUpdateManager &)=delete
|
|
SoftwareUpdateManager(const SoftwareUpdateManager &&)=delete
|
|
operator=(const SoftwareUpdateManager &)=delete
|
|
~SoftwareUpdateManager()=default
|
|
Estruturas |
|
---|---|
nl:: |
Sindicatos |
|
---|---|
nl:: |
|
nl:: |
Tipos públicos
ActionType
ActionType
Quando uma atualização de software está disponível, o aplicativo pode escolher uma das ações a seguir como parte do callback do evento da API SoftwareUpdateAvailable.
A ação padrão será definida como kAction_Now.
Propriedades | |
---|---|
kAction_ApplicationManaged
|
Permite que o app gerencie o restante das fases de atualização do software, como download, validação da integridade da imagem e instalação. A máquina de estado do gerenciador de atualização de software vai passar para o estado ApplicationManaged. As verificações programadas de atualização de software (se ativadas) vão ser suspensas até que o app cancele a chamada ou a API ImageInstallComplete. |
kAction_DownloadLater
|
Pausar o download ao iniciar. As verificações programadas de atualização de software (se ativadas) serão suspensas. A máquina de estado permanecerá no estado de download. Quando estiver pronto, o aplicativo poderá chamar a API de retomada de download para prosseguir com o download ou chamar "Abort" para cancelar. |
kAction_DownloadNow
|
Inicie o download imediatamente. Um callback de evento da API kEvent_FetchPartialImageInfo será gerado logo em seguida. |
kAction_Ignore
|
Ignora o download por completo. Uma chamada de retorno do evento da API kEvent_Finished é gerada com o erro WEAVE_DEVICE_ERROR_Software_UPDATE_CANCELLED se essa opção for selecionada e a lógica de repetição não for invocada. |
EventCallback
void(* EventCallback)(void *apAppState, EventType aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)
EventType
EventType
Eventos de API gerados pelo objeto SoftwareUpdateManager
.
Propriedades | |
---|---|
kEvent_ComputeImageIntegrity
|
Calcule um valor de verificação de integridade da imagem. Solicita que o aplicativo calcule um valor de verificação de integridade sobre a imagem transferida por download. Gerado após a conclusão do download. |
kEvent_DefaultCheck
|
Verifique o comportamento de manipulação de eventos padrão. Usado para verificar o gerenciamento correto de eventos padrão no aplicativo. Os aplicativos NÃO devem processar este evento. |
kEvent_FetchPartialImageInfo
|
Busca informações de estado persistido de uma imagem parcialmente transferida por download. Oferece uma oportunidade para o aplicativo divulgar informações de uma imagem parcial transferida anteriormente para que o download possa continuar do ponto em que foi interrompido. O URI da atualização de software disponível é fornecido como um parâmetro de entrada que o aplicativo pode usar para comparar se a imagem que está sendo transferida por download é igual à imagem parcial. Espera-se que o aplicativo retorne o tamanho da imagem parcial no parâmetro de saída PartialImageLenInBytes. O aplicativo pode definir o valor de PartialImageLenInBytes como 0 para indicar que não há uma imagem parcial ou que o URI da imagem parcial não corresponde. O aplicativo pode optar por ignorar esse evento passando-o para o manipulador de eventos padrão. Se isso for feito, o sistema sempre fará o download de toda a imagem de firmware disponível. |
kEvent_Finished
|
O processo de atualização do software foi concluído. Gerado quando uma verificação de atualização de software é concluída com ou sem erros. Os parâmetros incluídos nesse evento informam o motivo da falha se a tentativa for concluída devido a uma falha. |
kEvent_PrepareImageStorage
|
Preparar o armazenamento de uma nova imagem. Solicita que o aplicativo execute as etapas necessárias para preparar o armazenamento local para o download de uma nova imagem de firmware. O aplicativo pode usar isso, por exemplo, para apagar páginas em Flash. O evento PrepareImageStorage é gerado apenas quando uma nova imagem de firmware está sendo transferida por download. Quando um download interrompido anteriormente é retomado, o PrepareImageStorage não é gerado. O aplicativo precisa sinalizar a conclusão da operação de preparação chamando o método O aplicativo pode optar por ignorar o evento PrepareImageStorage passando-o para o manipulador de eventos padrão. Se isso for feito, o sistema vai prosseguir automaticamente para o estado de download da imagem. Para oferecer suporte à retomada de um download interrompido, o aplicativo deve manter o URI da imagem (fornecido como um parâmetro de evento) e usá-lo ao manipular eventos FetchPartialImageInfo subsequentes. |
kEvent_PrepareQuery
|
Preparar mensagem ImageQuery. Gerado quando uma verificação de atualização de software é acionada. Oferece uma oportunidade para o aplicativo fornecer informações relacionadas ao produto para a mensagem SofwareUpdate:ImageQuery. |
kEvent_PrepareQuery_Metadata
|
Preparar metadados para solicitação de ImageQuery. Oferece uma oportunidade para o aplicativo anexar metadados adicionais à mensagem SofwareUpdate:ImageQuery, se necessário. Gerado quando a implementação está pronta para receber metadados do aplicativo. |
kEvent_QueryPrepareFailed
|
Erro ao preparar uma solicitação ImageQuery. Gerada quando a implementação encontra um erro ao preparar o envio de uma consulta de atualização de software. |
kEvent_QuerySent
|
A solicitação ImageQuery foi enviada. Evento informativo para sinalizar que uma mensagem SofwareUpdate:ImageQuery foi enviada. |
kEvent_ReadyToInstall
|
A imagem está pronta para ser instalada. Evento informativo para sinalizar que a imagem está pronta para ser instalada. Gerado quando uma imagem é aprovada na verificação de integridade. |
kEvent_ResetPartialImageInfo
|
Redefinir o estado da imagem transferida por download parcialmente. Solicita que o aplicativo esqueça o estado persistido associado a uma imagem transferida por download. Um evento ResetPartialImageInfo é gerado sempre que uma imagem transferida por download falha na verificação de integridade. Depois que um eventoResetPartialImageInfo for processado, os eventos FetchPartialImageInfo subsequentes indicarão que nenhuma imagem parcial está disponível. Ao processar o evento ResetPartialImageInfo, o aplicativo NÃO precisa limpar os dados da imagem, somente as informações de estado associadas à imagem (ou seja, o URI e o comprimento parcial da imagem). Se o aplicativo não for compatível com a retomada do download de imagens, ele poderá ignorar esse evento passando-o para o manipulador de eventos padrão. |
kEvent_SoftwareUpdateAvailable
|
Atualização do software disponível. Gerado quando uma SofwareUpdate:ImageQueryResponse é recebida em resposta a uma consulta contendo informações sobre a atualização disponível. |
kEvent_StartImageDownload
|
O download da imagem foi iniciado. Evento informativo para sinalizar o início de uma transação de download de imagem. |
kEvent_StartInstallImage
|
Inicie a instalação da imagem. Solicita que o aplicativo seja o processo de instalação de uma imagem de firmware baixada. |
kEvent_StoreImageBlock
|
Armazene um bloco de dados de imagem. Gerado sempre que um bloco de dados é recebido do servidor de download de arquivos. Os parâmetros incluídos nesse evento fornecem os dados e o tamanho deles. Para dar suporte à retomada de um download interrompido, o aplicativo precisa manter uma contagem persistente do número total de bytes da imagem armazenados e usar esse valor ao processar eventos FetchPartialImageInfo subsequentes. |
RetryPolicyCallback
void(* RetryPolicyCallback)(void *aAppState, RetryParam &aRetryParam, uint32_t &aOutIntervalMsec)
Estado
State
Classes de amigos
Interno::GenericPlatformManagerImpl
friend class Internal::GenericPlatformManagerImpl
Funções públicas
Cancelar
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 )
Funções estáticas públicas
DefaultEventHandler
void DefaultEventHandler( void *apAppState, EventType aEvent, const InEventParam & aInParam, OutEventParam & aOutParam )
Funções protegidas
SoftwareUpdateManager
SoftwareUpdateManager()=default
SoftwareUpdateManager
SoftwareUpdateManager( const SoftwareUpdateManager & )=delete
SoftwareUpdateManager
SoftwareUpdateManager( const SoftwareUpdateManager && )=delete
operador=
SoftwareUpdateManager & operator=( const SoftwareUpdateManager & )=delete
~SoftwareUpdateManager
~SoftwareUpdateManager()=default