ImplicitFlowControlCallback

abstract class ImplicitFlowControlCallback : UrlRequest.Callback

Sous-classes directes connues
InMemoryTransformCronetCallback

Rappel Cronet abstrait qui lit l'intégralité du corps en mémoire et le désérialise éventuellement avant de le renvoyer à l'émetteur de la requête HTTP.

Sous-classes indirectes connues
ByteArrayCronetCallback

Spécialisation de InMemoryTransformCronetCallback qui renvoie les octets du corps tels quels, sans aucune interprétation.

JsonCronetCallback

Spécialisation de InMemoryTransformCronetCallback qui interprète le corps de la réponse au format JSON.

StringCronetCallback

Spécialisation de InMemoryTransformCronetCallback qui interprète le corps de la réponse comme une chaîne.


Implémentation de UrlRequest.Callback qui facilite la gestion du cycle de vie des requêtes et procède automatiquement à la lecture complète de la réponse.

Résumé

Constructeurs publics

Fonctions publiques

Unit
onCanceled(request: UrlRequest!, info: UrlResponseInfo!)

Invoqué si la requête a été annulée via cancel.

Unit
onFailed(
    request: UrlRequest!,
    info: UrlResponseInfo!,
    error: CronetException!
)

Invoqué si la requête a échoué pour une raison quelconque après start.

Unit
onReadCompleted(
    request: UrlRequest!,
    info: UrlResponseInfo!,
    byteBuffer: ByteBuffer!
)

Méthode appelée chaque fois qu'une partie du corps de la réponse a été lue.

Unit
onRedirectReceived(
    request: UrlRequest!,
    info: UrlResponseInfo!,
    newLocationUrl: String!
)

Invoqué chaque fois qu'une redirection est rencontrée.

Unit

Invoqué lorsque l'ensemble final d'en-têtes, après toutes les redirections, est reçu.

Unit
onSucceeded(request: UrlRequest!, info: UrlResponseInfo!)

Invoqué lorsque la requête est traitée avec succès.

Fonctions protégées

abstract Unit

Méthode appelée chaque fois qu'une partie du corps de la réponse a été lue.

abstract Unit

Invoqué si la requête a été annulée via cancel.

abstract Unit
onFailed(info: UrlResponseInfo?, exception: CronetException!)

Invoqué si la requête a échoué pour une raison quelconque après start.

abstract Unit

Invoqué lorsque l'ensemble final d'en-têtes, après toutes les redirections, est reçu.

abstract Unit

Invoqué lorsque la requête est traitée avec succès.

abstract Boolean
shouldFollowRedirect(info: UrlResponseInfo!, newLocationUrl: String!)

Invoqué chaque fois qu'une redirection est rencontrée.

Constructeurs publics

ImplicitFlowControlCallback

ImplicitFlowControlCallback()

Fonctions publiques

onCanceled

fun onCanceled(request: UrlRequest!, info: UrlResponseInfo!): Unit

Invoqué si la requête a été annulée via cancel. Une fois invoquée, aucune autre méthode Callback ne sera invoquée. L'implémentation par défaut n'effectue aucune action.

Paramètres
request: UrlRequest!

Demande annulée.

info: UrlResponseInfo!

Informations sur la réponse. Peut être null si aucune réponse n'a été reçue.

onFailed

fun onFailed(
    request: UrlRequest!,
    info: UrlResponseInfo!,
    error: CronetException!
): Unit

Invoqué si la requête a échoué pour une raison quelconque après start. Une fois invoquée, aucune autre méthode Callback ne sera invoquée. error fournit des informations sur l'échec.

Paramètres
request: UrlRequest!

Demande ayant échoué.

info: UrlResponseInfo!

Informations sur la réponse. Peut être null si aucune réponse n'a été reçue.

error: CronetException!

informations sur l'erreur.

onReadCompleted

fun onReadCompleted(
    request: UrlRequest!,
    info: UrlResponseInfo!,
    byteBuffer: ByteBuffer!
): Unit

Méthode appelée chaque fois qu'une partie du corps de la réponse a été lue. Seule une partie du tampon peut être remplie, même si l'intégralité du corps de la réponse n'a pas encore été consommée. À l'exception de onCanceled(), aucune autre méthode Callback ne sera appelée pour la requête, y compris onSucceeded() et onFailed(), tant que UrlRequest.read() n'aura pas été appelé pour tenter de continuer à lire le corps de la réponse.

Paramètres
request: UrlRequest!

Demande ayant reçu des données.

info: UrlResponseInfo!

Informations sur la réponse.

byteBuffer: ByteBuffer!

Tampon transmis à UrlRequest.read(), contenant désormais les données reçues. La position du tampon est mise à jour à la fin des données reçues. La limite du tampon n'est pas modifiée.

Génère
java.lang.Exception

si une erreur se produit lors du traitement d'une confirmation de lecture. onFailed sera appelé avec l'exception générée définie comme cause de CallbackException.

onRedirectReceived

fun onRedirectReceived(
    request: UrlRequest!,
    info: UrlResponseInfo!,
    newLocationUrl: String!
): Unit

Invoqué chaque fois qu'une redirection est rencontrée. Cette méthode ne sera appelée qu'entre l'appel à start et onResponseStarted(). Le corps de la réponse de redirection, le cas échéant, sera ignoré. La redirection ne sera suivie que lorsque la méthode followRedirect d'URLRequest sera appelée, de manière synchrone ou asynchrone.

Paramètres
request: UrlRequest!

Demander à être redirigé

info: UrlResponseInfo!

Informations sur la réponse.

newLocationUrl: String!

Emplacement vers lequel la requête est redirigée.

Génère
java.lang.Exception

si une erreur se produit lors du traitement d'une redirection. onFailed sera appelé avec l'exception générée définie comme cause de CallbackException.

onResponseStarted

fun onResponseStarted(request: UrlRequest!, info: UrlResponseInfo!): Unit

Invoqué lorsque l'ensemble final d'en-têtes, après toutes les redirections, est reçu. Ne sera appelé qu'une seule fois pour chaque requête. À l'exception de onCanceled(), aucune autre méthode Callback ne sera appelée pour la requête, y compris onSucceeded() et onFailed(), tant que UrlRequest.read() n'est pas appelé pour tenter de commencer à lire le corps de la réponse.

Paramètres
request: UrlRequest!

Requête qui a commencé à obtenir une réponse.

info: UrlResponseInfo!

Informations sur la réponse.

Génère
java.lang.Exception

si une erreur se produit lors du traitement du début de la réponse. onFailed sera appelé avec l'exception générée définie comme cause de CallbackException.

onSucceeded

fun onSucceeded(request: UrlRequest!, info: UrlResponseInfo!): Unit

Invoqué lorsque la requête est traitée avec succès. Une fois invoquée, aucune autre méthode Callback ne sera invoquée.

Paramètres
request: UrlRequest!

Demande acceptée.

info: UrlResponseInfo!

Informations sur la réponse.

Fonctions protégées

onBodyChunkRead

protected abstract fun onBodyChunkRead(info: UrlResponseInfo!, bodyChunk: ByteBuffer!): Unit

Méthode appelée chaque fois qu'une partie du corps de la réponse a été lue. Seule une partie du tampon peut être remplie, même si l'intégralité du corps de la réponse n'a pas encore été consommée. Le tampon est prêt pour la lecture. Les tampons sont réutilisés en interne. La classe d'implémentation ne doit donc pas stocker le tampon ni l'utiliser ailleurs que dans l'implémentation de cette méthode.

Paramètres
info: UrlResponseInfo!

Informations sur la réponse.

bodyChunk: ByteBuffer!

Mémoire tampon contenant les données reçues, inversée pour la lecture.

Génère
java.lang.Exception

si une erreur se produit lors du traitement d'une lecture terminée. onFailed sera appelé avec l'exception générée définie comme cause de CallbackException.

onCanceled

protected abstract fun onCanceled(info: UrlResponseInfo?): Unit

Invoqué si la requête a été annulée via cancel. Une fois invoquée, aucune autre méthode UrlRequest.Callback ne sera invoquée.

Paramètres
info: UrlResponseInfo?

Informations sur la réponse. Peut être null si aucune réponse n'a été reçue.

onFailed

protected abstract fun onFailed(info: UrlResponseInfo?, exception: CronetException!): Unit

Invoqué si la requête a échoué pour une raison quelconque après start. Une fois invoquée, aucune autre méthode UrlRequest.Callback ne sera invoquée. error fournit des informations sur l'échec.

Paramètres
info: UrlResponseInfo?

Informations sur la réponse. Peut être null si aucune réponse n'a été reçue.

exception: CronetException!

informations sur l'erreur.

onResponseStarted

protected abstract fun onResponseStarted(info: UrlResponseInfo!): Unit

Invoqué lorsque l'ensemble final d'en-têtes, après toutes les redirections, est reçu. Ne sera appelé qu'une seule fois pour chaque requête. Il est garanti que Cronet ne commence à lire le corps que lorsque cette méthode renvoie un résultat.

Paramètres
info: UrlResponseInfo!

Informations sur la réponse.

Génère
java.lang.Exception

Si une erreur se produit lors du traitement du début de la réponse, onFailed est appelé avec l'exception générée définie comme cause de CallbackException.

onSucceeded

protected abstract fun onSucceeded(info: UrlResponseInfo!): Unit

Invoqué lorsque la requête est traitée avec succès. Une fois invoquée, aucune autre méthode UrlRequest.Callback ne sera invoquée.

Paramètres
info: UrlResponseInfo!

Informations sur la réponse.

shouldFollowRedirect

protected abstract fun shouldFollowRedirect(info: UrlResponseInfo!, newLocationUrl: String!): Boolean

Invoqué chaque fois qu'une redirection est rencontrée. Cette méthode ne sera appelée qu'entre l'appel à start et onResponseStarted(). Le corps de la réponse de redirection, le cas échéant, sera ignoré.

Paramètres
info: UrlResponseInfo!

Informations sur la réponse.

newLocationUrl: String!

Emplacement vers lequel la requête est redirigée.

Renvoie
Boolean

"true" si la redirection doit être suivie, "false" si la requête doit être annulée.

Génère
java.lang.Exception

si une erreur se produit lors du traitement d'une redirection. onFailed sera appelé avec l'exception générée définie comme cause de CallbackException.