Atualizar carga de tabelas
Force uma carga de tabelas no dispositivo usando MPOSPlugin.createTableLoadRequestBuilder(), sem iniciar um fluxo de venda.
Essa funcionalidade não é mandatória. Durante uma transação, caso seja necessário, o dispositivo realiza a carga de tabelas automaticamente. Use este fluxo somente quando precisar forçar a carga antes de prosseguir com uma venda.
Criar e enviar a requisição
Crie a requisição com MPOSPlugin.createTableLoadRequestBuilder(), configure os callbacks e envie a operação com Zoop.post().
val tableLoadRequest = MPOSPlugin.createTableLoadRequestBuilder()
.callback(object: Callback<mPOSTableLoadResponse>() {
override fun onStart() {
state = state.copy(status = Status.MESSAGE, message = "Iniciando")
}
override fun onSuccess(response: mPOSTableLoadResponse) {
state = state.copy(status = Status.MESSAGE, message = "SUCESSO")
}
override fun onFail(error: Throwable) {
val message = if (error.message?.contains("invalid session") == true) {
"Não foi realizado um login"
} else {
error.message
}
state = state.copy(status = Status.MESSAGE, message = message ?: "Falha")
}
})
.messageCallback(object: Callback<MessageCallbackRequestField.MessageData>() {
override fun onSuccess(response: MessageCallbackRequestField.MessageData) {
state = state.copy(status = Status.MESSAGE, message = response.message)
}
override fun onFail(error: Throwable) {
}
})
.build()
Zoop.post(tableLoadRequest)Comportamento esperado
Ao executar a carga de tabelas, a aplicação deve acompanhar os estados retornados pelos callbacks e exibir as mensagens recebidas para o usuário.
O fluxo pode terminar com sucesso, falha ou encerramento da operação. Em caso de falha por sessão inválida, trate a mensagem invalid session como ausência de login.
Callbacks
A carga de tabelas usa dois callbacks principais:
.callback: retorna os estados do fluxo da carga de tabelas..messageCallback: retorna mensagens do fluxo que devem ser exibidas pela aplicação.
.callback
Use .callback para acompanhar o início, sucesso, falha e finalização do fluxo de carga.
| Callback | Quando é chamado | Uso recomendado |
|---|---|---|
onStart | Quando o fluxo da carga de tabelas começa. | Exibir uma mensagem de carregamento, como Iniciando carga de tabelas. |
onSuccess | Quando a carga de tabelas termina com sucesso. | Ler a resposta mPOSTableLoadResponse e informar que a carga foi concluída. |
onFail | Quando ocorre uma falha na carga de tabelas. | Registrar o erro e exibir uma mensagem de falha para o usuário. |
onComplete | Quando o fluxo termina, tanto em casos de sucesso quanto de falha. | Finalizar estados de carregamento ou limpar controles temporários da interface. |
onStart
onStartSinaliza o início do fluxo da carga de tabelas.
onSuccess
onSuccessSinaliza sucesso no fluxo da carga e retorna um objeto mPOSTableLoadResponse.
data class mPOSTableLoadResponse(
val message: String
)onFail
onFailSinaliza falha no fluxo da carga. O callback recebe uma exceção que indica o motivo da falha.
A exceção pode ser de um dos seguintes tipos:
ZoopPaymentException: falha no fluxo da carga. A mensagem de erro pode ser acessada porexception.message.ZoopTimeoutException: tempo excedido na operação.ZoopClosedConnectionException: conexão interrompida.ZoopNetworkException: falha de conexão.
onComplete
onCompleteSinaliza o final do fluxo da carga, independentemente de sucesso ou falha.
.messageCallback
Use .messageCallback para receber mensagens do fluxo de carga de tabelas.
| Callback | Quando é chamado | Uso recomendado |
|---|---|---|
onSuccess | Quando o SDK envia uma mensagem operacional da carga de tabelas. | Exibir response.message na interface da aplicação. |
onFail | Não é chamado nesse callback. | Não implementar ações dependentes de falha neste callback. |
onSuccess
onSuccessRetorna a mensagem que deve ser exibida pela aplicação para o usuário. A mensagem pode ser acessada por response.message.
onFail
onFailNão recebe nenhum dado. Esta callback não é chamada neste fluxo.
Updated 7 days ago
