O Google tem o compromisso de promover a igualdade racial para as comunidades negras. Saiba como.

nl::Weave::Perfis::BDX_Development::BdxProtocol

Resumo

Functions

HandleConnectionClosed(ExchangeContext *anEc, WeaveConnection *aCon, WEAVE_ERROR aConErr)
void
Gerenciador de quando a conexão é encerrada.
HandleKeyError(ExchangeContext *anEc, WEAVE_ERROR aKeyErr)
void
Gerenciador de quando a chave usada para criptografar e autenticar mensagens do Weave não pode mais ser usada.
HandleResponse(ExchangeContext *anEc, const IPPacketInfo *aPktInfo, const WeaveMessageInfo *aWeaveMsgInfo, uint32_t aProfileId, uint8_t aMessageType, PacketBuffer *aPacketBuffer)
void
O principal gerenciador de mensagens que chegam na troca BDX.
HandleResponseNotAccepted(BDXTransfer & aXfer, uint32_t aProfileId, uint8_t aMessageType, PacketBuffer *aPacketBuffer)
HandleResponseReceive(BDXTransfer & aXfer, uint32_t aProfileId, uint8_t aMessageType, PacketBuffer *aPacketBuffer)
HandleResponseTimeout(ExchangeContext *anEc)
void
Gerenciador de quando o tempo limite é atingido aguardando uma resposta.
HandleResponseTransmit(BDXTransfer & aXfer, uint32_t aProfileId, uint8_t aMessageType, PacketBuffer *aPacketBuffer)
HandleSendError(ExchangeContext *anEc, WEAVE_ERROR aSendErr, void *aMsgCtxt)
void
Gerenciador de quando a mensagem WRMP que enviamos não foi confirmada.
InitBdxReceive(BDXTransfer & aXfer, bool aICanDrive, bool aUCanDrive, bool aAsyncOk, ReferencedTLVData *aMetaData)
InitBdxSend(BDXTransfer & aXfer, bool aICanDrive, bool aUCanDrive, bool aAsyncOk, ReferencedTLVData *aMetaData)
InitBdxSend(BDXTransfer & aXfer, bool aICanDrive, bool aUCanDrive, bool aAsyncOk, SendInit::MetaDataTLVWriteCallback aMetaDataWriteCallback, void *aMetaDataAppState)
SendBadBlockCounterStatusReport(BDXTransfer & aXfer)
SendBlockAckV1(BDXTransfer & aXfer)
Essa função envia uma mensagem BlockAckV1 para o BDXTransfer fornecido.
SendBlockEOFAckV1(BDXTransfer & aXfer)
Essa função envia uma mensagem BlockEOFAckV1 para o BDXTransfer fornecido.
SendBlockQuery(BDXTransfer & aXfer)
SendBlockQueryV1(BDXTransfer & aXfer)
Essa função envia uma mensagem BlockQueryV1 para o BDXTransfer fornecido.
SendNextBlock(BDXTransfer & aXfer)
SendNextBlockV1(BDXTransfer & aXfer)
Essa função envia o próximo BlockSendV1 recuperado chamando o BDXTransfer's GetBlockHandler.
SendStatusReport(ExchangeContext *anEc, uint32_t aProfileId, uint16_t aStatusCode)
void
Envia uma mensagem de relatório de status com o ID do perfil, o código de status e o contexto da troca associados.
SendTransferError(ExchangeContext *anEc, uint32_t aProfileId, uint16_t aStatusCode)
void

Functions

HandleConnectionClosed

void HandleConnectionClosed(
  ExchangeContext *anEc,
  WeaveConnection *aCon,
  WEAVE_ERROR aConErr
)

Gerenciador de quando a conexão é encerrada.

Chama o gerenciador de erros da transferência associada e encerra a transferência.

Detalhes
Parâmetros
[in] anEc
Contexto da troca que detectou uma conexão fechada. Podemos encontrar o BDXTransfer associado
[in] aCon
A conexão do Weave, não usada na função real
[in] aConErr
Erro associado ao fechamento da conexão

HandleKeyError

void HandleKeyError(
  ExchangeContext *anEc,
  WEAVE_ERROR aKeyErr
)

Gerenciador de quando a chave usada para criptografar e autenticar mensagens do Weave não pode mais ser usada.

Detalhes
Parâmetros
[in] anEc
Contexto da troca que detectou um erro de chave. Encontre o BDXTransfer associado
[in] aKeyErr
Erro associado à chave que não pode mais ser usada

HandleResponse

void HandleResponse(
  ExchangeContext *anEc,
  const IPPacketInfo *aPktInfo,
  const WeaveMessageInfo *aWeaveMsgInfo,
  uint32_t aProfileId,
  uint8_t aMessageType,
  PacketBuffer *aPacketBuffer
)

O principal gerenciador de mensagens que chegam na troca BDX.

Ele basicamente atua como um roteador para extrair as informações e os dados do cabeçalho BDX apropriados, enviando o gerenciador apropriado para atuar nesse objeto.

Detalhes
Parâmetros
[in] anEc
O contexto da troca, caso necessário
[in] aPktInfo
Não utilizado, mas precisa corresponder ao protótipo da função
[in] aWeaveMsgInfo
Tecer informações da mensagem
[in] aProfileId
ID do perfil no qual a mensagem é definida.
[in] aMessageType
Tipo de mensagem desse perfil
[in] aPacketBuffer
A própria mensagem compactada

HandleResponseNotAccepted

WEAVE_ERROR HandleResponseNotAccepted(
  BDXTransfer & aXfer,
  uint32_t aProfileId,
  uint8_t aMessageType,
  PacketBuffer *aPacketBuffer
)

HandleResponseReceive

WEAVE_ERROR HandleResponseReceive(
  BDXTransfer & aXfer,
  uint32_t aProfileId,
  uint8_t aMessageType,
  PacketBuffer *aPacketBuffer
)

HandleResponseTimeout

void HandleResponseTimeout(
  ExchangeContext *anEc
)

Gerenciador de quando o tempo limite é atingido aguardando uma resposta.

Encerra a transferência que atingiu o tempo limite e chama o gerenciador de erros desse usuário.

Detalhes
Parâmetros
[in] anEc
Contexto da troca em que podemos encontrar o BDXTransfer

HandleResponseBroadcast

WEAVE_ERROR HandleResponseTransmit(
  BDXTransfer & aXfer,
  uint32_t aProfileId,
  uint8_t aMessageType,
  PacketBuffer *aPacketBuffer
)

HandleSendError

void HandleSendError(
  ExchangeContext *anEc,
  WEAVE_ERROR aSendErr,
  void *aMsgCtxt
)

Gerenciador de quando a mensagem WRMP que enviamos não foi confirmada.

Detalhes
Parâmetros
[in] anEc
Contexto da troca que teve uma mensagem não reconhecida. Encontre o BDXTransfer associado
[in] aSendErr
Erro associado à falha de envio da mensagem
[in] aMsgCtxt
Um contexto de mensagem arbitrário associado à mensagem não confirmada.

InitBdxReceive

WEAVE_ERROR InitBdxReceive(
  BDXTransfer & aXfer,
  bool aICanDrive,
  bool aUCanDrive,
  bool aAsyncOk,
  ReferencedTLVData *aMetaData
)

InitBdxSend

WEAVE_ERROR InitBdxSend(
  BDXTransfer & aXfer,
  bool aICanDrive,
  bool aUCanDrive,
  bool aAsyncOk,
  ReferencedTLVData *aMetaData
)

InitBdxSend

WEAVE_ERROR InitBdxSend(
  BDXTransfer & aXfer,
  bool aICanDrive,
  bool aUCanDrive,
  bool aAsyncOk,
  SendInit::MetaDataTLVWriteCallback aMetaDataWriteCallback,
  void *aMetaDataAppState
)

SendBadBlockCounterStatusReport

WEAVE_ERROR SendBadBlockCounterStatusReport(
  BDXTransfer & aXfer
)

SendBlockAckV1.

WEAVE_ERROR SendBlockAckV1(
  BDXTransfer & aXfer
)

Essa função envia uma mensagem BlockAckV1 para o BDXTransfer fornecido.

O número do bloco confirmado é igual a aXfer.mBlockCounter: 1, já que essa função só pode ser chamada depois do estado de transferência avançada para o próximo contador.

Detalhes
Parâmetros
[in] aXfer
Para BDXTransfer, estamos enviando um BlockAck.
Valores de retorno
WEAVE_NO_ERROR
Se a mensagem foi enviada
WEAVE_ERROR_NO_MEMORY
Se não houver PacotesBuffers disponíveis.

SendBlockEOFAckV1

WEAVE_ERROR SendBlockEOFAckV1(
  BDXTransfer & aXfer
)

Essa função envia uma mensagem BlockEOFAckV1 para o BDXTransfer fornecido.

O número do bloco confirmado é igual a aXfer.mBlockCounter.

Detalhes
Parâmetros
[in] aXfer
O BDXTransfer está recebendo um BlockEOFAck.
Valores de retorno
WEAVE_NO_ERROR
Se a mensagem foi enviada
WEAVE_ERROR_NO_MEMORY
Se não houver PacotesBuffers disponíveis.

SendBlockQuery

WEAVE_ERROR SendBlockQuery(
  BDXTransfer & aXfer
)

SendBlockQueryV1

WEAVE_ERROR SendBlockQueryV1(
  BDXTransfer & aXfer
)

Essa função envia uma mensagem BlockQueryV1 para o BDXTransfer fornecido.

O número de bloqueio solicitado é igual a aXfer.mBlockCounter.

Detalhes
Parâmetros
[in] aXfer
Para BDXTransfer, estamos enviando uma BlockQuery.
Valores de retorno
WEAVE_NO_ERROR
Se a mensagem foi enviada
WEAVE_ERROR_NO_MEMORY
Se não houver PacotesBuffers disponíveis.

SendNextBlock

WEAVE_ERROR SendNextBlock(
  BDXTransfer & aXfer
)

SendNextBlockV1

WEAVE_ERROR SendNextBlockV1(
  BDXTransfer & aXfer
)

Essa função envia o próximo BlockSendV1 recuperado chamando o BDXTransfer's GetBlockHandler.

Detalhes
Parâmetros
[in] aXfer
O BDXTransfer cujo GetBlockHandler é chamado para receber o próximo bloco antes de enviá-lo usando o ExchangeContext associado
Valores de retorno
WEAVE_ERROR_INCORRECT_STATE
Se GetBlockHandler for NULL

EnviarStatusStatus

void SendStatusReport(
  ExchangeContext *anEc,
  uint32_t aProfileId,
  uint16_t aStatusCode
)

Envia uma mensagem de relatório de status com o ID do perfil, o código de status e o contexto da troca associados.

Detalhes
Parâmetros
[in] anEc
O contexto da troca em que devemos enviar a mensagem do relatório de status
[in] aProfileId
ID do perfil
[in] aStatusCode
Código associado ao erro de transferência

SendTransferError

void SendTransferError(
  ExchangeContext *anEc,
  uint32_t aProfileId,
  uint16_t aStatusCode
)