nl::Weave::Profiles::SoftwareUpdate::ImageQueryResponse

#include <src/lib/profiles/software-update/SoftwareUpdateProfile.h>

Resim sorgusu yanıt mesajlarının oluşturulmasını ve kodunun çözülmesini destekleyen bir sınıf.

Özet

Resim sorgusu yanıt iletisi şu biçimdedir:

Uzunluk Alan adı
değişken URI
değişken Sürüm özellikleri
değişken Bütünlük spesifikasyonu
1 bayt Şemayı güncelle
1 bayt Güncelleme seçenekleri
(İsteğe bağlı) güncelleme seçenekleri alanının biçimi aşağıdaki gibidir:

Keser Anlamı
0..2 Güncelleme önceliği
3..4 Durumu güncelle
5 Rapor durumu. Ayarlandığında istemcinin isteğe bağlı DownloadReporting ve UpdateReporting mesajlarını oluşturması istenir.
5..7 Rezervasyon yapıldı
Resim sorgusu yanıtı, yalnızca resim sorgusunun başarıyla işlendiği ve indirilecek bir görüntü oluşturduğu durumda gönderilir. Bu mesaj, sorguyu gönderilen düğüm için indirme talimatları oluşturur. Sunucunun resim sorgusunu işleyememesi durumunda bir resim sorgusu durumu oluşturacağını unutmayın.

Oluşturucular ve Yıkıcılar

ImageQueryResponse()
ImageQueryResponse için varsayılan oluşturucu.

Herkese açık özellikler

integritySpec
Yazılım güncellemesi görüntüsünün bütünlük bilgilerini (bütünlük türü ve karma) içeren bir alan.
reportStatus
bool
İsteğe bağlı DownloadReporting ve UpdateReporting mesajları aracılığıyla sunucuyu yazılım güncellemesinin ilerleme durumu hakkında bilgilendirme isteğinde bulunun.
updateCondition
Yazılım güncelleme işlemine devam edilecek koşullara ilişkin talimatlar.
updatePriority
Yazılım güncellemesinin ne zaman yapılacağını gösteren talimatlar.
updateScheme
uint8_t
Yazılım güncelleme görüntüsünü indirmek için kullanılacak güncelleme şeması.
uri
Yazılım görüntüsünün konumunu içeren, değişken uzunlukta bir UTF-8 dizesi.
versionSpec
Tedarikçi firmaya özel bir yazılım sürümü kimliği içeren, değişken uzunlukta UTF-8 dizesi.

Herkese açık işlevler

init(ReferencedString &, ReferencedString &, IntegritySpec &, uint8_t, UpdatePriority, UpdateCondition, bool)
ImageQueryResponse nesnesini, sağlanan değerlerle açık bir şekilde başlatın.
operator==(const ImageQueryResponse &) const
bool
Eşitlik operatörü.
pack(PacketBuffer *)
ImageQueryResponse öğesini, sağlanan PaketetBuffer'da serileştirin.
print(void)
void

Herkese açık statik işlevler

parse(PacketBuffer *, ImageQueryResponse &)
PacketBuffer'da sağlanan resim sorgusu yanıt mesajının serisini kaldırarak, sağlanan bir ImageQueryResponse oluşturun.

Herkese açık özellikler

integritySpec

IntegritySpec integritySpec

Yazılım güncellemesi görüntüsünün bütünlük bilgilerini (bütünlük türü ve karma) içeren bir alan.

reportStatus

bool reportStatus

İsteğe bağlı DownloadReporting ve UpdateReporting mesajları aracılığıyla sunucuyu yazılım güncellemesinin ilerleme durumu hakkında bilgilendirme isteğinde bulunun.

updateCondition

UpdateCondition updateCondition

Yazılım güncelleme işlemine devam edilecek koşullara ilişkin talimatlar.

updatePriority

UpdatePriority updatePriority

Yazılım güncellemesinin ne zaman yapılacağını gösteren talimatlar.

updateScheme

uint8_t updateScheme

Yazılım güncelleme görüntüsünü indirmek için kullanılacak güncelleme şeması.

Değeri UpdateSchemes'ten alınır.

Uri

ReferencedString uri

Yazılım görüntüsünün konumunu içeren, değişken uzunlukta bir UTF-8 dizesi.

Bu dizenin içeriği, RFC 3986 spesifikasyonuna uygun olmalıdır. İyi tanımlanmış bir İnternet Protokolü'ne (HTTP, HTTPS, SFTP) karşılık gelen güncelleme şemaları için URI'nın şema öğesinin, söz konusu protokol şemasının standart URL kodlamasına uygun olması ZORUNLUDUR. Dize uzunluğu 65565'i geçmemeli ve dize, MTU sınırlamalarına tabi olabilecek tek bir Weave mesajına sığmalıdır.

versionSpec

ReferencedString versionSpec

Tedarikçi firmaya özel bir yazılım sürümü kimliği içeren, değişken uzunlukta UTF-8 dizesi.

Dize uzunluğu 256 baytı aşmamalıdır.

Herkese açık işlevler

ImageQueryResponse

 ImageQueryResponse()

ImageQueryResponse için varsayılan oluşturucu.

ImageQueryResponse, init() yöntemi aracılığıyla veya bir iletideki nesnenin seri durumdan çıkarılarak doldurulabilir.

init

WEAVE_ERROR init(
  ReferencedString &,
  ReferencedString &,
  IntegritySpec &,
  uint8_t,
  UpdatePriority,
  UpdateCondition,
  bool
)

ImageQueryResponse nesnesini, sağlanan değerlerle açık bir şekilde başlatın.

Ayrıntılar
Parametreler
[in] aUri
Yeni donanım yazılımı görüntüsünün bulunacağı URI.
[in] aVersion
Bu görsel için sürüm dizesi.
[in] aIntegrity
Yeni görüntüye karşılık gelen bütünlük özellikleri.
[in] aScheme
İndirme işleminde kullanılacak güncelleme şeması.
[in] aPriority
Bu güncellemeyle ilişkili güncelleme önceliği.
[in] aCondition
Güncellenecek koşul.
[in] aReportStatus
True (doğru) değerine ayarlanırsa istemciden indirme ve güncelleme sonrasında rapor oluşturması istenirse istemci rapor vermez.
İadeler
Koşulsuz olarak WEAVE_NO_ERROR.

operatör==

bool operator==(
  const ImageQueryResponse &
) const 

Eşitlik operatörü.

Ayrıntılar
Parametreler
another
Bu ImageQueryResponse ile karşılaştırılacak ImageQueryResponse
İadeler
her iki nesnedeki tüm alanlar eşitse true, değilse false

paket

WEAVE_ERROR pack(
  PacketBuffer *
)

ImageQueryResponse öğesini, sağlanan PaketetBuffer'da serileştirin.

Ayrıntılar
Parametreler
[in] aBuffer
Sorgu yanıtının paketleneceği paket tamponu
Değerleri Döndür
WEAVE_NO_ERROR
Başarıya merhaba.
WEAVE_ERROR_BUFFER_TOO_SMALL
ImageQueryResponse, sağlanan arabelleğe sığmayacak kadar büyükse.

yazdır

void print(
  void
)

Herkese açık statik işlevler

parse

WEAVE_ERROR parse(
  PacketBuffer *,
  ImageQueryResponse &
)

PacketBuffer'da sağlanan resim sorgusu yanıt mesajının seri durumunu, sağlanan ImageQueryResponse biçiminde kaldırın.

Ayrıntılar
Parametreler
[in] aBuffer
Görüntü sorgusunun ayrıştırılacağı paket işaretçisi
[in] aResponse
Sonucun yerleştirileceği nesne
İadeler
WEAVE_NO_ERROR Başarıyla tamamlandı
İadeler
WEAVE_ERROR_BUFFER_TOO_SMALL İleti, ImageQuery'deki tüm alanları içermeyecek kadar küçükse
İadeler
WEAVE_ERROR_INVALID_INTEGRITY_TYPE Sağlanan bütünlük türü, IntegrityTypes özelliğinde belirtilen değerlerden biri değilse