BidirectionalStream.Builder

abstract class BidirectionalStream.Builder


Compilateur pour les BidirectionalStream. Permet de configurer le flux avant de le construire via build. Créé par newBidirectionalStreamBuilder.

Résumé

Constantes

const Int

Priorité la plus élevée pour le flux.

const Int

Priorité la plus faible pour le flux.

const Int

Priorité faible pour le flux.

const Int

Priorité très faible du flux.

const Int

Priorité moyenne du flux.

Constructeurs publics

Fonctions publiques

abstract BidirectionalStream.Builder!
addHeader(header: String!, value: String!)

Ajoute un en-tête de requête.

BidirectionalStream.Builder!
addRequestAnnotation(annotation: Any!)

Associe l'objet d'annotation à cette requête.

BidirectionalStream.Builder!
bindToNetwork(networkHandle: Long)

Associe la requête au handle réseau spécifié.

abstract BidirectionalStream!

Crée un BidirectionalStream en utilisant la configuration de ce Builder.

abstract BidirectionalStream.Builder!
delayRequestHeadersUntilFirstFlush(
    delayRequestHeadersUntilFirstFlush: Boolean
)

Retarde l'envoi des en-têtes de requête jusqu'à ce que flush soit appelé.

abstract BidirectionalStream.Builder!

Définit la méthode HTTP pour la requête.

abstract BidirectionalStream.Builder!
setPriority(priority: Int)

Définit la priorité du flux, qui doit être l'une des valeurs STREAM_PRIORITY_*.

BidirectionalStream.Builder!

Définit le tag android.net.TrafficStats à utiliser lors de la comptabilisation du trafic de socket généré par cette requête.

BidirectionalStream.Builder!

Définit un UID spécifique à utiliser lors de la comptabilisation du trafic de socket généré par cette requête.

Constantes

STREAM_PRIORITY_HIGHEST

const val STREAM_PRIORITY_HIGHEST = 4: Int

Priorité la plus élevée pour le flux. Transmis à setPriority.

STREAM_PRIORITY_IDLE

const val STREAM_PRIORITY_IDLE = 0: Int

Priorité la plus faible pour le flux. Transmis à setPriority.

STREAM_PRIORITY_LOW

const val STREAM_PRIORITY_LOW = 2: Int

Priorité faible pour le flux. Transmis à setPriority.

STREAM_PRIORITY_LOWEST

const val STREAM_PRIORITY_LOWEST = 1: Int

Priorité très faible du flux. Transmis à setPriority.

STREAM_PRIORITY_MEDIUM

const val STREAM_PRIORITY_MEDIUM = 3: Int

Priorité moyenne du flux. Transmis à setPriority. Il s'agit de la priorité par défaut accordée au flux.

Constructeurs publics

Compilateur

Builder()

Fonctions publiques

addHeader

abstract fun addHeader(header: String!, value: String!): BidirectionalStream.Builder!

Ajoute un en-tête de requête. Renvoie le générateur pour faciliter l'enchaînement.

Paramètres
header: String!

le nom de l'en-tête

value: String!

la valeur de l'en-tête.

Renvoie
BidirectionalStream.Builder!

le générateur pour faciliter l'enchaînement.

addRequestAnnotation

fun addRequestAnnotation(annotation: Any!): BidirectionalStream.Builder!

Associe l'objet d'annotation à cette requête. Vous pouvez en ajouter plusieurs. Transmis à un RequestFinishedInfo.Listener, voir getAnnotations.

Paramètres
annotation: Any!

Objet à transmettre au RequestFinishedInfo.Listener avec un RequestFinishedInfo.

Renvoie
BidirectionalStream.Builder!

le générateur pour faciliter l'enchaînement.

bindToNetwork

fun bindToNetwork(networkHandle: Long): BidirectionalStream.Builder!

Associe la requête au handle réseau spécifié. Cronet n'enverra cette requête qu'en utilisant le réseau associé à ce handle. Si ce réseau se déconnecte, la requête échouera. L'erreur exacte dépendra de l'étape du traitement de la requête au moment de la déconnexion du réseau. Les identifiants réseau peuvent être obtenus via Network#getNetworkHandle. Disponible uniquement à partir d'Android Marshmallow.

Paramètres
networkHandle: Long

le handle réseau auquel l'opération doit être liée. Spécifiez UNBIND_NETWORK_HANDLE pour dissocier.

Renvoie
BidirectionalStream.Builder!

le générateur pour faciliter l'enchaînement.

build

abstract fun build(): BidirectionalStream!

Crée un BidirectionalStream en utilisant la configuration de ce Builder. Le BidirectionalStream renvoyé peut ensuite être démarré en appelant start.

Renvoie
BidirectionalStream!

BidirectionalStream construit à l'aide de la configuration de ce Builder

delayRequestHeadersUntilFirstFlush

abstract fun delayRequestHeadersUntilFirstFlush(
    delayRequestHeadersUntilFirstFlush: Boolean
): BidirectionalStream.Builder!

Retarde l'envoi des en-têtes de requête jusqu'à ce que flush soit appelé. Cette option n'est actuellement respectée que lorsque QUIC est négocié. Si la valeur est "true", QUIC enverra le frame d'en-tête de requête avec le ou les frames de données sous forme de paquet unique, si possible.

Paramètres
delayRequestHeadersUntilFirstFlush: Boolean

Si la valeur est "true", l'envoi des en-têtes de requête sera retardé jusqu'à ce que flush() soit appelé.

Renvoie
BidirectionalStream.Builder!

le générateur pour faciliter l'enchaînement.

setHttpMethod

abstract fun setHttpMethod(method: String!): BidirectionalStream.Builder!

Définit la méthode HTTP pour la requête. Renvoie le générateur pour faciliter l'enchaînement.

Paramètres
method: String!

Méthode à utiliser pour la requête. La valeur par défaut est "POST".

Renvoie
BidirectionalStream.Builder!

le générateur pour faciliter l'enchaînement.

setPriority

abstract fun setPriority(priority: Int): BidirectionalStream.Builder!

Définit la priorité du flux, qui doit être l'une des valeurs STREAM_PRIORITY_*. Le flux reçoit la priorité STREAM_PRIORITY_MEDIUM si cette méthode n'est pas appelée.

Paramètres
priority: Int

Priorité du flux, qui doit être l'une des valeurs STREAM_PRIORITY_*.

Renvoie
BidirectionalStream.Builder!

le générateur pour faciliter l'enchaînement.

setTrafficStatsTag

fun setTrafficStatsTag(tag: Int): BidirectionalStream.Builder!

Définit le tag android.net.TrafficStats à utiliser lors de la comptabilisation du trafic de socket généré par cette requête. Pour en savoir plus, consultez les android.net.TrafficStats. Si aucun tag n'est défini (par exemple, si cette méthode n'est pas appelée), Android comptabilise le trafic de socket généré par cette requête comme si la valeur du tag était définie sur 0.

REMARQUE : Définir un tag interdit le partage de sockets avec des requêtes comportant d'autres tags, ce qui peut nuire aux performances en interdisant le partage de connexions. En d'autres termes, l'utilisation de sockets multiplexés (HTTP/2 et QUIC, par exemple) ne sera autorisée que si toutes les requêtes ont le même tag de socket.

Paramètres
tag: Int

Valeur du tag utilisé pour comptabiliser le trafic de socket généré par cette requête. Les tags compris entre 0xFFFFFF00 et 0xFFFFFFFF sont réservés et utilisés en interne par les services système tels que android.app.DownloadManager lors de l'exécution du trafic pour le compte d'une application.

Renvoie
BidirectionalStream.Builder!

le générateur pour faciliter l'enchaînement.

setTrafficStatsUid

fun setTrafficStatsUid(uid: Int): BidirectionalStream.Builder!

Définit un UID spécifique à utiliser lors de la comptabilisation du trafic de socket généré par cette requête. Pour en savoir plus, consultez android.net.TrafficStats. Conçu pour être utilisé lors d'une opération effectuée au nom d'une autre application. L'appelant doit disposer de l'autorisation MODIFY_NETWORK_ACCOUNTING. Par défaut, le trafic est attribué à l'UID de l'appelant.

REMARQUE : Définir un UID interdit le partage de sockets avec des requêtes ayant d'autres UID, ce qui peut avoir un impact négatif sur les performances en interdisant le partage de connexions. En d'autres termes, l'utilisation de sockets multiplexés (par exemple, HTTP/2 et QUIC) ne sera autorisée que si toutes les requêtes ont le même UID défini.

Paramètres
uid: Int

UID permettant d'attribuer le trafic de socket généré par cette requête.

Renvoie
BidirectionalStream.Builder!

le générateur pour faciliter l'enchaînement.