nl :: Tecer:: Perfis :: DataManagement_Legacy :: DMClient
#include <src/lib/profiles/data-management/Legacy/DMClient.h>
A classe base abstrata para clientes WDM específicos de aplicativos.
Resumo
DMClient é o cliente WDM padrão. A implementação inclui opcionalmente assinatura / notificação. É uma mistura do DM ProtocolEngine classe, que lida com os comms manivela-se voltando, eo totalmente abstrato ClientDataManager classe, com alguns dos métodos de subscrição relacionadas implementadas de modo que as camadas mais altas não tem que se preocupar com eles.
Os manipuladores para tarefas de subscrição relacionados atuam principalmente como um adaptador fina sobre a ClientNotifier objeto. Os implementadores de subclasse devem ter o cuidado de chamar os métodos de superclasse relevantes para girar a manivela do gerenciador de assinaturas.
DMClient métodos de solicitação geralmente têm 2 assinaturas, um com uma explícita ID nó de destino e outro com um destino especificado. Em qualquer caso, a capacidade de enviar uma mensagem a um editor depende de uma ligação pré-existente no cliente, mas, no primeiro caso, o ID de destino se destina a selecionar entre o destino de ligação múltipla e, no segundo caso, o primeiro item na tabela de encadernação é selecionado como padrão. Isso é útil, por exemplo, se o cliente só for vinculado a um único editor.
Herança
Herda de:nl :: Weave :: Profiles :: DataManagement_Legacy :: ProtocolEngine
nl :: Weave :: Profiles :: DataManagement_Legacy :: ClientDataManager
Construtores e Destruidores | |
---|---|
DMClient (void) O construtor padrão para DMClient objetos. | |
~DMClient (void) O destruidor para DMClient objetos. |
ViewRequest (const uint64_t & aDestinationId, ReferencedTLVData & aPathList, uint16_t aTxnId, uint32_t aTimeout) | virtual WEAVE_ERROR Solicite uma visualização dos dados publicados. |
ViewRequest ( ReferencedTLVData & aPathList, uint16_t aTxnId, uint32_t aTimeout) | virtual WEAVE_ERROR Solicite uma visualização dos dados do editor padrão. |
UpdateRequest (const uint64_t & aDestinationId, ReferencedTLVData & aDataList, uint16_t aTxnId, uint32_t aTimeout) | virtual WEAVE_ERROR Solicite uma atualização dos dados publicados. |
UpdateRequest ( ReferencedTLVData & aDataList, uint16_t aTxnId, uint32_t aTimeout) | virtual WEAVE_ERROR Solicite uma atualização dos dados do editor padrão. |
Atributos protegidos | |
---|---|
mUpdatePool [kUpdatePoolSize] | |
mViewPool [kViewPoolSize] |
Funções públicas | |
---|---|
CancelTransactionRequest (uint16_t aTxnId, WEAVE_ERROR aError) | Solicite que uma transação em execução seja cancelada. |
Clear (void) | virtual void Limpar o estado interno associado a um DMClient objeto. |
Finalize (void) | virtual void Encerre uma operação DMClient . |
IncompleteIndication ( Binding *aBinding, StatusReport & aReport) | virtual void Lidar com a "incompletude" de uma encadernação em uso pelo cliente. |
Funções protegidas | |
---|---|
NewUpdate (void) | Update * |
NewView (void) | View * |
ViewRequest
virtual WEAVE_ERROR ViewRequest( const uint64_t & aDestinationId, ReferencedTLVData & aPathList, uint16_t aTxnId, uint32_t aTimeout )
Solicite uma visualização dos dados publicados.
Solicite uma visualização dos dados que residem e são gerenciados por um editor remoto especificado.
Detalhes | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parâmetros |
| ||||||||
Valores Retornados |
| ||||||||
Devoluções | Caso contrário, um WEAVE_ERROR refletindo a falha para inicializar ou iniciar a transação. |
ViewRequest
virtual WEAVE_ERROR ViewRequest( ReferencedTLVData & aPathList, uint16_t aTxnId, uint32_t aTimeout )
Solicite uma visualização dos dados do editor padrão.
Solicite uma visualização dos dados que residem e são gerenciados pelo editor "padrão", ou seja, o primeiro (ou único) editor na tabela de ligação do cliente.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
| ||||||
Valores Retornados |
| ||||||
Devoluções | Caso contrário, um WEAVE_ERROR refletindo a falha para inicializar ou iniciar a transação. |
UpdateRequest
virtual WEAVE_ERROR UpdateRequest( const uint64_t & aDestinationId, ReferencedTLVData & aDataList, uint16_t aTxnId, uint32_t aTimeout )
Solicite uma atualização dos dados publicados.
Solicite que um editor remoto atualize os dados sob gerenciamento.
Detalhes | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parâmetros |
| ||||||||
Devoluções | WEAVE_NO_ERROR em caso de sucesso ou WEAVE_ERROR_NO_MEMORY se uma transação de atualização não pôde ser alocada. Caso contrário, retornará um WEAVE_ERROR refletindo uma falha de atualização. |
UpdateRequest
virtual WEAVE_ERROR UpdateRequest( ReferencedTLVData & aDataList, uint16_t aTxnId, uint32_t aTimeout )
Solicite uma atualização dos dados do editor padrão.
Solicite que um editor remoto atualize os dados sob gerenciamento. Esta versão direciona a solicitação ao editor que é o alvo da ligação padrão do cliente.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
| ||||||
Devoluções | WEAVE_NO_ERROR em caso de sucesso ou WEAVE_ERROR_NO_MEMORY se uma transação de atualização não pôde ser alocada. Caso contrário, retornará um WEAVE_ERROR refletindo uma falha de atualização. |
Atributos protegidos
mUpdatePool
Update mUpdatePool[kUpdatePoolSize]
mViewPool
View mViewPool[kViewPoolSize]
Funções públicas
CancelTransactionRequest
WEAVE_ERROR CancelTransactionRequest( uint16_t aTxnId, WEAVE_ERROR aError )
Solicite que uma transação em execução seja cancelada.
Este método não gera tráfego de rede, mas apenas libera recursos alocados para as transações especificadas
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
| ||||
Devoluções | WEAVE_NO_ERROR em caso de sucesso ou um WEAVE_ERROR refletindo uma falha para cancelar a transação. |
Claro
virtual void Clear( void )
Limpar o estado interno associado a um DMClient objeto.
Em particular, este método limpa todos os pools de transações do cliente. Para clientes que estiveram no uso do Finalize () método é preferível, uma vez que também cancela assinaturas e limpa a transação e mesas de ligação.
Veja também:Finalizar()
DMClient
DMClient( void )
Finalizar
virtual void Finalize( void )
Encerre uma operação DMClient .
Limpa todo o estado operacional associado ao cliente e remove todas as assinaturas relacionadas do notificador. Após uma chamada para Finalize () uma DMClient pode ser reinicializado simplesmente chamando Init (). Finalize () é invocado pelo DMClient destruidor mas pode ser chamada no caso em que um DMClient requer a limpeza, por exemplo em caso de falha ou paralisação temporária, mas podem precisar de ser reconstituída em algum tempo mais tarde.
IncompleteIndication
virtual void IncompleteIndication( Binding *aBinding, StatusReport & aReport )
Lidar com a "incompletude" de uma encadernação em uso pelo cliente.
Quando uma ligação falha inesperadamente, por exemplo, se a conexão envolvida na ligação for fechada, este método é chamado.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
~ DMClient
virtual ~DMClient( void )
O destruidor para DMClient objetos.
Limpa todos os estados internos e, se necessário, cancela as assinaturas pendentes.
Funções protegidas
Nova atualização
Update * NewUpdate( void )
NewView
View * NewView( void )