En Google, luchamos por la equidad racial de la comunidad negra. Más información
Organiza tus páginas con colecciones Guarda y categoriza el contenido según tus preferencias.

nl :: Tejido:: WeaveExchangeManager

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

Esta clase se usa para administrar ExchangeContexts con otros nodos de Weave.

Resumen

Funciona en nombre de las capas superiores, creando ExchangeContexts y manejando el registro / anulación del registro de controladores de mensajes no solicitados.

Constructores y Destructores

WeaveExchangeManager (void)
Constructor de la WeaveExchangeManager clase.

Tipos públicos

State {
kState_NotInitialized = 0,
kState_Initialized = 1
}
enumeración

Atributos públicos

FabricState
[SOLO LEER] El objeto FabricState asociado.
MessageLayer
[READ ONLY] El asociada WeaveMessageLayer objeto.
State
uint8_t
[READ ONLY] El estado de la WeaveExchangeManager objeto.

Funciones publicas

AllowUnsolicitedMessages ( WeaveConnection *con)
void
Permitir que se reciban mensajes no solicitados en la conexión especificada.
ClearMsgCounterSyncReq (uint64_t peerNodeId)
void
Borre el indicador MsgCounterSyncReq para todos los mensajes pendientes para ese par.
FindContext (uint64_t peerNodeId, WeaveConnection *con, void *appState, bool isInitiator)
Encuentra la ExchangeContext de un grupo coinciden con un conjunto dado de parámetros.
Init ( WeaveMessageLayer *msgLayer)
Inicializar el WeaveExchangeManager objeto.
NewBinding (Binding::EventCallback eventCallback, void *appState)
Asignar una nueva encuadernación con los argumentos suministrados.
NewContext (const uint64_t & peerNodeId, void *appState)
Crea un nuevo ExchangeContext con un nodo de la armadura dado pares especificado por el identificador de nodo de grupo.
NewContext (const uint64_t & peerNodeId, const IPAddress & peerAddr, void *appState)
Crea un nuevo ExchangeContext con un nodo de la armadura dado pares especificado por la dirección IP identificador de nodo de pares y pares.
NewContext (const uint64_t & peerNodeId, const IPAddress & peerAddr, uint16_t peerPort, InterfaceId sendIntfId, void *appState)
Crea un nuevo ExchangeContext con un nodo de la armadura dado pares especificado por el identificador de pares de nodo, dirección IP de pares, y puerto de destino en una interfaz especificada.
NewContext ( WeaveConnection *con, void *appState)
Crea un nuevo ExchangeContext con un nodo de grupo de la armadura dada durante un determinado WeaveConnection .
RegisterUnsolicitedMessageHandler (uint32_t profileId, ExchangeContext::MessageReceiveFunct handler, void *appState)
Registre un controlador de mensajes no solicitado para un identificador de perfil determinado.
RegisterUnsolicitedMessageHandler (uint32_t profileId, ExchangeContext::MessageReceiveFunct handler, bool allowDups, void *appState)
Registre un controlador de mensajes no solicitado para un identificador de perfil determinado.
RegisterUnsolicitedMessageHandler (uint32_t profileId, uint8_t msgType, ExchangeContext::MessageReceiveFunct handler, void *appState)
Registre un controlador de mensajes no solicitado para un identificador de perfil y tipo de mensaje determinados.
RegisterUnsolicitedMessageHandler (uint32_t profileId, uint8_t msgType, ExchangeContext::MessageReceiveFunct handler, bool allowDups, void *appState)
Registre un controlador de mensajes no solicitado para un identificador de perfil y tipo de mensaje determinados.
RegisterUnsolicitedMessageHandler (uint32_t profileId, uint8_t msgType, WeaveConnection *con, ExchangeContext::MessageReceiveFunct handler, void *appState)
Registre un controlador de mensajes no solicitado para un identificador de perfil determinado, tipo de mensaje en una conexión Weave específica.
RegisterUnsolicitedMessageHandler (uint32_t profileId, uint8_t msgType, WeaveConnection *con, ExchangeContext::MessageReceiveFunct handler, bool allowDups, void *appState)
Registre un controlador de mensajes no solicitado para un identificador de perfil determinado, tipo de mensaje en una conexión Weave específica.
Shutdown (void)
UnregisterUnsolicitedMessageHandler (uint32_t profileId)
Anule el registro de un controlador de mensajes no solicitado para un identificador de perfil determinado.
UnregisterUnsolicitedMessageHandler (uint32_t profileId, uint8_t msgType)
Anule el registro de un controlador de mensajes no solicitado para un identificador de perfil y un tipo de mensaje determinados.
UnregisterUnsolicitedMessageHandler (uint32_t profileId, uint8_t msgType, WeaveConnection *con)
Anule el registro de un controlador de mensajes no solicitado para un identificador de perfil, tipo de mensaje y conexión Weave determinados.

Tipos públicos

Expresar

 State
Propiedades
kState_Initialized

Se utiliza para indicar que el WeaveExchangeManager se inicializa.

kState_NotInitialized

Se utiliza para indicar que el WeaveExchangeManager no se ha inicializado.

Atributos públicos

Estado de la tela

WeaveFabricState * FabricState

[SOLO LEER] El objeto FabricState asociado.

MessageLayer

WeaveMessageLayer * MessageLayer

[READ ONLY] El asociada WeaveMessageLayer objeto.

Expresar

uint8_t State

[READ ONLY] El estado de la WeaveExchangeManager objeto.

Funciones publicas

AllowUnsolicitedMessages

void AllowUnsolicitedMessages(
  WeaveConnection *con
)

Permitir que se reciban mensajes no solicitados en la conexión especificada.

Este método establece el controlador de recepción de mensajes en la conexión Weave dada.

Detalles
Parámetros
[in] con
Un puntero al objeto de conexión Weave.

ClearMsgCounterSyncReq

void ClearMsgCounterSyncReq(
  uint64_t peerNodeId
)

Borre el indicador MsgCounterSyncReq para todos los mensajes pendientes para ese par.

Detalles
Parámetros
[in] peerNodeId
ID de nodo del nodo de destino.

FindContext

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

Encuentra la ExchangeContext de un grupo coinciden con un conjunto dado de parámetros.

Detalles
Parámetros
[in] peerNodeId
El identificador de nodo de los pares con los que la ExchangeContext se ha establecido.
[in] con
Un puntero a la WeaveConnection objeto que representa la conexión TCP con los pares.
[in] appState
Un puntero a un objeto de capa superior que contiene el estado del contexto.
[in] isInitiator
Indicador booleano de si el nodo local es el iniciador del intercambio.
Devoluciones
Un puntero a la ExchangeContext objeto que coincide con los parámetros proporcionados en caso de éxito, NULL en ningún partido.

En eso

WEAVE_ERROR Init(
  WeaveMessageLayer *msgLayer
)

Inicializar el WeaveExchangeManager objeto.

Durante la vida útil de esta instancia, este método se invoca una vez después de la construcción del objeto hasta que se realiza una llamada a Shutdown para terminar la instancia.

Detalles
Parámetros
[in] msgLayer
Un puntero a la WeaveMessageLayer objeto.
Valores devueltos
WEAVE_ERROR_INCORRECT_STATE
Si el estado no es igual a kState_NotInitialized.
WEAVE_NO_ERROR
Sobre el éxito.

NewBinding

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

Asignar una nueva encuadernación con los argumentos suministrados.

Detalles
Parámetros
[in] eventCallback
Un puntero de función que se utilizará para la devolución de llamada de eventos.
[in] appState
Un puntero a algún contexto que se llevaría a cabo en la devolución de llamada del evento más tarde
Devoluciones
Un puntero a la recién asignada Encuadernación , o NULL si la piscina se ha agotado

NewContext

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

Crea un nuevo ExchangeContext con un nodo de la armadura dado pares especificado por el identificador de nodo de grupo.

Detalles
Parámetros
[in] peerNodeId
El identificador de nodo de los pares con los que la ExchangeContext se está estableciendo.
[in] appState
Un puntero a un objeto de capa superior que contiene el estado del contexto.
Devoluciones
Un puntero a la creada ExchangeContext objeto En caso de éxito. De lo contrario, NULL si no se puede asignar ningún objeto o si no está disponible.

NewContext

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

Crea un nuevo ExchangeContext con un nodo de la armadura dado pares especificado por la dirección IP identificador de nodo de pares y pares.

Detalles
Parámetros
[in] peerNodeId
El identificador de nodo de los pares con los que la ExchangeContext se está estableciendo.
[in] peerAddr
La dirección IP del nodo del mismo nivel.
[in] appState
Un puntero a un objeto de capa superior que contiene el estado del contexto.
Devoluciones
Un puntero a la creada ExchangeContext objeto En caso de éxito. De lo contrario, NULL si no se puede asignar ningún objeto o si no está disponible.

NewContext

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

Crea un nuevo ExchangeContext con un nodo de la armadura dado pares especificado por el identificador de pares de nodo, dirección IP de pares, y puerto de destino en una interfaz especificada.

Detalles
Parámetros
[in] peerNodeId
El identificador de nodo de los pares con los que la ExchangeContext se está estableciendo.
[in] peerAddr
La dirección IP del nodo del mismo nivel.
[in] peerPort
El puerto del nodo del mismo nivel.
[in] sendIntfId
La interfaz que se utilizará para enviar mensajes Weave en este intercambio.
[in] appState
Un puntero a un objeto de capa superior que contiene el estado del contexto.
Devoluciones
Un puntero a la creada ExchangeContext objeto En caso de éxito. De lo contrario, NULL si no se puede asignar ningún objeto o si no está disponible.

NewContext

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

Crea un nuevo ExchangeContext con un nodo de grupo de la armadura dada durante un determinado WeaveConnection .

Detalles
Parámetros
[in] con
Un puntero a la WeaveConnection objeto que representa la conexión TCP con los pares.
[in] appState
Un puntero a un objeto de capa superior que contiene el estado del contexto.
Devoluciones
Un puntero a la creada ExchangeContext objeto En caso de éxito. De lo contrario, NULL si no se puede asignar ningún objeto o si no está disponible.

RegisterUnsolicitedMessageHandler

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

Registre un controlador de mensajes no solicitado para un identificador de perfil determinado.

Este controlador se invocará para todos los mensajes del perfil dado.

Detalles
Parámetros
[in] profileId
El identificador de perfil del mensaje recibido.
[in] handler
El controlador de mensajes no solicitados.
[in] appState
Un puntero a un objeto de capa superior que contiene el estado del contexto.
Valores devueltos
WEAVE_ERROR_TOO_MANY_UNSOLICITED_MESSAGE_HANDLERS
Si el grupo de controladores de mensajes no solicitados está lleno y no se puede asignar uno nuevo.
WEAVE_NO_ERROR
Sobre el éxito.

RegisterUnsolicitedMessageHandler

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

Registre un controlador de mensajes no solicitado para un identificador de perfil determinado.

Este controlador se invocará para todos los mensajes del perfil dado.

Detalles
Parámetros
[in] profileId
El identificador de perfil del mensaje recibido.
[in] handler
El controlador de mensajes no solicitados.
[in] allowDups
Indicador booleano de si se permiten mensajes duplicados para un perfil determinado.
[in] appState
Un puntero a un objeto de capa superior que contiene el estado del contexto.
Valores devueltos
WEAVE_ERROR_TOO_MANY_UNSOLICITED_MESSAGE_HANDLERS
Si el grupo de controladores de mensajes no solicitados está lleno y no se puede asignar uno nuevo.
WEAVE_NO_ERROR
Sobre el éxito.

RegisterUnsolicitedMessageHandler

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

Registre un controlador de mensajes no solicitado para un identificador de perfil y tipo de mensaje determinados.

Detalles
Parámetros
[in] profileId
El identificador de perfil del mensaje recibido.
[in] msgType
El tipo de mensaje del perfil correspondiente.
[in] handler
El controlador de mensajes no solicitados.
[in] appState
Un puntero a un objeto de capa superior que contiene el estado del contexto.
Valores devueltos
WEAVE_ERROR_TOO_MANY_UNSOLICITED_MESSAGE_HANDLERS
Si el grupo de controladores de mensajes no solicitados está lleno y no se puede asignar uno nuevo.
WEAVE_NO_ERROR
Sobre el éxito.

RegisterUnsolicitedMessageHandler

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

Registre un controlador de mensajes no solicitado para un identificador de perfil y tipo de mensaje determinados.

Detalles
Parámetros
[in] profileId
El identificador de perfil del mensaje recibido.
[in] msgType
El tipo de mensaje del perfil correspondiente.
[in] handler
El controlador de mensajes no solicitados.
[in] allowDups
Indicador booleano de si se permiten mensajes duplicados para un identificador de perfil y tipo de mensaje determinados.
[in] appState
Un puntero a un objeto de capa superior que contiene el estado del contexto.
Valores devueltos
WEAVE_ERROR_TOO_MANY_UNSOLICITED_MESSAGE_HANDLERS
Si el grupo de controladores de mensajes no solicitados está lleno y no se puede asignar uno nuevo.
WEAVE_NO_ERROR
Sobre el éxito.

RegisterUnsolicitedMessageHandler

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

Registre un controlador de mensajes no solicitado para un identificador de perfil determinado, tipo de mensaje en una conexión Weave específica.

Detalles
Parámetros
[in] profileId
El identificador de perfil del mensaje recibido.
[in] msgType
El tipo de mensaje del perfil correspondiente.
[in] con
Un puntero a la WeaveConnection objeto que representa la conexión TCP con los pares.
[in] handler
El controlador de mensajes no solicitados.
[in] appState
Un puntero a un objeto de capa superior que contiene el estado del contexto.
Valores devueltos
WEAVE_ERROR_TOO_MANY_UNSOLICITED_MESSAGE_HANDLERS
Si el grupo de controladores de mensajes no solicitados está lleno y no se puede asignar uno nuevo.
WEAVE_NO_ERROR
Sobre el éxito.

RegisterUnsolicitedMessageHandler

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

Registre un controlador de mensajes no solicitado para un identificador de perfil determinado, tipo de mensaje en una conexión Weave específica.

Detalles
Parámetros
[in] profileId
El identificador de perfil del mensaje recibido.
[in] msgType
El tipo de mensaje del perfil correspondiente.
[in] con
Un puntero a la WeaveConnection objeto que representa la conexión TCP con los pares.
[in] handler
El controlador de mensajes no solicitados.
[in] allowDups
Indicador booleano de si se permiten mensajes duplicados para un identificador de perfil dado, tipo de mensaje en una conexión Weave especificada.
[in] appState
Un puntero a un objeto de capa superior que contiene el estado del contexto.
Valores devueltos
WEAVE_ERROR_TOO_MANY_UNSOLICITED_MESSAGE_HANDLERS
Si el grupo de controladores de mensajes no solicitados está lleno y no se puede asignar uno nuevo.
WEAVE_NO_ERROR
Sobre el éxito.

Cerrar

WEAVE_ERROR Shutdown(
  void
)

Apagar el WeaveExchangeManager .

Esto termina esta instancia del objeto y libera todos los recursos retenidos.

Detalles
Devoluciones
WEAVE_NO_ERROR incondicionalmente.

Anular registroUnsolicitedMessageHandler

WEAVE_ERROR UnregisterUnsolicitedMessageHandler(
  uint32_t profileId
)

Anule el registro de un controlador de mensajes no solicitado para un identificador de perfil determinado.

Detalles
Parámetros
[in] profileId
El identificador de perfil del mensaje recibido.
Valores devueltos
WEAVE_ERROR_NO_UNSOLICITED_MESSAGE_HANDLER
Si no se encuentra el manejador de mensajes no solicitado coincidente.
WEAVE_NO_ERROR
Sobre el éxito.

Anular registroUnsolicitedMessageHandler

WEAVE_ERROR UnregisterUnsolicitedMessageHandler(
  uint32_t profileId,
  uint8_t msgType
)

Anule el registro de un controlador de mensajes no solicitado para un identificador de perfil y un tipo de mensaje determinados.

Detalles
Parámetros
[in] profileId
El identificador de perfil del mensaje recibido.
[in] msgType
El tipo de mensaje del perfil correspondiente.
Valores devueltos
WEAVE_ERROR_NO_UNSOLICITED_MESSAGE_HANDLER
Si no se encuentra el manejador de mensajes no solicitado coincidente.
WEAVE_NO_ERROR
Sobre el éxito.

Anular registroUnsolicitedMessageHandler

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

Anule el registro de un controlador de mensajes no solicitado para un identificador de perfil, tipo de mensaje y conexión Weave determinados.

Detalles
Parámetros
[in] profileId
El identificador de perfil del mensaje recibido.
[in] msgType
El tipo de mensaje del perfil correspondiente.
[in] con
Un puntero a la WeaveConnection objeto que representa la conexión TCP con los pares.
Valores devueltos
WEAVE_ERROR_NO_UNSOLICITED_MESSAGE_HANDLER
Si no se encuentra el manejador de mensajes no solicitado coincidente.
WEAVE_NO_ERROR
Sobre el éxito.

WeaveExchangeManager

 WeaveExchangeManager(
  void
)

Constructor de la WeaveExchangeManager clase.

Establece el estado en kState_NotInitialized.