nl:: Weave:: Profiles:: DataManagement_Legacy:: DMPublisher
#include <src/lib/profiles/data-management/Legacy/DMPublisher.h>
應用程式專屬 WDM 發布商的抽象基本類別。
摘要
DMPublisher 是標準的 WDM 發布商基礎類別。這個程式庫結合了 DM ProtocolEngine 類別,可處理通訊 Crank 轉彎,以及完全抽象的 PublisherDataManager 類別。您可以選擇是否支援訂閱與通知,只要設定不含項目的訂閱資料表,就能隱藏相關支援。
繼承
沿用自:nl::Weave::Profiles::DataManagement_Legacy::ProtocolEngine
nl::Weave::Profiles::DataManagement_Legacy::PublisherDataManager
建構函式和解構函式 |
|
---|---|
DMPublisher(void)
DMPublisher 物件的預設建構函式。
|
|
~DMPublisher(void)
DMPublisher 物件的解構函式。
|
公用函式 |
|
---|---|
CancelTransactionRequest(uint16_t aTxnId, WEAVE_ERROR aError)
|
|
Clear(void)
|
virtual void
清除 DMPublisher 物件的內部狀態。
|
Finalize(void)
|
virtual void
關閉運作中的 DMPublisher。
|
IncompleteIndication(Binding *aBinding, StatusReport & aReport)
|
virtual void
處理繫結失敗的跡象。
|
Init(WeaveExchangeManager *aExchangeMgr, uint32_t aResponseTimeout)
|
virtual WEAVE_ERROR
初始化 DMPublisher 物件。
|
Init(WeaveExchangeManager *aExchangeMgr)
|
virtual WEAVE_ERROR
|
OnMsgReceived(ExchangeContext *aResponseCtx, uint32_t aProfileId, uint8_t aMsgType, PacketBuffer *aMsg)
|
void
|
UpdateResponse(ExchangeContext *aResponseCtx, StatusReport & aStatus)
|
回應更新要求。
|
ViewResponse(ExchangeContext *aResponseCtx, StatusReport & aStatus, ReferencedTLVData *aDataList)
|
回應觀看要求。
|
公用函式
CancelTransactionRequest
WEAVE_ERROR CancelTransactionRequest( uint16_t aTxnId, WEAVE_ERROR aError )
IncompleteIndication
virtual void IncompleteIndication( Binding *aBinding, StatusReport & aReport )
處理繫結失敗的跡象。
當繫結不完整 (例如,為 TCP 繫結關閉連線時),通訊協定引擎必須失敗任何依附於此狀態的交易,包括呼叫其狀態處理常式。此外,未完成的指標會傳遞至任何實作此方法的替代形式的父類別物件,這些物件會採用同業 ID。
詳細說明 | |||||
---|---|---|---|---|---|
參數 |
|
Init
virtual WEAVE_ERROR Init( WeaveExchangeManager *aExchangeMgr, uint32_t aResponseTimeout )
初始化 DMPublisher 物件。
這個方法會在交換管理員中安裝事件監聽器,以便為所有用戶端要求 (包括用於訂閱的用戶端要求) 產生副作用。
詳細說明 | |||||
---|---|---|---|---|---|
參數 |
|
||||
傳回 |
WEAVE_NO_ERROR:成功後。否則,系統會傳回 WEAVE_ERROR,表示無法正確設定發布商。
|
Init
virtual WEAVE_ERROR Init( WeaveExchangeManager *aExchangeMgr )
OnMsgReceived
void OnMsgReceived( ExchangeContext *aResponseCtx, uint32_t aProfileId, uint8_t aMsgType, PacketBuffer *aMsg )
UpdateResponse
WEAVE_ERROR UpdateResponse( ExchangeContext *aResponseCtx, StatusReport & aStatus )
回應更新要求。
處理完成後,使用指標中提供的廣告交易平台結構定義,將回應傳送至更新要求。
詳細說明 | |||||
---|---|---|---|---|---|
參數 |
|
||||
傳回 |
WEAVE_NO_ERROR:成功後。否則,系統會傳回 WEAVE_ERROR,反映無法傳送回應訊息。
|
ViewResponse
WEAVE_ERROR ViewResponse( ExchangeContext *aResponseCtx, StatusReport & aStatus, ReferencedTLVData *aDataList )
回應觀看要求。
處理完成後,使用指標中提供的廣告交易平台結構定義,將回應傳送至檢視要求。
詳細說明 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
||||||
傳回值 |
|
~DMPublisher
virtual ~DMPublisher( void )
DMPublisher 物件的解構函式。
清除所有內部狀態,並將事件監聽器從廣告交易平台管理員中移除 (如果有的話)。