UrlRequest.Callback

public abstract class UrlRequest.Callback

Sottoclassi dirette note
ImplicitFlowControlCallback

Un'implementazione di UrlRequest.Callback che elimina la difficoltà di gestire il ciclo di vita della richiesta e procede automaticamente alla lettura completa della risposta.

Sottoclassi indirette note
ByteArrayCronetCallback

Una specializzazione di InMemoryTransformCronetCallback che restituisce i byte del corpo verbatim senza alcuna interpretazione.

InMemoryTransformCronetCallback

Un callback Cronet astratto che legge l'intero corpo in memoria e, facoltativamente, lo deserializza prima di restituirlo all'emittente della richiesta HTTP.

JsonCronetCallback

Una specializzazione di InMemoryTransformCronetCallback che interpreta il corpo della risposta come JSON.

StringCronetCallback

Una specializzazione di InMemoryTransformCronetCallback che interpreta il corpo della risposta come una stringa.


Gli utenti di Cronet estendono questa classe per ricevere callback che indicano l'avanzamento di una UrlRequest in fase di elaborazione. Un'istanza di questa classe viene passata al costruttore di UrlRequest.Builder durante la costruzione di UrlRequest.

Nota: tutti i metodi verranno richiamati sul thread di java.util.concurrent.Executor utilizzato durante la costruzione di UrlRequest.

Riepilogo

Costruttori pubblici

Metodi pubblici

void

Richiamato se la richiesta è stata annullata tramite cancel.

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

Richiamato se la richiesta non è riuscita per qualsiasi motivo dopo start.

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

Richiamato ogni volta che è stata letta una parte del corpo della risposta.

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

Richiamato ogni volta che viene rilevato un reindirizzamento.

abstract void

Richiamato quando viene ricevuto l'insieme finale di intestazioni, dopo tutti i reindirizzamenti.

abstract void

Richiamato quando la richiesta viene completata correttamente.

Costruttori pubblici

Callback

public Callback()

Metodi pubblici

onCanceled

public void onCanceled(UrlRequest request, UrlResponseInfo info)

Richiamato se la richiesta è stata annullata tramite cancel. Una volta richiamato, non verranno richiamati altri metodi Callback. L'implementazione predefinita non esegue alcuna azione.

Parametri
UrlRequest request

Richiesta annullata.

UrlResponseInfo info

Informazioni sulla risposta. Può essere null se non è stata ricevuta alcuna risposta.

onFailed

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

Richiamato se la richiesta non è riuscita per qualsiasi motivo dopo start. Una volta richiamato, non verranno richiamati altri metodi Callback. error fornisce informazioni sull'errore.

Parametri
UrlRequest request

Richiesta non riuscita.

UrlResponseInfo info

Informazioni sulla risposta. Può essere null se non è stata ricevuta alcuna risposta.

CronetException error

Informazioni sull'errore.

onReadCompleted

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

Richiamato ogni volta che è stata letta una parte del corpo della risposta. Solo una parte del buffer può essere popolata, anche se l'intero corpo della risposta non è ancora stato consumato. Ad eccezione di onCanceled(), non verrà richiamato nessun altro metodo Callback per la richiesta, inclusi onSucceeded() e onFailed(), finché non viene chiamato UrlRequest.read() per tentare di continuare a leggere il corpo della risposta.

Parametri
UrlRequest request

Richiesta che ha ricevuto i dati.

UrlResponseInfo info

Informazioni sulla risposta.

ByteBuffer byteBuffer

Il buffer passato a UrlRequest.read(), ora contenente i dati ricevuti. La posizione del buffer viene aggiornata alla fine dei dati ricevuti. Il limite del buffer non viene modificato.

Genera
java.lang.Exception

Se si verifica un errore durante l'elaborazione del completamento della lettura. Verrà chiamato onFailed con l'eccezione generata impostata come causa di CallbackException.

onRedirectReceived

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

Richiamato ogni volta che viene rilevato un reindirizzamento. Verrà richiamato solo tra la chiamata a start e onResponseStarted(). Il corpo della risposta di reindirizzamento, se presente, verrà ignorato. Il reindirizzamento non verrà seguito finché non viene chiamato il metodo followRedirect di URLRequest, in modo sincrono o asincrono.

Parametri
UrlRequest request

Richiesta in fase di reindirizzamento.

UrlResponseInfo info

Informazioni sulla risposta.

String newLocationUrl

Posizione in cui viene reindirizzata la richiesta.

Genera
java.lang.Exception

Se si verifica un errore durante l'elaborazione di un reindirizzamento. Verrà chiamato onFailed con l'eccezione generata impostata come causa di CallbackException.

onResponseStarted

public abstract void onResponseStarted(UrlRequest request, UrlResponseInfo info)

Richiamato quando viene ricevuto l'insieme finale di intestazioni, dopo tutti i reindirizzamenti. Verrà richiamato una sola volta per ogni richiesta. Ad eccezione di onCanceled(), non verrà richiamato nessun altro metodo Callback per la richiesta, inclusi onSucceeded() e onFailed(), finché non viene chiamato UrlRequest.read() per tentare di iniziare a leggere il corpo della risposta.

Parametri
UrlRequest request

Richiesta che ha iniziato a ricevere la risposta.

UrlResponseInfo info

Informazioni sulla risposta.

Genera
java.lang.Exception

Se si verifica un errore durante l'elaborazione dell'inizio della risposta. Verrà chiamato onFailed con l'eccezione generata impostata come causa di CallbackException.

onSucceeded

public abstract void onSucceeded(UrlRequest request, UrlResponseInfo info)

Richiamato quando la richiesta viene completata correttamente. Una volta richiamato, non verranno richiamati altri metodi Callback.

Parametri
UrlRequest request

Richiesta riuscita.

UrlResponseInfo info

Informazioni sulla risposta.