nl :: نسج:: WeaveExchangeManager

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

تُستخدم هذه الفئة لإدارة ExchangeContexts مع عقد Weave الأخرى.

ملخص

إنه يعمل نيابة عن الطبقات العليا ، حيث يقوم بإنشاء ExchangeContexts ومعالجة تسجيل / إلغاء تسجيل معالجات الرسائل غير المرغوب فيها.

البنائين والمدمرين

WeaveExchangeManager (void)
منشئ لل WeaveExchangeManager الصف.

الأنواع العامة

State {
kState_NotInitialized = 0,
kState_Initialized = 1
}
تعداد

السمات العامة

FabricState
[للقراءة فقط] كائن FabricState المرتبط.
MessageLayer
[للقراءة فقط] ويرتبط WeaveMessageLayer الكائن.
State
uint8_t
[للقراءة فقط] الدولة من WeaveExchangeManager الكائن.

الوظائف العامة

AllowUnsolicitedMessages ( WeaveConnection *con)
void
السماح باستلام الرسائل غير المرغوب فيها على الاتصال المحدد.
ClearMsgCounterSyncReq (uint64_t peerNodeId)
void
امسح علامة MsgCounterSyncReq لكافة الرسائل المعلقة لهذا النظير.
FindContext (uint64_t peerNodeId, WeaveConnection *con, void *appState, bool isInitiator)
العثور على ExchangeContext من مجموعة مطابقة مجموعة معينة من المعلمات.
Init ( WeaveMessageLayer *msgLayer)
تهيئة WeaveExchangeManager الكائن.
NewBinding (Binding::EventCallback eventCallback, void *appState)
تخصيص جديدة الربط مع الحجج المقدمة.
NewContext (const uint64_t & peerNodeId, void *appState)
يخلق جديدة ExchangeContext مع عقدة نسج النظير نظرا المحدد من قبل معرف عقدة الأقران.
NewContext (const uint64_t & peerNodeId, const IPAddress & peerAddr, void *appState)
يخلق جديدة ExchangeContext مع أحد الزملاء نظرا نسج العقدة التي يحددها عنوان IP معرف عقدة الأقران والزملاء.
NewContext (const uint64_t & peerNodeId, const IPAddress & peerAddr, uint16_t peerPort, InterfaceId sendIntfId, void *appState)
يخلق جديدة ExchangeContext مع أحد الزملاء نظرا نسج العقدة المحددة بواسطة معرف الأقران عقدة، عنوان IP الأقران، ومنفذ الوجهة على واجهة محددة.
NewContext ( WeaveConnection *con, void *appState)
يخلق جديدة ExchangeContext مع عقدة نسج النظير نظرا مدى محدد WeaveConnection .
RegisterUnsolicitedMessageHandler (uint32_t profileId, ExchangeContext::MessageReceiveFunct handler, void *appState)
قم بتسجيل معالج رسالة غير مرغوب فيه لمعرف ملف تعريف معين.
RegisterUnsolicitedMessageHandler (uint32_t profileId, ExchangeContext::MessageReceiveFunct handler, bool allowDups, void *appState)
قم بتسجيل معالج رسالة غير مرغوب فيه لمعرف ملف تعريف معين.
RegisterUnsolicitedMessageHandler (uint32_t profileId, uint8_t msgType, ExchangeContext::MessageReceiveFunct handler, void *appState)
قم بتسجيل معالج رسالة غير مرغوب فيه لمعرف ملف تعريف ونوع الرسالة.
RegisterUnsolicitedMessageHandler (uint32_t profileId, uint8_t msgType, ExchangeContext::MessageReceiveFunct handler, bool allowDups, void *appState)
قم بتسجيل معالج رسالة غير مرغوب فيه لمعرف ملف تعريف ونوع الرسالة.
RegisterUnsolicitedMessageHandler (uint32_t profileId, uint8_t msgType, WeaveConnection *con, ExchangeContext::MessageReceiveFunct handler, void *appState)
قم بتسجيل معالج رسالة غير مرغوب فيه لمعرف ملف تعريف معين ، ونوع الرسالة على اتصال Weave محدد.
RegisterUnsolicitedMessageHandler (uint32_t profileId, uint8_t msgType, WeaveConnection *con, ExchangeContext::MessageReceiveFunct handler, bool allowDups, void *appState)
قم بتسجيل معالج رسالة غير مرغوب فيه لمعرف ملف تعريف معين ، ونوع الرسالة على اتصال Weave محدد.
Shutdown (void)
اغلاق WeaveExchangeManager .
UnregisterUnsolicitedMessageHandler (uint32_t profileId)
قم بإلغاء تسجيل معالج رسالة غير مرغوب فيه لمعرف ملف تعريف معين.
UnregisterUnsolicitedMessageHandler (uint32_t profileId, uint8_t msgType)
قم بإلغاء تسجيل معالج رسالة غير مرغوب فيه لمعرف ملف تعريف ونوع الرسالة.
UnregisterUnsolicitedMessageHandler (uint32_t profileId, uint8_t msgType, WeaveConnection *con)
قم بإلغاء تسجيل معالج رسالة غير مرغوب فيه لمعرف ملف تعريف معين ونوع الرسالة واتصال Weave.

الأنواع العامة

حالة

 State
الخصائص
kState_Initialized

تستخدم للإشارة إلى أن WeaveExchangeManager تتم تهيئة.

kState_NotInitialized

تستخدم للإشارة إلى أن WeaveExchangeManager غير مهيأ.

السمات العامة

FabricState

WeaveFabricState * FabricState

[للقراءة فقط] كائن FabricState المرتبط.

طبقة الرسالة

WeaveMessageLayer * MessageLayer

[للقراءة فقط] ويرتبط WeaveMessageLayer الكائن.

حالة

uint8_t State

[للقراءة فقط] الدولة من WeaveExchangeManager الكائن.

الوظائف العامة

AllowUnolicitedMessages

void AllowUnsolicitedMessages(
  WeaveConnection *con
)

السماح باستلام الرسائل غير المرغوب فيها على الاتصال المحدد.

تقوم هذه الطريقة بتعيين معالج استقبال الرسائل على اتصال Weave المحدد.

تفاصيل
المعلمات
[in] con
مؤشر إلى كائن اتصال Weave.

ClearMsgCounterSyncReq

void ClearMsgCounterSyncReq(
  uint64_t peerNodeId
)

امسح علامة MsgCounterSyncReq لكافة الرسائل المعلقة لهذا النظير.

تفاصيل
المعلمات
[in] peerNodeId
معرف العقدة لعقدة الوجهة.

FindContext

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

العثور على ExchangeContext من مجموعة مطابقة مجموعة معينة من المعلمات.

تفاصيل
المعلمات
[in] peerNodeId
معرف عقدة النظير الذي ل ExchangeContext تم إعدادها.
[in] con
مؤشر إلى WeaveConnection الكائن الذي يمثل اتصال TCP مع الأقران.
[in] appState
مؤشر إلى كائن طبقة أعلى يحمل حالة السياق.
[in] isInitiator
مؤشر منطقي لما إذا كانت العقدة المحلية هي بادئ التبادل.
عائدات
مؤشر إلى ExchangeContext الكائن مطابقة المعلمات المقدمة في النجاح، NULL في أي مباراة.

فيه

WEAVE_ERROR Init(
  WeaveMessageLayer *msgLayer
)

تهيئة WeaveExchangeManager الكائن.

خلال عمر هذا المثيل ، يتم استدعاء هذه الطريقة مرة واحدة بعد إنشاء الكائن حتى يتم استدعاء إيقاف التشغيل لإنهاء المثيل.

تفاصيل
المعلمات
[in] msgLayer
مؤشر إلى WeaveMessageLayer الكائن.
إرجاع القيم
WEAVE_ERROR_INCORRECT_STATE
إذا كانت الحالة لا تساوي kState_NotInitialized.
WEAVE_NO_ERROR
عن النجاح.

NewBinding

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

تخصيص جديدة الربط مع الحجج المقدمة.

تفاصيل
المعلمات
[in] eventCallback
مؤشر دالة لاستخدامه في رد اتصال الحدث
[in] appState
مؤشر إلى بعض السياق الذي سيتم نقله في حالة رد الاتصال لاحقًا
عائدات
مؤشر إلى تخصيص حديثا ملزم ، أو NULL إذا تم استنفاد تجمع

NewContext

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

يخلق جديدة ExchangeContext مع عقدة نسج النظير نظرا المحدد من قبل معرف عقدة الأقران.

تفاصيل
المعلمات
[in] peerNodeId
معرف عقدة النظير الذي ل ExchangeContext يجري إعدادها.
[in] appState
مؤشر إلى كائن طبقة أعلى يحمل حالة السياق.
عائدات
مؤشر إلى خلق ExchangeContext الكائن في النجاح. وإلا NULL إذا لم يكن هناك كائن يمكن تخصيصه أو توفره.

NewContext

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

يخلق جديدة ExchangeContext مع أحد الزملاء نظرا نسج العقدة التي يحددها عنوان IP معرف عقدة الأقران والزملاء.

تفاصيل
المعلمات
[in] peerNodeId
معرف عقدة النظير الذي ل ExchangeContext يجري إعدادها.
[in] peerAddr
عنوان IP لعقدة النظير.
[in] appState
مؤشر إلى كائن طبقة أعلى يحمل حالة السياق.
عائدات
مؤشر إلى خلق ExchangeContext الكائن في النجاح. خلاف ذلك ، NULL إذا لم يكن هناك كائن يمكن تخصيصه أو توفره.

NewContext

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

يخلق جديدة ExchangeContext مع أحد الزملاء نظرا نسج العقدة المحددة بواسطة معرف الأقران عقدة، عنوان IP الأقران، ومنفذ الوجهة على واجهة محددة.

تفاصيل
المعلمات
[in] peerNodeId
معرف عقدة النظير الذي ل ExchangeContext يجري إعدادها.
[in] peerAddr
عنوان IP لعقدة النظير.
[in] peerPort
منفذ عقدة النظير.
[in] sendIntfId
الواجهة المراد استخدامها لإرسال رسائل Weave على هذا التبادل.
[in] appState
مؤشر إلى كائن طبقة أعلى يحمل حالة السياق.
عائدات
مؤشر إلى خلق ExchangeContext الكائن في النجاح. خلاف ذلك ، NULL إذا لم يكن هناك كائن يمكن تخصيصه أو توفره.

NewContext

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

يخلق جديدة ExchangeContext مع عقدة نسج النظير نظرا مدى محدد WeaveConnection .

تفاصيل
المعلمات
[in] con
مؤشر إلى WeaveConnection الكائن الذي يمثل اتصال TCP مع الأقران.
[in] appState
مؤشر إلى كائن طبقة أعلى يحمل حالة السياق.
عائدات
مؤشر إلى خلق ExchangeContext الكائن في النجاح. خلاف ذلك ، NULL إذا لم يكن هناك كائن يمكن تخصيصه أو توفره.

التسجيل

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

قم بتسجيل معالج رسالة غير مرغوب فيه لمعرف ملف تعريف معين.

سيتم استدعاء هذا المعالج لجميع رسائل ملف التعريف المحدد.

تفاصيل
المعلمات
[in] profileId
معرّف الملف الشخصي للرسالة المستلمة.
[in] handler
معالج الرسائل غير المرغوب فيها.
[in] appState
مؤشر إلى كائن طبقة أعلى يحمل حالة السياق.
إرجاع القيم
WEAVE_ERROR_TOO_MANY_UNSOLICITED_MESSAGE_HANDLERS
إذا كان تجمع معالج الرسائل غير المرغوب فيه ممتلئًا ولا يمكن تخصيص مجموعة جديدة.
WEAVE_NO_ERROR
عن النجاح.

التسجيل

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

قم بتسجيل معالج رسالة غير مرغوب فيه لمعرف ملف تعريف معين.

سيتم استدعاء هذا المعالج لجميع رسائل ملف التعريف المحدد.

تفاصيل
المعلمات
[in] profileId
معرّف الملف الشخصي للرسالة المستلمة.
[in] handler
معالج الرسائل غير المرغوب فيها.
[in] allowDups
مؤشر منطقي لمعرفة ما إذا كان مسموحًا برسائل مكررة لملف تعريف معين.
[in] appState
مؤشر إلى كائن طبقة أعلى يحمل حالة السياق.
إرجاع القيم
WEAVE_ERROR_TOO_MANY_UNSOLICITED_MESSAGE_HANDLERS
إذا كان تجمع معالج الرسائل غير المرغوب فيه ممتلئًا ولا يمكن تخصيص مجموعة جديدة.
WEAVE_NO_ERROR
عن النجاح.

التسجيل

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

قم بتسجيل معالج رسالة غير مرغوب فيه لمعرف ملف تعريف ونوع الرسالة.

تفاصيل
المعلمات
[in] profileId
معرّف الملف الشخصي للرسالة المستلمة.
[in] msgType
نوع رسالة ملف التعريف المقابل.
[in] handler
معالج الرسائل غير المرغوب فيها.
[in] appState
مؤشر إلى كائن طبقة أعلى يحمل حالة السياق.
إرجاع القيم
WEAVE_ERROR_TOO_MANY_UNSOLICITED_MESSAGE_HANDLERS
إذا كان تجمع معالج الرسائل غير المرغوب فيه ممتلئًا ولا يمكن تخصيص مجموعة جديدة.
WEAVE_NO_ERROR
عن النجاح.

التسجيل

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

قم بتسجيل معالج رسالة غير مرغوب فيه لمعرف ملف تعريف ونوع الرسالة.

تفاصيل
المعلمات
[in] profileId
معرّف الملف الشخصي للرسالة المستلمة.
[in] msgType
نوع رسالة ملف التعريف المقابل.
[in] handler
معالج الرسائل غير المرغوب فيها.
[in] allowDups
مؤشر منطقي لمعرفة ما إذا كان مسموحًا برسائل مكررة لمعرف ملف شخصي معين ونوع رسالة.
[in] appState
مؤشر إلى كائن طبقة أعلى يحمل حالة السياق.
إرجاع القيم
WEAVE_ERROR_TOO_MANY_UNSOLICITED_MESSAGE_HANDLERS
إذا كان تجمع معالج الرسائل غير المرغوب فيه ممتلئًا ولا يمكن تخصيص مجموعة جديدة.
WEAVE_NO_ERROR
عن النجاح.

التسجيل

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

قم بتسجيل معالج رسالة غير مرغوب فيه لمعرف ملف تعريف معين ، ونوع الرسالة على اتصال Weave محدد.

تفاصيل
المعلمات
[in] profileId
معرّف الملف الشخصي للرسالة المستلمة.
[in] msgType
نوع رسالة ملف التعريف المقابل.
[in] con
مؤشر إلى WeaveConnection الكائن الذي يمثل اتصال TCP مع الأقران.
[in] handler
معالج الرسائل غير المرغوب فيها.
[in] appState
مؤشر إلى كائن طبقة أعلى يحمل حالة السياق.
إرجاع القيم
WEAVE_ERROR_TOO_MANY_UNSOLICITED_MESSAGE_HANDLERS
إذا كان تجمع معالج الرسائل غير المرغوب فيه ممتلئًا ولا يمكن تخصيص مجموعة جديدة.
WEAVE_NO_ERROR
عن النجاح.

التسجيل

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

قم بتسجيل معالج رسالة غير مرغوب فيه لمعرف ملف تعريف معين ، ونوع الرسالة على اتصال Weave محدد.

تفاصيل
المعلمات
[in] profileId
معرّف الملف الشخصي للرسالة المستلمة.
[in] msgType
نوع رسالة ملف التعريف المقابل.
[in] con
مؤشر إلى WeaveConnection الكائن الذي يمثل اتصال TCP مع الأقران.
[in] handler
معالج الرسائل غير المرغوب فيها.
[in] allowDups
مؤشر منطقي لمعرفة ما إذا كان مسموحًا برسائل مكررة لمعرف ملف تعريف معين ، ونوع الرسالة على اتصال Weave محدد.
[in] appState
مؤشر إلى كائن طبقة أعلى يحمل حالة السياق.
إرجاع القيم
WEAVE_ERROR_TOO_MANY_UNSOLICITED_MESSAGE_HANDLERS
إذا كان تجمع معالج الرسائل غير المرغوب فيه ممتلئًا ولا يمكن تخصيص مجموعة جديدة.
WEAVE_NO_ERROR
عن النجاح.

اغلق

WEAVE_ERROR Shutdown(
  void
)

اغلاق WeaveExchangeManager .

يؤدي هذا إلى إنهاء هذا المثيل من الكائن وإطلاق جميع الموارد المحتجزة.

تفاصيل
عائدات
WEAVE_NO_ERROR دون قيد أو شرط.

إلغاء التسجيل

WEAVE_ERROR UnregisterUnsolicitedMessageHandler(
  uint32_t profileId
)

قم بإلغاء تسجيل معالج رسالة غير مرغوب فيه لمعرف ملف تعريف معين.

تفاصيل
المعلمات
[in] profileId
معرّف الملف الشخصي للرسالة المستلمة.
إرجاع القيم
WEAVE_ERROR_NO_UNSOLICITED_MESSAGE_HANDLER
إذا لم يتم العثور على معالج الرسالة المطابق غير المرغوب فيه.
WEAVE_NO_ERROR
عن النجاح.

إلغاء التسجيل

WEAVE_ERROR UnregisterUnsolicitedMessageHandler(
  uint32_t profileId,
  uint8_t msgType
)

قم بإلغاء تسجيل معالج رسالة غير مرغوب فيه لمعرف ملف تعريف ونوع الرسالة.

تفاصيل
المعلمات
[in] profileId
معرّف الملف الشخصي للرسالة المستلمة.
[in] msgType
نوع رسالة ملف التعريف المقابل.
إرجاع القيم
WEAVE_ERROR_NO_UNSOLICITED_MESSAGE_HANDLER
إذا لم يتم العثور على معالج الرسالة المطابق غير المرغوب فيه.
WEAVE_NO_ERROR
عن النجاح.

إلغاء التسجيل

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

قم بإلغاء تسجيل معالج رسالة غير مرغوب فيه لمعرف ملف تعريف معين ونوع الرسالة واتصال Weave.

تفاصيل
المعلمات
[in] profileId
معرّف الملف الشخصي للرسالة المستلمة.
[in] msgType
نوع رسالة ملف التعريف المقابل.
[in] con
مؤشر إلى WeaveConnection الكائن الذي يمثل اتصال TCP مع الأقران.
إرجاع القيم
WEAVE_ERROR_NO_UNSOLICITED_MESSAGE_HANDLER
إذا لم يتم العثور على معالج الرسالة المطابق غير المرغوب فيه.
WEAVE_NO_ERROR
عن النجاح.

WeaveExchangeManager

 WeaveExchangeManager(
  void
)

منشئ لل WeaveExchangeManager الصف.

يقوم بتعيين الحالة على kState_NotInitialized.