ImplicitFlowControlCallback

public abstract class ImplicitFlowControlCallback extends UrlRequest.Callback

Subclasses diretas conhecidas
InMemoryTransformCronetCallback

Um callback abstrato do Cronet que lê todo o corpo para a memória e, opcionalmente, desserializa o corpo antes de transmiti-lo de volta ao emissor da solicitação HTTP.

Subclasses indiretas conhecidas
ByteArrayCronetCallback

Uma especialização de InMemoryTransformCronetCallback que retorna os bytes do corpo exatamente como estão, sem interpretação.

JsonCronetCallback

Uma especialização de InMemoryTransformCronetCallback que interpreta o corpo da resposta como JSON.

StringCronetCallback

Uma especialização de InMemoryTransformCronetCallback que interpreta o corpo da resposta como uma string.


Uma implementação de UrlRequest.Callback que elimina a dificuldade de gerenciar o ciclo de vida da solicitação e lê automaticamente a resposta por completo.

Resumo

Construtores públicos

Métodos públicos

final void

Invocado se a solicitação foi cancelada usando cancel.

final void
onFailed(
    UrlRequest request,
    UrlResponseInfo info,
    CronetException error
)

Invocado se a solicitação falhou por qualquer motivo após start.

final void
onReadCompleted(
    UrlRequest request,
    UrlResponseInfo info,
    ByteBuffer byteBuffer
)

Invocado sempre que parte do corpo da resposta tiver sido lida.

final void
onRedirectReceived(
    UrlRequest request,
    UrlResponseInfo info,
    String newLocationUrl
)

Invocado sempre que um redirecionamento é encontrado.

final void

Invocado quando o conjunto final de cabeçalhos, após todos os redirecionamentos, é recebido.

final void

Invocado quando a solicitação é concluída.

Métodos protegidos

abstract void

Invocado sempre que parte do corpo da resposta tiver sido lida.

abstract void

Invocado se a solicitação foi cancelada usando cancel.

abstract void

Invocado se a solicitação falhou por qualquer motivo após start.

abstract void

Invocado quando o conjunto final de cabeçalhos, após todos os redirecionamentos, é recebido.

abstract void

Invocado quando a solicitação é concluída.

abstract boolean

Invocado sempre que um redirecionamento é encontrado.

Construtores públicos

ImplicitFlowControlCallback

public ImplicitFlowControlCallback()

Métodos públicos

onCanceled

public final void onCanceled(UrlRequest request, UrlResponseInfo info)

Invocado se a solicitação foi cancelada usando cancel. Depois de invocado, nenhum outro método Callback será invocado. A implementação padrão não realiza nenhuma ação.

Parâmetros
UrlRequest request

Solicitação que foi cancelada.

UrlResponseInfo info

Informações da resposta. Pode ser null se nenhuma resposta foi recebida.

onFailed

public final void onFailed(
    UrlRequest request,
    UrlResponseInfo info,
    CronetException error
)

Invocado se a solicitação falhou por qualquer motivo após start. Depois de invocado, nenhum outro método Callback será invocado. error fornece informações sobre a falha.

Parâmetros
UrlRequest request

Solicitação com falha.

UrlResponseInfo info

Informações da resposta. Pode ser null se nenhuma resposta foi recebida.

CronetException error

informações sobre o erro.

onReadCompleted

public final void onReadCompleted(
    UrlRequest request,
    UrlResponseInfo info,
    ByteBuffer byteBuffer
)

Invocado sempre que parte do corpo da resposta tiver sido lida. Apenas parte do buffer pode ser preenchida, mesmo que todo o corpo da resposta ainda não tenha sido consumido. Com exceção de onCanceled(), nenhum outro método Callback será invocado para a solicitação, incluindo onSucceeded() e onFailed(), até que UrlRequest.read() seja chamado para tentar continuar lendo o corpo da resposta.

Parâmetros
UrlRequest request

Solicitação que recebeu dados.

UrlResponseInfo info

Informações da resposta.

ByteBuffer byteBuffer

O buffer transmitido para UrlRequest.read(), agora contendo os dados recebidos. A posição do buffer é atualizada para o final dos dados recebidos. O limite do buffer não é alterado.

Gera
java.lang.Exception

se ocorrer um erro ao processar uma conclusão de leitura. onFailed será chamado com a exceção gerada definida como a causa do CallbackException.

onRedirectReceived

public final void onRedirectReceived(
    UrlRequest request,
    UrlResponseInfo info,
    String newLocationUrl
)

Invocado sempre que um redirecionamento é encontrado. Isso só será invocado entre a chamada para start e onResponseStarted(). O corpo da resposta de redirecionamento, se houver, será ignorado. O redirecionamento não será seguido até que o método followRedirect do URLRequest seja chamado, de forma síncrona ou assíncrona.

Parâmetros
UrlRequest request

Solicitação sendo redirecionada.

UrlResponseInfo info

Informações da resposta.

String newLocationUrl

Local para onde a solicitação é redirecionada.

Gera
java.lang.Exception

se ocorrer um erro ao processar um redirecionamento. onFailed será chamado com a exceção gerada definida como a causa do CallbackException.

onResponseStarted

public final void onResponseStarted(UrlRequest request, UrlResponseInfo info)

Invocado quando o conjunto final de cabeçalhos, após todos os redirecionamentos, é recebido. Será invocado apenas uma vez para cada solicitação. Com exceção de onCanceled(), nenhum outro método Callback será invocado para a solicitação, incluindo onSucceeded() e onFailed(), até que UrlRequest.read() seja chamado para tentar iniciar a leitura do corpo da resposta.

Parâmetros
UrlRequest request

Solicitação que começou a receber resposta.

UrlResponseInfo info

Informações da resposta.

Gera
java.lang.Exception

se ocorrer um erro ao processar o início da resposta. onFailed será chamado com a exceção gerada definida como a causa do CallbackException.

onSucceeded

public final void onSucceeded(UrlRequest request, UrlResponseInfo info)

Invocado quando a solicitação é concluída. Depois de invocado, nenhum outro método Callback será invocado.

Parâmetros
UrlRequest request

Solicitação bem-sucedida.

UrlResponseInfo info

Informações da resposta.

Métodos protegidos

onBodyChunkRead

protected abstract void onBodyChunkRead(UrlResponseInfo info, ByteBuffer bodyChunk)

Invocado sempre que parte do corpo da resposta tiver sido lida. Apenas parte do buffer pode ser preenchida, mesmo que todo o corpo da resposta ainda não tenha sido consumido. O buffer está pronto para leitura. Os buffers são reutilizados internamente. Portanto, a classe de implementação não deve armazenar o buffer nem usá-lo em outro lugar que não seja a implementação desse método.

Parâmetros
UrlResponseInfo info

Informações da resposta.

ByteBuffer bodyChunk

O buffer que contém os dados recebidos, invertido para leitura.

Gera
java.lang.Exception

Se ocorrer um erro durante o processamento de uma conclusão de leitura, onFailed será chamado com a exceção lançada definida como a causa do CallbackException.

onCanceled

protected abstract void onCanceled(@Nullable UrlResponseInfo info)

Invocado se a solicitação foi cancelada usando cancel. Depois de invocado, nenhum outro método UrlRequest.Callback será invocado.

Parâmetros
@Nullable UrlResponseInfo info

Informações da resposta. Pode ser null se nenhuma resposta foi recebida.

onFailed

protected abstract void onFailed(@Nullable UrlResponseInfo info, CronetException exception)

Invocado se a solicitação falhou por qualquer motivo após start. Depois de invocado, nenhum outro método UrlRequest.Callback será invocado. error fornece informações sobre a falha.

Parâmetros
@Nullable UrlResponseInfo info

Informações da resposta. Pode ser null se nenhuma resposta foi recebida.

CronetException exception

informações sobre o erro.

onResponseStarted

protected abstract void onResponseStarted(UrlResponseInfo info)

Invocado quando o conjunto final de cabeçalhos, após todos os redirecionamentos, é recebido. Será invocado apenas uma vez para cada solicitação. É garantido que o Cronet não vai começar a ler o corpo até que esse método seja retornado.

Parâmetros
UrlResponseInfo info

Informações da resposta.

Gera
java.lang.Exception

Se ocorrer um erro durante o processamento do início da resposta, onFailed será chamado com a exceção lançada definida como a causa do CallbackException.

onSucceeded

protected abstract void onSucceeded(UrlResponseInfo info)

Invocado quando a solicitação é concluída. Depois de invocado, nenhum outro método UrlRequest.Callback será invocado.

Parâmetros
UrlResponseInfo info

Informações da resposta.

shouldFollowRedirect

protected abstract boolean shouldFollowRedirect(UrlResponseInfo info, String newLocationUrl)

Invocado sempre que um redirecionamento é encontrado. Isso só será invocado entre a chamada para start e onResponseStarted(). O corpo da resposta de redirecionamento, se houver, será ignorado.

Parâmetros
UrlResponseInfo info

Informações da resposta.

String newLocationUrl

Local para onde a solicitação é redirecionada.

Retorna
boolean

"true" se o redirecionamento precisar ser seguido ou "false" se a solicitação precisar ser cancelada.

Gera
java.lang.Exception

Se ocorrer um erro durante o processamento de um redirecionamento, onFailed será chamado com a exceção lançada definida como a causa do CallbackException.