nl :: Tejido:: Perfiles: DataManagement_Legacy :: DMClient
#include <src/lib/profiles/data-management/Legacy/DMClient.h>
La clase base abstracta para clientes WDM específicos de la aplicación.
Resumen
DMClient es el cliente WDM estándar. La implementación incluye opcionalmente suscripción / notificación. Es una mezcla de la DM ProtocolEngine clase, que se ocupa de las comunicaciones manivela-torno, y la totalidad abstracta ClientDataManager clase, con algunos de los métodos relacionada con la suscripción implementadas de manera que las capas superiores no tienen que preocuparse de ellos.
Los manejadores de tareas relacionados con la suscripción actúan principalmente como un adaptador delgada sobre la ClientNotifier objeto. Los implementadores de subclase deben tener cuidado de llamar a los métodos de superclase relevantes para hacer girar el administrador de suscripciones.
DMClient métodos de petición tienen generalmente de 2 firmas, una con un ID de nodo de destino explícita y el otro con un destino especificado. En cualquier caso, la capacidad de enviar un mensaje a un editor depende de un enlace preexistente en el cliente pero, en el primer caso, el ID de destino está destinado a seleccionar entre varios destinos vinculados y, en el segundo caso, el primero El elemento de la tabla de encuadernación está seleccionado de forma predeterminada. Esto es útil, por ejemplo, si el cliente solo estará vinculado a un único editor.
Herencia
Hereda de:nl :: Weave :: Profiles :: DataManagement_Legacy :: ProtocolEngine
nl :: Weave :: Profiles :: DataManagement_Legacy :: ClientDataManager
Constructores y Destructores | |
---|---|
DMClient (void) El constructor por defecto para DMClient objetos. | |
~DMClient (void) El destructor para DMClient objetos. |
ViewRequest (const uint64_t & aDestinationId, ReferencedTLVData & aPathList, uint16_t aTxnId, uint32_t aTimeout) | virtual WEAVE_ERROR Solicite una vista de los datos publicados. |
ViewRequest ( ReferencedTLVData & aPathList, uint16_t aTxnId, uint32_t aTimeout) | virtual WEAVE_ERROR Solicite una vista de los datos del editor predeterminado. |
UpdateRequest (const uint64_t & aDestinationId, ReferencedTLVData & aDataList, uint16_t aTxnId, uint32_t aTimeout) | virtual WEAVE_ERROR Solicite una actualización de los datos publicados. |
UpdateRequest ( ReferencedTLVData & aDataList, uint16_t aTxnId, uint32_t aTimeout) | virtual WEAVE_ERROR Solicite una actualización de los datos del editor predeterminado. |
Atributos protegidos | |
---|---|
mUpdatePool [kUpdatePoolSize] | |
mViewPool [kViewPoolSize] |
Funciones publicas | |
---|---|
CancelTransactionRequest (uint16_t aTxnId, WEAVE_ERROR aError) | Solicite que se cancele una transacción en ejecución. |
Clear (void) | virtual void Desactive el estado interno asociado con un DMClient objeto. |
Finalize (void) | virtual void Cerrar una operación DMClient . |
IncompleteIndication ( Binding *aBinding, StatusReport & aReport) | virtual void Manejar el "incompleto" de una encuadernación en uso por el cliente. |
Funciones 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 una vista de los datos publicados.
Solicite una vista de los datos que residen y administran un editor remoto específico.
Detalles | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parámetros |
| ||||||||
Valores devueltos |
| ||||||||
Devoluciones | De lo contrario, un WEAVE_ERROR que refleja el fracaso para inicializar o iniciar la transacción. |
ViewRequest
virtual WEAVE_ERROR ViewRequest( ReferencedTLVData & aPathList, uint16_t aTxnId, uint32_t aTimeout )
Solicite una vista de los datos del editor predeterminado.
Solicite una vista de los datos que residen y administran el editor "predeterminado", es decir, el primer (o único) editor en la tabla de enlace del cliente.
Detalles | |||||||
---|---|---|---|---|---|---|---|
Parámetros |
| ||||||
Valores devueltos |
| ||||||
Devoluciones | De lo contrario, un WEAVE_ERROR que refleja el fracaso para inicializar o iniciar la transacción. |
UpdateRequest
virtual WEAVE_ERROR UpdateRequest( const uint64_t & aDestinationId, ReferencedTLVData & aDataList, uint16_t aTxnId, uint32_t aTimeout )
Solicite una actualización de los datos publicados.
Solicite que un editor remoto actualice los datos bajo administración.
Detalles | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parámetros |
| ||||||||
Devoluciones | WEAVE_NO_ERROR el éxito o WEAVE_ERROR_NO_MEMORY si una transacción de actualización no se ha podido asignar. De lo contrario, devolver un WEAVE_ERROR que refleja un fallo de actualización. |
UpdateRequest
virtual WEAVE_ERROR UpdateRequest( ReferencedTLVData & aDataList, uint16_t aTxnId, uint32_t aTimeout )
Solicite una actualización de los datos del editor predeterminado.
Solicite que un editor remoto actualice los datos bajo administración. Esta versión dirige la solicitud al editor que es el destino del enlace predeterminado del cliente.
Detalles | |||||||
---|---|---|---|---|---|---|---|
Parámetros |
| ||||||
Devoluciones | WEAVE_NO_ERROR el éxito o WEAVE_ERROR_NO_MEMORY si una transacción de actualización no se ha podido asignar. De lo contrario, devolver un WEAVE_ERROR que refleja un fallo de actualización. |
Atributos protegidos
mUpdatePool
Update mUpdatePool[kUpdatePoolSize]
mViewPool
View mViewPool[kViewPoolSize]
Funciones publicas
CancelTransactionRequest
WEAVE_ERROR CancelTransactionRequest( uint16_t aTxnId, WEAVE_ERROR aError )
Solicite que se cancele una transacción en ejecución.
Este método no genera tráfico de red, solo libera los recursos asignados para las transacciones especificadas
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
| ||||
Devoluciones | WEAVE_NO_ERROR en caso de éxito o una WEAVE_ERROR que refleja un fracaso de cancelar la transacción. |
Claro
virtual void Clear( void )
Desactive el estado interno asociado con un DMClient objeto.
En particular, este método borra todos los grupos de transacciones de los clientes. Para los clientes que han estado en uso el Finalizar () método es preferible, ya que también se cancela suscripciones y se limpia la transacción y tablas de unión.
Ver también:Finalizar()
DMClient
DMClient( void )
Finalizar
virtual void Finalize( void )
Cerrar una operación DMClient .
Borra todo el estado operativo asociado con el cliente y elimina todas las suscripciones relacionadas del notificador. Después de llamar a Finalizar () un DMClient puede reinicializarse mediante una llamada telefónica Init (). Finalize () es invocado por el DMClient destructor, pero puede ser llamado en el caso en que un DMClient requiere limpieza, por ejemplo, en caso de fallo o cierre temporal, pero puede necesitar ser reconstituido en algún momento posterior.
Indicación incompleta
virtual void IncompleteIndication( Binding *aBinding, StatusReport & aReport )
Manejar el "incompleto" de una encuadernación en uso por el cliente.
Cuando un enlace falla inesperadamente, por ejemplo, si se cierra la conexión involucrada en el enlace, se llama a este método.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
|
~ DMClient
virtual ~DMClient( void )
El destructor para DMClient objetos.
Borra todo el estado interno y, si es necesario, cancela las suscripciones pendientes.
Funciones protegidas
Nueva actualización
Update * NewUpdate( void )
Nueva vista
View * NewView( void )