nl:: Weave:: Geräteschicht:: SoftwareUpdateManager
Fazit
Übernahme
Direkt bekannte untergeordnete Klassen:nl::Weave::DeviceLayer::SoftwareUpdateManagerImpl
nl::Weave::DeviceLayer::SoftwareUpdateManagerImpl
nl::Weave::DeviceLayer::SoftwareUpdateManagerImpl
Öffentliche Typen |
|
---|---|
ActionType{
|
enum Wenn ein Softwareupdate verfügbar ist, kann die Anwendung im Rahmen des SoftwareUpdateAvailable API-Ereignis-Callbacks eine der folgenden Aktionen auswählen. |
EventCallback)(void *apAppState, EventType aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)
|
Typdefvoid(*
|
EventType{
|
enum Vom SoftwareUpdateManager -Objekt generierte API-Ereignisse |
RetryPolicyCallback)(void *aAppState, RetryParam &aRetryParam, uint32_t &aOutIntervalMsec)
|
Typdefvoid(*
|
State
|
enum |
Kurse von Freunden |
|
---|---|
Internal::GenericPlatformManagerImpl
|
friend class
|
Öffentliche Funktionen |
|
---|---|
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
|
Öffentliche statische Funktionen |
|
---|---|
DefaultEventHandler(void *apAppState, EventType aEvent, const InEventParam & aInParam, OutEventParam & aOutParam)
|
void
|
Geschützte Funktionen |
|
---|---|
SoftwareUpdateManager()=default
|
|
SoftwareUpdateManager(const SoftwareUpdateManager &)=delete
|
|
SoftwareUpdateManager(const SoftwareUpdateManager &&)=delete
|
|
operator=(const SoftwareUpdateManager &)=delete
|
|
~SoftwareUpdateManager()=default
|
|
Strebenklemmen |
|
---|---|
nl:: |
Gewerkschaften |
|
---|---|
nl:: |
|
nl:: |
Öffentliche Typen
Aktionstyp
ActionType
Wenn ein Softwareupdate verfügbar ist, kann die Anwendung im Rahmen des SoftwareUpdateAvailable API-Ereignis-Callbacks eine der folgenden Aktionen auswählen.
Die Standardaktion ist „kAction_Now“.
Attribute | |
---|---|
kAction_ApplicationManaged
|
Ermöglicht der App, die restlichen Phasen der Softwareupdates zu verwalten, zum Beispiel den Download, die Validierung der Image-Integrität und die Installation Der Statusstatus des Software-Update-Managers wird in den Status „ApplicationManaged“ verschoben. Geplante Softwareupdate-Prüfungen (sofern aktiviert) werden ausgesetzt, bis die Anwendung die Abort API oder die ImageInstallComplete API aufruft. |
kAction_DownloadLater
|
Download beim Start pausieren. Geplante Software-Updateüberprüfungen (sofern aktiviert) werden gesperrt. Zustandsgerät bleibt im Downloadstatus. Wenn die Anwendung bereit ist, kann sie die Lebenslauf-Download-API aufrufen, um den Download fortzusetzen, oder den Vorgang abbrechen. |
kAction_DownloadNow
|
Starten Sie den Download sofort. Im Anschluss wird ein kEvent_FetchPartialImageInfo API-Ereignis-Callback generiert. |
kAction_Ignore
|
Der Download wird dann vollständig ignoriert. Ein kEvent_Finished API-Ereignis-Callback wird mit dem Fehler WEAVE_DEVICE_ERROR_SOFTWARE_UPDATE_cancelLED generiert, wenn diese Option ausgewählt ist und die Wiederholungslogik nicht aufgerufen wird. |
Ereignis-Callback
void(* EventCallback)(void *apAppState, EventType aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)
EventType
EventType
Vom SoftwareUpdateManager
-Objekt generierte API-Ereignisse
Attribute | |
---|---|
kEvent_ComputeImageIntegrity
|
Berechnen Sie einen Wert für die Image-Integritätsprüfung. Fordert die Anwendung auf, einen Integritätsprüfungswert für das heruntergeladene Image zu berechnen. Wird generiert, sobald der Download abgeschlossen ist. |
kEvent_DefaultCheck
|
Prüfen Sie das Standardverhalten bei der Verarbeitung von Ereignissen. Wird verwendet, um die korrekte standardmäßige Ereignisverarbeitung in der Anwendung zu prüfen. Apps dürfen dieses Ereignis NICHT verarbeiten. |
kEvent_FetchPartialImageInfo
|
Informationen zum beibehaltenen Status für ein teilweise heruntergeladenes Bild abrufen. Ermöglicht der App, Informationen eines teilweise heruntergeladenen Bildes offenzulegen, um den Download an der Stelle fortzusetzen, an der er zuletzt angehalten wurde Der URI des verfügbaren Softwareupdates wird als Eingabeparameter bereitgestellt, mit dem die Anwendung vergleichen kann, ob das heruntergeladene Bild mit dem Teilbild identisch ist. Für die Anwendung wird erwartet, dass sie die Länge des Teilbilds im Ausgabeparameter "PartialImageLenInBytes" zurückgibt. In der Anwendung kann der Wert von PartialImageLenInBytes auf 0 gesetzt werden, um anzugeben, dass kein Teilbild vorhanden ist oder der URI des Teilbilds nicht übereinstimmt. Die Anwendung kann dieses Ereignis ignorieren, indem sie es an den Standard-Event-Handler übergibt. Wenn Sie dies tun, lädt das System immer das gesamte verfügbare Firmware-Image herunter. |
kEvent_Finished
|
Die Software-Update wurde abgeschlossen. Wird generiert, wenn eine Prüfung auf Softwareupdates mit oder ohne Fehler abgeschlossen wurde. Parameter für dieses Ereignis geben den Grund für den Fehler an, wenn der Versuch aufgrund eines Fehlers abgeschlossen wurde. |
kEvent_PrepareImageStorage
|
Bereiten Sie sich auf das Speichern eines neuen Bildes vor. Fordert die Anwendung auf, alle erforderlichen Schritte auszuführen, um den lokalen Speicher für den Download eines neuen Firmware-Images vorzubereiten. Die Anwendung kann damit beispielsweise Flash-Seiten löschen. Das PrepareImageStorage-Ereignis wird nur dann generiert, wenn ein neues Firmware-Image heruntergeladen wird. Wenn ein zuvor unterbrochener Download fortgesetzt wird, wird kein PrepareImageStorage generiert. Die Anwendung muss den Abschluss des Vorbereitungsvorgangs durch Aufrufen der Die Anwendung kann das Ereignis „PrepareImageStorage“ ignorieren, indem es an den Standard-Handler für Ereignisse übergeben wird. In diesem Fall fährt das System automatisch mit dem Downloadstatus des Bildes fort. Damit ein unterbrochener Download fortgesetzt werden kann, sollte die Anwendung den Image-URI (als Ereignisparameter bereitgestellt) beibehalten und diesen Wert bei der Verarbeitung zukünftiger FetchPartialImageInfo-Ereignisse verwenden. |
kEvent_PrepareQuery
|
Bereiten Sie die ImageQuery-Nachricht vor. Wird ausgelöst, wenn eine Prüfung auf Softwareupdates ausgelöst wurde. Bietet der Anwendung die Möglichkeit, der SofwareUpdate:ImageQuery-Nachricht produktbezogene Informationen bereitzustellen |
kEvent_PrepareQuery_Metadata
|
Bereiten Sie Metadaten für die ImageQuery-Anfrage vor. Bietet der Anwendung die Möglichkeit, bei Bedarf weitere Meta-Daten an die Nachricht „SofwareUpdate:ImageQuery“ anzuhängen. Wird generiert, wenn die Implementierung zum Abrufen von Metadaten aus der Anwendung bereit ist. |
kEvent_QueryPrepareFailed
|
Fehler beim Vorbereiten einer ImageQuery-Anfrage. Wird generiert, wenn bei der Implementierung ein Fehler auftritt, während die Anfrage zum Senden eines Softwareupdates vorbereitet wird. |
kEvent_QuerySent
|
ImageQuery-Anfrage wurde gesendet. Informatives Ereignis, das signalisiert, dass eine Nachricht „SofwareUpdate:ImageQuery“ gesendet wurde |
kEvent_ReadyToInstall
|
Image kann installiert werden. Ein Informationsereignis, das signalisiert, dass das Image installiert werden kann. Wird erstellt, wenn ein Bild die Integritätsprüfung bestanden hat. |
kEvent_ResetPartialImageInfo
|
Status des teilweise heruntergeladenen Bildes zurücksetzen. Fordert die Anwendung an, den beibehaltenen Status zu entfernen, der mit einem heruntergeladenen Bild verknüpft ist Ein „ResetPartialImageInfo“-Ereignis wird generiert, wenn ein heruntergeladenes Bild seine Integritätsprüfung nicht besteht. Nachdem ein ResetPartialImageInfo-Ereignis verarbeitet wurde, sollten nachfolgende FetchPartialImageInfo-Ereignisse darauf hinweisen, dass kein Teilbild verfügbar ist. Beachten Sie, dass bei der Verarbeitung des ResetPartialImageInfo-Ereignisses die Anwendung NICHT dazu benötigt wird, die Bilddaten selbst zu löschen, sondern nur die mit dem Bild verknüpften Statusinformationen, d.h. den URI und die teilweise Bildlänge. Wenn die Anwendung die Wiederaufnahme von Bildern nicht unterstützt, wird dieses Ereignis ignoriert. Dazu wird es an den Standard-Event-Handler übergeben. |
kEvent_SoftwareUpdateAvailable
|
Softwareupdate ist verfügbar. Wird generiert, wenn ein SofwareUpdate:ImageQueryResponse als Antwort auf eine Abfrage empfangen wird, die Informationen zum verfügbaren Update enthält. |
kEvent_StartImageDownload
|
Download des Bildes hat begonnen. Informationsereignis, das den Beginn einer Bilddownload-Transaktion signalisiert. |
kEvent_StartInstallImage
|
Starten Sie die Installation des Images. Beantragt die Anwendung als Installation eines heruntergeladenen Firmware-Images |
kEvent_StoreImageBlock
|
Speichern Sie einen Block von Bilddaten. Wird generiert, wenn ein Datenblock vom Dateidownloadserver empfangen wird. Parameter für dieses Ereignis enthalten die Daten und die Länge der Daten. Damit ein Download unterbrochen werden kann, sollte die Anwendung eine dauerhafte Anzahl von gespeicherten Bildbytes beibehalten und diesen Wert bei der Verarbeitung zukünftiger FetchPartialImageInfo-Ereignisse verwenden. |
Wiederholung – Richtlinienrückruf
void(* RetryPolicyCallback)(void *aAppState, RetryParam &aRetryParam, uint32_t &aOutIntervalMsec)
Status
State
Kurse von Freunden
Intern::GenericPlatformManagerImpl
friend class Internal::GenericPlatformManagerImpl
Öffentliche Funktionen
Abbrechen
WEAVE_ERROR Abort( void )
Jetzt prüfen
WEAVE_ERROR CheckNow( void )
GetState
State GetState( void )
ImageInstallComplete
WEAVE_ERROR ImageInstallComplete( WEAVE_ERROR aError )
In Bearbeitung
bool IsInProgress( void )
ReadyImageStorageComplete
WEAVE_ERROR PrepareImageStorageComplete( WEAVE_ERROR aError )
SetEventCallback
WEAVE_ERROR SetEventCallback( void *const aAppState, const EventCallback aEventCallback )
SetQueryIntervall-Fenster
WEAVE_ERROR SetQueryIntervalWindow( uint32_t aMinWaitTimeMs, uint32_t aMaxWaitTimeMs )
SetRetryPolicyCallback festlegen
void SetRetryPolicyCallback( const RetryPolicyCallback aRetryPolicyCallback )
Öffentliche statische Funktionen
Standard-EventHandler
void DefaultEventHandler( void *apAppState, EventType aEvent, const InEventParam & aInParam, OutEventParam & aOutParam )
Geschützte Funktionen
Software-Update-Manager
SoftwareUpdateManager()=default
Software-Update-Manager
SoftwareUpdateManager( const SoftwareUpdateManager & )=delete
Software-Update-Manager
SoftwareUpdateManager( const SoftwareUpdateManager && )=delete
Operator=
SoftwareUpdateManager & operator=( const SoftwareUpdateManager & )=delete
~SoftwareUpdateManager
~SoftwareUpdateManager()=default