nl:: örgü:: WeaveExchangeYöneticisi

#include <src/lib/core/WeaveExchangeMgr.h>

Bu sınıf, ExchangeContext'leri diğer Weave düğümleriyle yönetmek için kullanılır.

Özet

Daha yüksek katmanlar adına çalışır, ExchangeContexts oluşturur ve istenmeyen mesaj işleyicilerinin kaydını/kaydının kaldırılmasını yönetir.

Yapıcılar ve Yıkıcılar

WeaveExchangeManager (void)
İçin Oluşturucu WeaveExchangeManager sınıfına.

Genel türler

State {
kState_NotInitialized = 0,
kState_Initialized = 1
}
Sıralama

Genel özellikler

FabricState
[SADECE OKUYUN] İlişkili FabricState nesnesi.
MessageLayer
[SALT] ilişkili WeaveMessageLayer nesnesi.
State
uint8_t
[Salt okunur] Durum WeaveExchangeManager nesne.

Kamu işlevleri

AllowUnsolicitedMessages ( WeaveConnection *con)
void
Belirtilen bağlantıda istenmeyen iletilerin alınmasına izin verin.
ClearMsgCounterSyncReq (uint64_t peerNodeId)
void
Bu eşe gönderilen tüm bekleyen iletiler için MsgCounterSyncReq bayrağını temizleyin.
FindContext (uint64_t peerNodeId, WeaveConnection *con, void *appState, bool isInitiator)
Bul ExchangeContext parametrelerin belirli bir set eşleşen bir havuzdan.
Init ( WeaveMessageLayer *msgLayer)
Initialize WeaveExchangeManager nesnesi.
NewBinding (Binding::EventCallback eventCallback, void *appState)
Yeni ayır Cilt verilen argümanlarla.
NewContext (const uint64_t & peerNodeId, void *appState)
Yeni oluşturur ExchangeContext eş düğüm tanımlayıcısı belirtilen bir eş Örgü düğüm ile.
NewContext (const uint64_t & peerNodeId, const IPAddress & peerAddr, void *appState)
Yeni bir oluşturur ExchangeContext akran düğüm tanımlayıcı ve akran IP adresi tarafından belirlenen belirli bir akran Dokuma düğümle.
NewContext (const uint64_t & peerNodeId, const IPAddress & peerAddr, uint16_t peerPort, InterfaceId sendIntfId, void *appState)
Yeni bir oluşturur ExchangeContext Belirlenen arabirimde akran düğüm tanıtıcısı, akran IP adresi ve hedef port tarafından belirtilen belirli bir akran Dokuma düğümle.
NewContext ( WeaveConnection *con, void *appState)
Yeni bir oluşturur ExchangeContext Belirtilen üzerinde verilen bir akran Dokuma düğümle WeaveConnection .
RegisterUnsolicitedMessageHandler (uint32_t profileId, ExchangeContext::MessageReceiveFunct handler, void *appState)
Belirli bir profil tanımlayıcısı için istenmeyen bir mesaj işleyicisi kaydedin.
RegisterUnsolicitedMessageHandler (uint32_t profileId, ExchangeContext::MessageReceiveFunct handler, bool allowDups, void *appState)
Belirli bir profil tanımlayıcısı için istenmeyen bir mesaj işleyicisi kaydedin.
RegisterUnsolicitedMessageHandler (uint32_t profileId, uint8_t msgType, ExchangeContext::MessageReceiveFunct handler, void *appState)
Belirli bir profil tanımlayıcısı ve mesaj türü için istenmeyen bir mesaj işleyicisi kaydedin.
RegisterUnsolicitedMessageHandler (uint32_t profileId, uint8_t msgType, ExchangeContext::MessageReceiveFunct handler, bool allowDups, void *appState)
Belirli bir profil tanımlayıcısı ve mesaj türü için istenmeyen bir mesaj işleyicisi kaydedin.
RegisterUnsolicitedMessageHandler (uint32_t profileId, uint8_t msgType, WeaveConnection *con, ExchangeContext::MessageReceiveFunct handler, void *appState)
Belirli bir Weave bağlantısında belirli bir profil tanımlayıcısı, mesaj türü için istenmeyen bir mesaj işleyicisini kaydedin.
RegisterUnsolicitedMessageHandler (uint32_t profileId, uint8_t msgType, WeaveConnection *con, ExchangeContext::MessageReceiveFunct handler, bool allowDups, void *appState)
Belirli bir Weave bağlantısında belirli bir profil tanımlayıcısı, mesaj türü için istenmeyen bir mesaj işleyicisini kaydedin.
Shutdown (void)
UnregisterUnsolicitedMessageHandler (uint32_t profileId)
Belirli bir profil tanımlayıcısı için istenmeyen ileti işleyicisinin kaydını iptal edin.
UnregisterUnsolicitedMessageHandler (uint32_t profileId, uint8_t msgType)
Belirli bir profil tanımlayıcısı ve mesaj türü için istenmeyen bir mesaj işleyicisinin kaydını iptal edin.
UnregisterUnsolicitedMessageHandler (uint32_t profileId, uint8_t msgType, WeaveConnection *con)
Belirli bir profil tanımlayıcısı, mesaj türü ve Örgü bağlantısı için istenmeyen bir mesaj işleyicisinin kaydını kaldırın.

Genel türler

Durum

 State
Özellikleri
kState_Initialized

Belirtmek için kullanılır WeaveExchangeManager başlatılır.

kState_NotInitialized

Belirtmek için kullanılır WeaveExchangeManager başlatılmadı.

Genel özellikler

KumaşDurumu

WeaveFabricState * FabricState

[SADECE OKUYUN] İlişkili FabricState nesnesi.

Mesaj Katmanı

WeaveMessageLayer * MessageLayer

[SALT] ilişkili WeaveMessageLayer nesnesi.

Durum

uint8_t State

[Salt okunur] Durum WeaveExchangeManager nesne.

Kamu işlevleri

İstenmeyen Mesajlara İzin Ver

void AllowUnsolicitedMessages(
  WeaveConnection *con
)

Belirtilen bağlantıda istenmeyen iletilerin alınmasına izin verin.

Bu yöntem, verilen Weave bağlantısında mesaj alma işleyicisini ayarlar.

Ayrıntılar
parametreler
[in] con
Örgü bağlantı nesnesine bir işaretçi.

ClearMsgCounterSyncReq

void ClearMsgCounterSyncReq(
  uint64_t peerNodeId
)

Bu eşe gönderilen tüm bekleyen iletiler için MsgCounterSyncReq bayrağını temizleyin.

Ayrıntılar
parametreler
[in] peerNodeId
Hedef düğümün düğüm kimliği.

FindContext

ExchangeContext * FindContext(
  uint64_t peerNodeId,
  WeaveConnection *con,
  void *appState,
  bool isInitiator
)

Bul ExchangeContext parametrelerin belirli bir set eşleşen bir havuzdan.

Ayrıntılar
parametreler
[in] peerNodeId
Hangi akran nod belirleyici ExchangeContext oluşturulmuştur.
[in] con
Bir işaretçi WeaveConnection eş TCP bağlantıyı temsil eden nesne.
[in] appState
Bağlam durumunu tutan daha yüksek bir katman nesnesine işaretçi.
[in] isInitiator
Yerel düğümün değiş tokuşun başlatıcısı olup olmadığının Boole göstergesi.
İadeler
A işaretçi ExchangeContext hiçbir maç sağlanan başarının üzerine parametreleri, NULL eşleşen nesne.

İçinde

WEAVE_ERROR Init(
  WeaveMessageLayer *msgLayer
)

Initialize WeaveExchangeManager nesnesi.

Bu örneğin ömrü içinde, nesnenin oluşturulmasından sonra, örneği sonlandırmak için bir Kapatma çağrısı yapılana kadar bu yöntem bir kez çağrılır.

Ayrıntılar
parametreler
[in] msgLayer
Bir işaretçi WeaveMessageLayer nesne.
Dönüş Değerleri
WEAVE_ERROR_INCORRECT_STATE
Durum, kState_NotInitialized değerine eşit değilse.
WEAVE_NO_ERROR
Başarı üzerine.

YeniBinding

Binding * NewBinding(
  Binding::EventCallback eventCallback,
  void *appState
)

Yeni ayır Cilt verilen argümanlarla.

Ayrıntılar
parametreler
[in] eventCallback
Olay geri çağırma için kullanılacak bir işlev işaretçisi
[in] appState
Daha sonra olay geri aramasında taşınacak bazı bağlamlara yönelik bir işaretçi
İadeler
Bir yeni ayrılan göstericisi Bağlama veya BOŞ havuzu tükendiğini eğer

YeniBağlam

ExchangeContext * NewContext(
  const uint64_t & peerNodeId,
  void *appState
)

Yeni oluşturur ExchangeContext eş düğüm tanımlayıcısı belirtilen bir eş Örgü düğüm ile.

Ayrıntılar
parametreler
[in] peerNodeId
Hangi akran nod belirleyici ExchangeContext ayarlanıyor.
[in] appState
Bağlam durumunu tutan daha yüksek bir katman nesnesine işaretçi.
İadeler
Oluşturulan bir gösterici ExchangeContext Başarı durumunda nesne. Aksi takdirde, herhangi bir nesne tahsis edilemiyorsa veya mevcut değilse NULL.

YeniBağlam

ExchangeContext * NewContext(
  const uint64_t & peerNodeId,
  const IPAddress & peerAddr,
  void *appState
)

Yeni bir oluşturur ExchangeContext akran düğüm tanımlayıcı ve akran IP adresi tarafından belirlenen belirli bir akran Dokuma düğümle.

Ayrıntılar
parametreler
[in] peerNodeId
Hangi akran nod belirleyici ExchangeContext ayarlanıyor.
[in] peerAddr
Eş düğümün IP adresi.
[in] appState
Bağlam durumunu tutan daha yüksek bir katman nesnesine işaretçi.
İadeler
Oluşturulan bir gösterici ExchangeContext Başarı durumunda nesne. Aksi takdirde, herhangi bir nesne tahsis edilemiyorsa veya mevcut değilse NULL.

YeniBağlam

ExchangeContext * NewContext(
  const uint64_t & peerNodeId,
  const IPAddress & peerAddr,
  uint16_t peerPort,
  InterfaceId sendIntfId,
  void *appState
)

Yeni bir oluşturur ExchangeContext Belirlenen arabirimde akran düğüm tanıtıcısı, akran IP adresi ve hedef port tarafından belirtilen belirli bir akran Dokuma düğümle.

Ayrıntılar
parametreler
[in] peerNodeId
Hangi akran nod belirleyici ExchangeContext ayarlanıyor.
[in] peerAddr
Eş düğümün IP adresi.
[in] peerPort
Eş düğümün bağlantı noktası.
[in] sendIntfId
Bu değiş tokuşta Weave mesajları göndermek için kullanılacak arayüz.
[in] appState
Bağlam durumunu tutan daha yüksek bir katman nesnesine işaretçi.
İadeler
Oluşturulan bir gösterici ExchangeContext Başarı durumunda nesne. Aksi takdirde, herhangi bir nesne tahsis edilemiyorsa veya mevcut değilse NULL.

YeniBağlam

ExchangeContext * NewContext(
  WeaveConnection *con,
  void *appState
)

Yeni bir oluşturur ExchangeContext Belirtilen üzerinde verilen bir akran Dokuma düğümle WeaveConnection .

Ayrıntılar
parametreler
[in] con
Bir işaretçi WeaveConnection eş TCP bağlantıyı temsil eden nesne.
[in] appState
Bağlam durumunu tutan daha yüksek bir katman nesnesine işaretçi.
İadeler
Oluşturulan bir gösterici ExchangeContext Başarı durumunda nesne. Aksi takdirde, herhangi bir nesne tahsis edilemiyorsa veya mevcut değilse NULL.

RegisterUnsolicitedMessageHandler

WEAVE_ERROR RegisterUnsolicitedMessageHandler(
  uint32_t profileId,
  ExchangeContext::MessageReceiveFunct handler,
  void *appState
)

Belirli bir profil tanımlayıcısı için istenmeyen bir mesaj işleyicisi kaydedin.

Bu işleyici, verilen profilin tüm mesajları için çağrılır.

Ayrıntılar
parametreler
[in] profileId
Alınan mesajın profil tanımlayıcısı.
[in] handler
İstenmeyen ileti işleyicisi.
[in] appState
Bağlam durumunu tutan daha yüksek bir katman nesnesine işaretçi.
Dönüş Değerleri
WEAVE_ERROR_TOO_MANY_UNSOLICITED_MESSAGE_HANDLERS
İstenmeyen mesaj işleyici havuzu doluysa ve yenisi tahsis edilemezse.
WEAVE_NO_ERROR
Başarı üzerine.

RegisterUnsolicitedMessageHandler

WEAVE_ERROR RegisterUnsolicitedMessageHandler(
  uint32_t profileId,
  ExchangeContext::MessageReceiveFunct handler,
  bool allowDups,
  void *appState
)

Belirli bir profil tanımlayıcısı için istenmeyen bir mesaj işleyicisi kaydedin.

Bu işleyici, verilen profilin tüm mesajları için çağrılır.

Ayrıntılar
parametreler
[in] profileId
Alınan mesajın profil tanımlayıcısı.
[in] handler
İstenmeyen ileti işleyicisi.
[in] allowDups
Belirli bir profil için yinelenen iletilere izin verilip verilmediğinin Boole göstergesi.
[in] appState
Bağlam durumunu tutan daha yüksek bir katman nesnesine işaretçi.
Dönüş Değerleri
WEAVE_ERROR_TOO_MANY_UNSOLICITED_MESSAGE_HANDLERS
İstenmeyen mesaj işleyici havuzu doluysa ve yenisi tahsis edilemezse.
WEAVE_NO_ERROR
Başarı üzerine.

RegisterUnsolicitedMessageHandler

WEAVE_ERROR RegisterUnsolicitedMessageHandler(
  uint32_t profileId,
  uint8_t msgType,
  ExchangeContext::MessageReceiveFunct handler,
  void *appState
)

Belirli bir profil tanımlayıcısı ve mesaj türü için istenmeyen bir mesaj işleyicisi kaydedin.

Ayrıntılar
parametreler
[in] profileId
Alınan mesajın profil tanımlayıcısı.
[in] msgType
İlgili profilin mesaj türü.
[in] handler
İstenmeyen ileti işleyicisi.
[in] appState
Bağlam durumunu tutan daha yüksek bir katman nesnesine işaretçi.
Dönüş Değerleri
WEAVE_ERROR_TOO_MANY_UNSOLICITED_MESSAGE_HANDLERS
İstenmeyen mesaj işleyici havuzu doluysa ve yenisi tahsis edilemezse.
WEAVE_NO_ERROR
Başarı üzerine.

RegisterUnsolicitedMessageHandler

WEAVE_ERROR RegisterUnsolicitedMessageHandler(
  uint32_t profileId,
  uint8_t msgType,
  ExchangeContext::MessageReceiveFunct handler,
  bool allowDups,
  void *appState
)

Belirli bir profil tanımlayıcısı ve mesaj türü için istenmeyen bir mesaj işleyicisi kaydedin.

Ayrıntılar
parametreler
[in] profileId
Alınan mesajın profil tanımlayıcısı.
[in] msgType
İlgili profilin mesaj türü.
[in] handler
İstenmeyen ileti işleyicisi.
[in] allowDups
Belirli bir profil tanımlayıcısı ve mesaj türü için yinelenen mesajlara izin verilip verilmediğinin Boole göstergesi.
[in] appState
Bağlam durumunu tutan daha yüksek bir katman nesnesine işaretçi.
Dönüş Değerleri
WEAVE_ERROR_TOO_MANY_UNSOLICITED_MESSAGE_HANDLERS
İstenmeyen mesaj işleyici havuzu doluysa ve yenisi tahsis edilemezse.
WEAVE_NO_ERROR
Başarı üzerine.

RegisterUnsolicitedMessageHandler

WEAVE_ERROR RegisterUnsolicitedMessageHandler(
  uint32_t profileId,
  uint8_t msgType,
  WeaveConnection *con,
  ExchangeContext::MessageReceiveFunct handler,
  void *appState
)

Belirli bir Weave bağlantısında belirli bir profil tanımlayıcısı, mesaj türü için istenmeyen bir mesaj işleyicisini kaydedin.

Ayrıntılar
parametreler
[in] profileId
Alınan mesajın profil tanımlayıcısı.
[in] msgType
İlgili profilin mesaj türü.
[in] con
Bir işaretçi WeaveConnection eş TCP bağlantıyı temsil eden nesne.
[in] handler
İstenmeyen ileti işleyicisi.
[in] appState
Bağlam durumunu tutan daha yüksek bir katman nesnesine işaretçi.
Dönüş Değerleri
WEAVE_ERROR_TOO_MANY_UNSOLICITED_MESSAGE_HANDLERS
İstenmeyen mesaj işleyici havuzu doluysa ve yenisi tahsis edilemezse.
WEAVE_NO_ERROR
Başarı üzerine.

RegisterUnsolicitedMessageHandler

WEAVE_ERROR RegisterUnsolicitedMessageHandler(
  uint32_t profileId,
  uint8_t msgType,
  WeaveConnection *con,
  ExchangeContext::MessageReceiveFunct handler,
  bool allowDups,
  void *appState
)

Belirli bir Weave bağlantısında belirli bir profil tanımlayıcısı, mesaj türü için istenmeyen bir mesaj işleyicisini kaydedin.

Ayrıntılar
parametreler
[in] profileId
Alınan mesajın profil tanımlayıcısı.
[in] msgType
İlgili profilin mesaj türü.
[in] con
Bir işaretçi WeaveConnection eş TCP bağlantıyı temsil eden nesne.
[in] handler
İstenmeyen ileti işleyicisi.
[in] allowDups
Belirli bir profil tanımlayıcısı için yinelenen mesajlara izin verilip verilmediğinin Boole göstergesi, belirli bir Weave bağlantısında mesaj türü.
[in] appState
Bağlam durumunu tutan daha yüksek bir katman nesnesine işaretçi.
Dönüş Değerleri
WEAVE_ERROR_TOO_MANY_UNSOLICITED_MESSAGE_HANDLERS
İstenmeyen mesaj işleyici havuzu doluysa ve yenisi tahsis edilemezse.
WEAVE_NO_ERROR
Başarı üzerine.

Kapat

WEAVE_ERROR Shutdown(
  void
)

Kapatma WeaveExchangeManager .

Bu, nesnenin bu örneğini sonlandırır ve tutulan tüm kaynakları serbest bırakır.

Ayrıntılar
İadeler
WEAVE_NO_ERROR koşulsuz.

Kaydı SilUnsolicitedMessageHandler

WEAVE_ERROR UnregisterUnsolicitedMessageHandler(
  uint32_t profileId
)

Belirli bir profil tanımlayıcısı için istenmeyen ileti işleyicisinin kaydını iptal edin.

Ayrıntılar
parametreler
[in] profileId
Alınan mesajın profil tanımlayıcısı.
Dönüş Değerleri
WEAVE_ERROR_NO_UNSOLICITED_MESSAGE_HANDLER
Eşleşen istenmeyen ileti işleyicisi bulunamazsa.
WEAVE_NO_ERROR
Başarı üzerine.

Kaydı SilUnsolicitedMessageHandler

WEAVE_ERROR UnregisterUnsolicitedMessageHandler(
  uint32_t profileId,
  uint8_t msgType
)

Belirli bir profil tanımlayıcısı ve mesaj türü için istenmeyen bir mesaj işleyicisinin kaydını iptal edin.

Ayrıntılar
parametreler
[in] profileId
Alınan mesajın profil tanımlayıcısı.
[in] msgType
İlgili profilin mesaj türü.
Dönüş Değerleri
WEAVE_ERROR_NO_UNSOLICITED_MESSAGE_HANDLER
Eşleşen istenmeyen ileti işleyicisi bulunamazsa.
WEAVE_NO_ERROR
Başarı üzerine.

Kaydı SilUnsolicitedMessageHandler

WEAVE_ERROR UnregisterUnsolicitedMessageHandler(
  uint32_t profileId,
  uint8_t msgType,
  WeaveConnection *con
)

Belirli bir profil tanımlayıcısı, mesaj türü ve Örgü bağlantısı için istenmeyen bir mesaj işleyicisinin kaydını kaldırın.

Ayrıntılar
parametreler
[in] profileId
Alınan mesajın profil tanımlayıcısı.
[in] msgType
İlgili profilin mesaj türü.
[in] con
Bir işaretçi WeaveConnection eş TCP bağlantıyı temsil eden nesne.
Dönüş Değerleri
WEAVE_ERROR_NO_UNSOLICITED_MESSAGE_HANDLER
Eşleşen istenmeyen ileti işleyicisi bulunamazsa.
WEAVE_NO_ERROR
Başarı üzerine.

WeaveExchangeYöneticisi

 WeaveExchangeManager(
  void
)

İçin Oluşturucu WeaveExchangeManager sınıfına.

Durumu kState_NotInitialized olarak ayarlar.