O Google tem o compromisso de promover a igualdade racial para as comunidades negras. Saiba como.
Esta página foi traduzida pela API Cloud Translation.
Switch to English

nl :: Tecer:: Perfis :: BDX_Development

Este namespace inclui todas as interfaces dentro do Weave para o perfil Bulk Data Transfer (BDX) que estão ativamente em desenvolvimento e não devem ser usadas para uso em produção.

Resumo

Enumerações

@80 enum
@81 enum
@82 enum
@83 enum

Typedefs

BdxClient typedef
BdxServer typedef
ErrorHandler )(BDXTransfer *aXfer, WEAVE_ERROR anErrorCode) typedef
void(*
Esse manipulador é chamado sempre que um erro Weave é encontrado e não pode ser retornado diretamente por meio de códigos de erro para o fluxo de controle definido pelo aplicativo do usuário.
GetBlockHandler )(BDXTransfer *aXfer, uint64_t *aLength, uint8_t **aDataBlock, bool *aLastBlock) typedef
void(*
Get a block of data to be transmitted.
PutBlockHandler )(BDXTransfer *aXfer, uint64_t aLength, uint8_t *aDataBlock, bool aLastBlock) typedef
void(*
Manipula o bloco de dados apontado por aDataBlock de comprimento aLength.
ReceiveAcceptHandler )(BDXTransfer *aXfer, ReceiveAccept *aReceiveAcceptMsg) typedef
Retorno de chamada invocado quando um ReceiveInit enviado anteriormente é aceito pelo destino.
ReceiveInitHandler )(BDXTransfer *aXfer, ReceiveInit *aReceiveInitMsg) typedef
uint16_t(*
Retorno de chamada invocado ao receber uma mensagem ReceiveInit .
RejectHandler )(BDXTransfer *aXfer, StatusReport *aReport) typedef
void(*
Chamado se uma das mensagens iniciais anteriores foi rejeitada pelo destino.
SendAcceptHandler )(BDXTransfer *aXfer, SendAccept *aSendAcceptMsg) typedef
Retorno de chamada invocado quando um SendInit enviado anteriormente é aceito pelo destino.
SendInitHandler )(BDXTransfer *aXfer, SendInit *aSendInitMsg) typedef
uint16_t(*
Retorno de chamada invocado ao receber uma mensagem SendInit .
XferDoneHandler )(BDXTransfer *aXfer) typedef
void(*
Trate os casos em que a transferência é concluída.
XferErrorHandler )(BDXTransfer *aXfer, StatusReport *aXferError) typedef
void(*
Trate as mensagens TransferError recebidas ou enviadas por BDX.

Funções

GetBDXAckFlag ( ExchangeContext *anEc)
uint16_t
GetBDXAckFlag retorna o sinalizador apropriado para o campo RequestAck dependendo da conexão do contexto de troca (sem confirmação de solicitação para TCP) e baseado no suporte de tempo de compilação para WRMP.

Aulas

nl :: Weave :: Profiles :: BDX_Development :: BdxNode
nl :: Weave :: Profiles :: BDX_Development :: BlockAck

A mensagem BlockAck é usada para reconhecer um bloco de dados.

nl :: Weave :: Profiles :: BDX_Development :: BlockAckV1

A mensagem BlockAckV1 é usada para reconhecer um bloco de dados.

nl :: Weave :: Profiles :: BDX_Development :: BlockEOF

A mensagem BlockEOF é usada para transferir o último bloco de dados do emissor para o receptor.

nl :: Weave :: Profiles :: BDX_Development :: BlockEOFAck

A mensagem BlockEOFAck é usada para reconhecer o último bloco de dados.

nl :: Weave :: Profiles :: BDX_Development :: BlockEOFAckV1

A mensagem BlockEOFAckV1 é usada para reconhecer o último bloco de dados.

nl :: Weave :: Profiles :: BDX_Development :: BlockEOFV1

A mensagem BlockEOFV1 é usada para transferir o último bloco de dados do emissor para o receptor.

nl :: Weave :: Profiles :: BDX_Development :: BlockQuery

A mensagem BlockQuery é usada para solicitar que um bloco de dados seja transferido do emissor para o receptor.

nl :: Weave :: Profiles :: BDX_Development :: BlockQueryV1

A mensagem BlockQueryV1 é usada para solicitar que um bloco de dados seja transferido do emissor para o receptor.

nl :: Weave :: Profiles :: BDX_Development :: BlockSend

A mensagem BlockSend é usada para transferir um bloco de dados do remetente para o destinatário.

nl :: Weave :: Profiles :: BDX_Development :: BlockSendV1

A mensagem BlockSendV1 é usada para transferir um bloco de dados do remetente para o destinatário.

nl :: Weave :: Profiles :: BDX_Development :: ReceiveAccept

A mensagem ReceiveAccept é usada para aceitar uma troca proposta quando o receptor é o iniciador.

nl :: Weave :: Profiles :: BDX_Development :: ReceiveInit

A mensagem ReceiveInit é usada para iniciar uma troca quando o receptor é o iniciador.

nl :: Weave :: Profiles :: BDX_Development :: ReceiveReject

A mensagem ReceiveReject é usada para rejeitar uma troca proposta quando o remetente é o iniciador.

nl :: Weave :: Profiles :: BDX_Development :: SendAccept

A mensagem SendAccept é usada para aceitar uma troca proposta quando o remetente é o iniciador.

nl :: Weave :: Profiles :: BDX_Development :: SendInit

A mensagem SendInit é usada para iniciar uma troca quando o remetente é o iniciador.

nl :: Weave :: Profiles :: BDX_Development :: SendReject

A mensagem SendReject é usada para rejeitar uma troca proposta quando o remetente é o iniciador.

nl :: Weave :: Profiles :: BDX_Development :: TransferError

A mensagem de erro é usada para relatar um erro e abortar uma troca.

Structs

nl :: Weave :: Profiles :: BDX_Development :: BDXHandlers
nl :: Weave :: Profiles :: BDX_Development :: BDXTransfer

Essa estrutura contém membros de dados que representam uma transferência BDX ativa.

Namespaces

nl :: Weave :: Profiles :: BDX_Development :: BdxProtocol

Enumerações

@ 80

 @80

@ 81

 @81

@ 82

 @82

@ 83

 @83

Typedefs

BdxClient

BdxNode BdxClient

BdxServer

BdxNode BdxServer

ErrorHandler

void(* ErrorHandler)(BDXTransfer *aXfer, WEAVE_ERROR anErrorCode)

Esse manipulador é chamado sempre que um erro Weave é encontrado e não pode ser retornado diretamente por meio de códigos de erro para o fluxo de controle definido pelo aplicativo do usuário.

Ou seja, se ocorrer um erro em outro manipulador cuja assinatura tenha o tipo de retorno void (por exemplo, em resposta a uma mensagem Weave de entrada ou mesmo despachado pelo protocolo), este manipulador será chamado para que o usuário possa determinar se a transferência pode ser recuperada e continuar ou se eles devem chamar Shutdown (). Observe que é possível que ocorra um erro antes de uma BDXTransfer ser inicializada (por exemplo, muitos objetos de transferência já alocados). Nesse caso, o referido erro será registrado pelo Weave e o protocolo tratará da limpeza de qualquer estado necessário que tenha alocado.

Detalhes
Parâmetros
[in] aXfer
Ponteiro para o BDXTransfer associado a esta transferência
[in] anErrorCode
O código de erro que precisamos processar

GetBlockHandler

void(* GetBlockHandler)(BDXTransfer *aXfer, uint64_t *aLength, uint8_t **aDataBlock, bool *aLastBlock)

Get a block of data to be transmitted.

O chamador fornece o espaço de buffer (buffer e comprimento do buffer, passado por referência). Callee (aplicativo do usuário) DEVE usar o buffer fornecido, mas por razões de compatibilidade com versões anteriores, pode retornar seu próprio buffer. O Callee não deve fornecer mais do que aLength de bytes. No retorno, aLength contém o número real de bytes lidos no buffer.

Detalhes
Parâmetros
[in] aXfer
O BDXTransfer associado a esta transferência em andamento
[in,out] aLength
O comprimento dos dados lidos e armazenados neste bloco. Na chamada para a função contém o comprimento do buffer passado no aDataBlock . No retorno, a variável contém o comprimento dos dados realmente lidos.
[in,out] aDataBlock
O ponteiro para o bloco de dados. Na entrada, ele contém o buffer fornecido pela estrutura; o receptor pode usar esse espaço para preencher o buffer ou fornecer seu próprio espaço de buffer (para aplicativos de compatibilidade com versões anteriores). Os aplicativos que usam o buffer fornecido não devem assumir nenhum alinhamento.
[out] aLastBlock
Verdadeiro se o bloco deve ser enviado como BlockEOF e a transferência concluída, caso contrário, falso

PutBlockHandler

void(* PutBlockHandler)(BDXTransfer *aXfer, uint64_t aLength, uint8_t *aDataBlock, bool aLastBlock)

Manipula o bloco de dados apontado por aDataBlock de comprimento aLength.

Provavelmente, isso envolverá gravá-lo em um arquivo e fechar esse arquivo se isLastBlock for verdadeiro.

Detalhes
Parâmetros
[in] aXfer
O BDXTransfer associado a esta transferência em andamento
[in] aLength
O comprimento dos dados lidos e armazenados no bloco especificado
[in] aDataBlock
O bloco real de dados
[in] aLastBlock
Verdadeiro se o bloco foi recebido como BlockEOF e a transferência concluída, caso contrário, falso. Se verdadeiro, o programador provavelmente deve finalizar quaisquer identificadores de arquivo, tendo em mente que o XferDoneHandler será chamado após isso

ReceiveAcceptHandler

WEAVE_ERROR(* ReceiveAcceptHandler)(BDXTransfer *aXfer, ReceiveAccept *aReceiveAcceptMsg)

Retorno de chamada invocado quando um ReceiveInit enviado anteriormente é aceito pelo destino.

Você pode querer usar esta oportunidade para abrir arquivos ou alocar recursos para a transferência, caso não o tenha feito ao iniciá-la.

Detalhes
Parâmetros
[in] aXfer
Ponteiro para o BDXTransfer associado a esta transferência
[in] aReceiveAcceptMsg
Ponteiro para a mensagem ReceiveAccept que estamos processando

ReceiveInitHandler

uint16_t(* ReceiveInitHandler)(BDXTransfer *aXfer, ReceiveInit *aReceiveInitMsg)

Retorno de chamada invocado ao receber uma mensagem ReceiveInit .

Seu trabalho é determinar se você deseja aceitar o Recebimento e, em caso afirmativo, defina aXfer-> mIsAccepted = true para que o protocolo envie uma mensagem de aceitação ao iniciador. O objeto BDXTransfer é iniciado com as configurações padrão. Este é um bom lugar para anexar qualquer estado específico do aplicativo (identificadores de arquivo aberto, etc.) para aXfer-> mAppState. Você também deve anexar os manipuladores necessários para, por exemplo, manipulação de blocos ao objeto BDXTransfer neste ponto. Se um código de erro diferente de kStatus_Success for retornado, a transferência será considerada rejeitada e o protocolo tratará do envio de uma mensagem de rejeição com o código.

Detalhes
Parâmetros
[in] aXfer
Ponteiro para o BDXTransfer associado a esta transferência
[in] aReceiveInitMsg
Ponteiro para a mensagem ReceiveInit que estamos processando

RejectHandler

void(* RejectHandler)(BDXTransfer *aXfer, StatusReport *aReport)

Chamado se uma das mensagens iniciais anteriores foi rejeitada pelo destino.

Detalhes
Parâmetros
[in] aXfer
Ponteiro para o BDXTransfer associado a esta transferência
[in] aReport
Ponteiro para a rejeição da mensagem StatusReport que estamos processando

SendAcceptHandler

WEAVE_ERROR(* SendAcceptHandler)(BDXTransfer *aXfer, SendAccept *aSendAcceptMsg)

Retorno de chamada invocado quando um SendInit enviado anteriormente é aceito pelo destino.

Você pode usar esta oportunidade para abrir arquivos ou alocar recursos para a transferência, caso não o tenha feito ao iniciá-la.

Detalhes
Parâmetros
[in] aXfer
Ponteiro para o BDXTransfer associado a esta transferência
[in] aSendAcceptMsg
Ponteiro para a mensagem SendAccept que estamos processando

SendInitHandler

uint16_t(* SendInitHandler)(BDXTransfer *aXfer, SendInit *aSendInitMsg)

Retorno de chamada invocado ao receber uma mensagem SendInit .

Seu trabalho é determinar se você deseja aceitar SendInit e, em caso afirmativo, defina aXfer-> mIsAccepted = true para que o protocolo envie uma mensagem de aceitação ao iniciador. O objeto BDXTransfer é iniciado com as configurações padrão. Este é um bom lugar para anexar qualquer estado específico do aplicativo (identificadores de arquivo aberto, etc.) para aXfer-> mAppState. Você também deve anexar os manipuladores necessários para, por exemplo, manipulação de blocos ao objeto BDXTransfer neste ponto. Se um código de erro diferente de WEAVE_NO_ERROR for retornado, a transferência será considerada rejeitada e o protocolo tratará do envio de uma mensagem de rejeição com o código.

Detalhes
Parâmetros
[in] aXfer
Ponteiro para o BDXTransfer associado a esta transferência
[in] aSendInitMsg
Ponteiro para a mensagem SendInit que estamos processando

XferDoneHandler

void(* XferDoneHandler)(BDXTransfer *aXfer)

Trate os casos em que a transferência é concluída.

Detalhes
Parâmetros
[in] aXfer
Ponteiro para o BDXTransfer associado a esta transferência

XferErrorHandler

void(* XferErrorHandler)(BDXTransfer *aXfer, StatusReport *aXferError)

Trate as mensagens TransferError recebidas ou enviadas por BDX.

Nota: A transferência BDX é presumida como potencialmente recuperável (possivelmente temporária, por exemplo, fora do PacketBuffers no momento) e, portanto, a opção de chamar Shutdown () é deixada para o programador do aplicativo e os callbacks que eles definem. TODO: verifique isso e reconcilie-o com o idioma no documento BDX, que afirma: "[A TransferError] pode ser enviado a qualquer momento por qualquer uma das partes para encerrar prematuramente a transferência de dados em massa.

Detalhes
Parâmetros
[in] aXfer
Ponteiro para o BDXTransfer associado a esta transferência
[in] aXferError
Ponteiro para o erro de mensagem StatusReport que estamos processando

Funções

GetBDXAckFlag

uint16_t GetBDXAckFlag(
  ExchangeContext *anEc
)

GetBDXAckFlag retorna o sinalizador apropriado para o campo RequestAck dependendo da conexão do contexto de troca (sem confirmação de solicitação para TCP) e com base no suporte de tempo de compilação para WRMP.

Detalhes
Parâmetros
[in] anEc
O contexto de troca, devemos obter a bandeira com base em
Devoluções
0 ou kSendFlag_RequestAck