Atualizar carga de tabelas
Atualizar Carga de Tabelas
Faz-se uso da classe mPOSTableLoadRequestBuilder
.
Esta funcionalidade não é mandatória, visto que durante a transação, caso seja necessário, o dispositivo realizará a carga de tabelas, esta funcionalidade é apenas para forçar uma carga, sem prosseguir um fluxo de venda.
Exemplo
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)
Callbacks
.callback
Responsável por retornar as callbacks que dizem o estado da carga de tabelas.
onStart
Sinaliza o início do fluxo da carga.
onSuccess
Sinaliza sucesso no fluxo da carga e recebe-se um objeto de mPOSTableLoadResponse
.
data class mPOSTableLoadResponse(
val message: String
)
onFail
Sinaliza falha no fluxo da carga. Recebe-se uma exceção que indica o motivo da falha, podendo ser do tipo:
ZoopPaymentException
: Falha no fluxo da carga. Neste caso, passamos a mensagem de erro, podendo ser acessada comoexception.message
.ZoopTimeoutException
: Tempo excedido na operação.ZoopClosedConnectionException
: Conexão interrompida.ZoopNetworkException
: Falha de conexão.
onComplete
Sinaliza o final do fluxo da carga, independente de sucesso ou falha.
.messageCallback
Responsável pelas mensagens no fluxo de carga de tabelas.
onSuccess
Mensagem a ser exibida pela aplicação para o usuário, acessada como response.message
.
onFail
Não recebe nenhum dado, esta callback não é chamada.