nl:: Weave:: Profiles:: DataManagement_Current:: NotificationEngine:: NotifyRequestBuilder
#include <src/lib/profiles/data-management/Current/NotificationEngine.h>
이는 알림을 작성하고 메시지의 구성과 구조를 소비자에게서 추상화하는 도우미 클래스를 제공합니다.
요약
MessageDef.cpp에 제공되는 유사한 클래스의 좀 더 간단한 버전으로, 기기의 플래시 및 RAM 요구사항에 민감합니다.
공개 함수 |
|
---|---|
Checkpoint(TLV::TLVWriter & aPoint)
|
요청 상태를 TLVWriter에 체크포인트합니다.
|
EndDataList()
|
데이터 목록 배열의 생성을 종료합니다.
|
EndEventList()
|
이벤트 목록 생성을 종료합니다.
|
EndNotifyRequest()
|
알림 구성을 종료합니다.
|
GetWriter(void)
|
|
Init(PacketBuffer *aBuf, TLV::TLVWriter *aWriter, SubscriptionHandler *aSubHandler, uint32_t aMaxPayloadSize)
|
빌더를 초기화합니다.
|
MoveToState(NotifyRequestBuilderState aDesiredState)
|
기본 상태 전환 함수.
|
Rollback(TLV::TLVWriter & aPoint)
|
요청 상태를 체크포인트가 적용된 TLVWriter로 롤백합니다.
|
StartDataList(void)
|
데이터 목록 배열의 생성을 시작합니다.
|
StartEventList()
|
이벤트 목록 생성을 시작합니다.
|
StartNotifyRequest()
|
알림 구성을 시작합니다.
|
WriteDataElement(TraitDataHandle aTraitDataHandle, PropertyPathHandle aPropertyPathHandle, SchemaVersion aSchemaVersion, PropertyPathHandle *aMergeDataHandleSet, uint32_t aNumMergeDataHandles, PropertyPathHandle *aDeleteHandleSet, uint32_t aNumDeleteHandles)
|
트레잇 경로가 주어지면 해당 경로와 연결된 데이터 요소를 작성합니다.
|
공개 함수
검문소
WEAVE_ERROR Checkpoint( TLV::TLVWriter & aPoint )
요청 상태를 TLVWriter에 체크포인트합니다.
세부정보 | |||
---|---|---|---|
매개변수 |
|
||
반환 값 |
|
EndDataList
WEAVE_ERROR EndDataList()
데이터 목록 배열의 생성을 종료합니다.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
반환 값 |
|
EndEventList
WEAVE_ERROR EndEventList()
이벤트 목록 생성을 종료합니다.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
반환 값 |
|
EndNotifyRequest
WEAVE_ERROR EndNotifyRequest()
알림 구성을 종료합니다.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
반환 값 |
|
GetWriter
TLV::TLVWriter * GetWriter( void )
Init
WEAVE_ERROR Init( PacketBuffer *aBuf, TLV::TLVWriter *aWriter, SubscriptionHandler *aSubHandler, uint32_t aMaxPayloadSize )
빌더를 초기화합니다.
한 번만 호출해야 합니다.
세부정보 | |||||
---|---|---|---|---|---|
반환 값 |
|
MoveToState
WEAVE_ERROR MoveToState( NotifyRequestBuilderState aDesiredState )
기본 상태 전환 함수.
함수는 원하는 상태 (즉, 도달하려는 알림 요청 빌더의 단계)를 취하고 요청을 해당 상태로 전환합니다. 원하는 상태가 현재 상태와 같으면 함수는 아무것도 하지 않습니다. 그 외의 경우에는 PacketBuffer가 할당됩니다 (필요한 경우). 함수는 먼저 요청을 최상위 알림 요청으로 전환 (알림 요청 TLV 구조를 열거나 필요에 따라 현재 TLV 데이터 컨테이너를 닫음)한 다음, 적절한 TLV 데이터 컨테이너를 열거나 중요한 알림 요청을 종료하여 알림 요청을 전환합니다.
세부정보 | |||||||||
---|---|---|---|---|---|---|---|---|---|
매개변수 |
|
||||||||
반환 값 |
|
롤백
WEAVE_ERROR Rollback( TLV::TLVWriter & aPoint )
요청 상태를 체크포인트가 적용된 TLVWriter로 롤백합니다.
세부정보 | |||
---|---|---|---|
매개변수 |
|
||
반환 값 |
|
StartDataList
WEAVE_ERROR StartDataList( void )
데이터 목록 배열의 생성을 시작합니다.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
반환 값 |
|
StartEventList
WEAVE_ERROR StartEventList()
이벤트 목록 생성을 시작합니다.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
반환 값 |
|
StartNotifyRequest
WEAVE_ERROR StartNotifyRequest()
알림 구성을 시작합니다.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
반환 값 |
|
WriteDataElement
WEAVE_ERROR WriteDataElement( TraitDataHandle aTraitDataHandle, PropertyPathHandle aPropertyPathHandle, SchemaVersion aSchemaVersion, PropertyPathHandle *aMergeDataHandleSet, uint32_t aNumMergeDataHandles, PropertyPathHandle *aDeleteHandleSet, uint32_t aNumDeleteHandles )
트레잇 경로가 주어지면 해당 경로와 연결된 데이터 요소를 작성합니다.
호출자는 선택적으로 핸들 세트를 전달하여 상위 속성 경로 핸들의 좁은 직계 하위 노드 집합과 병합 작업을 활용할 수 있습니다.
세부정보 | |||||
---|---|---|---|---|---|
반환 값 |
|