BidirectionalStream.Builder

abstract class BidirectionalStream.Builder


Es el compilador de BidirectionalStream. Permite configurar el flujo antes de construirlo a través de build. Creado por newBidirectionalStreamBuilder.

Resumen

Constantes

const Int

Es la prioridad de transmisión más alta.

const Int

Es la prioridad de transmisión más baja.

const Int

Prioridad de transmisión baja.

const Int

Prioridad de transmisión muy baja.

const Int

Prioridad media de la transmisión.

Constructores públicos

Funciones públicas

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

Agrega un encabezado de solicitud.

BidirectionalStream.Builder!
addRequestAnnotation(annotation: Any!)

Asocia el objeto de anotación con esta solicitud.

BidirectionalStream.Builder!
bindToNetwork(networkHandle: Long)

Vincula la solicitud al identificador de red especificado.

abstract BidirectionalStream!

Crea un BidirectionalStream con la configuración de este Builder.

abstract BidirectionalStream.Builder!
delayRequestHeadersUntilFirstFlush(
    delayRequestHeadersUntilFirstFlush: Boolean
)

Demora el envío de los encabezados de la solicitud hasta que se llame a flush.

abstract BidirectionalStream.Builder!

Establece el método HTTP para la solicitud.

abstract BidirectionalStream.Builder!
setPriority(priority: Int)

Establece la prioridad de la transmisión, que debe ser uno de los valores de STREAM_PRIORITY_*.

BidirectionalStream.Builder!

Establece la etiqueta android.net.TrafficStats que se usará cuando se contabilice el tráfico de sockets causado por esta solicitud.

BidirectionalStream.Builder!

Establece el UID específico que se usará cuando se contabilice el tráfico de sockets causado por esta solicitud.

Constantes

STREAM_PRIORITY_HIGHEST

const val STREAM_PRIORITY_HIGHEST = 4: Int

Es la prioridad de transmisión más alta. Se pasó a setPriority.

STREAM_PRIORITY_IDLE

const val STREAM_PRIORITY_IDLE = 0: Int

Es la prioridad de transmisión más baja. Se pasó a setPriority.

STREAM_PRIORITY_LOW

const val STREAM_PRIORITY_LOW = 2: Int

Prioridad de transmisión baja. Se pasó a setPriority.

STREAM_PRIORITY_LOWEST

const val STREAM_PRIORITY_LOWEST = 1: Int

Prioridad de transmisión muy baja. Se pasó a setPriority.

STREAM_PRIORITY_MEDIUM

const val STREAM_PRIORITY_MEDIUM = 3: Int

Prioridad media de la transmisión. Se pasó a setPriority. Esta es la prioridad predeterminada que se le asigna a la transmisión.

Constructores públicos

Builder

Builder()

Funciones públicas

addHeader

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

Agrega un encabezado de solicitud. Devuelve el compilador para facilitar el encadenamiento.

Parámetros
header: String!

El nombre del encabezado

value: String!

El valor del encabezado

Muestra
BidirectionalStream.Builder!

el compilador para facilitar el encadenamiento

addRequestAnnotation

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

Asocia el objeto de anotación con esta solicitud. Puedes agregar más de uno. Se pasa a un RequestFinishedInfo.Listener. Consulta getAnnotations.

Parámetros
annotation: Any!

Un objeto para pasar al RequestFinishedInfo.Listener con un RequestFinishedInfo.

Muestra
BidirectionalStream.Builder!

el compilador para facilitar el encadenamiento.

bindToNetwork

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

Vincula la solicitud al identificador de red especificado. Cronet enviará esta solicitud solo a través de la red asociada a este identificador. Si se desconecta esta red, la solicitud fallará. El error exacto dependerá de la etapa de procesamiento de la solicitud en la que se desconecte la red. Los identificadores de red se pueden obtener a través de Network#getNetworkHandle. Solo disponible a partir de Android Marshmallow.

Parámetros
networkHandle: Long

Es el identificador de red al que se debe vincular la solicitud. Especifica UNBIND_NETWORK_HANDLE para desvincular.

Muestra
BidirectionalStream.Builder!

el compilador para facilitar el encadenamiento.

build

abstract fun build(): BidirectionalStream!

Crea un BidirectionalStream con la configuración de este Builder. Luego, se puede iniciar el BidirectionalStream devuelto llamando a start.

Muestra
BidirectionalStream!

BidirectionalStream creado con la configuración de este Builder

delayRequestHeadersUntilFirstFlush

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

Demora el envío de los encabezados de la solicitud hasta que se llame a flush. Actualmente, esta marca solo se respeta cuando se negocia QUIC. Cuando es verdadero, QUIC enviará el marco del encabezado de la solicitud junto con los marcos de datos como un solo paquete cuando sea posible.

Parámetros
delayRequestHeadersUntilFirstFlush: Boolean

Si es verdadero, el envío de encabezados de solicitud se retrasará hasta que se llame a flush().

Muestra
BidirectionalStream.Builder!

el compilador para facilitar el encadenamiento.

setHttpMethod

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

Establece el método HTTP para la solicitud. Devuelve el compilador para facilitar el encadenamiento.

Parámetros
method: String!

Es el método que se usará para la solicitud. El valor predeterminado es "POST".

Muestra
BidirectionalStream.Builder!

el compilador para facilitar el encadenamiento

setPriority

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

Establece la prioridad de la transmisión, que debe ser uno de los valores de STREAM_PRIORITY_*. La transmisión recibe prioridad STREAM_PRIORITY_MEDIUM si no se llama a este método.

Parámetros
priority: Int

Prioridad de la transmisión, que debe ser uno de los valores de STREAM_PRIORITY_*.

Muestra
BidirectionalStream.Builder!

el compilador para facilitar el encadenamiento.

setTrafficStatsTag

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

Establece la etiqueta android.net.TrafficStats que se usará cuando se contabilice el tráfico de sockets causado por esta solicitud. Consulta android.net.TrafficStats para obtener más información. Si no se establece ninguna etiqueta (p.ej., no se llama a este método), Android contabiliza el tráfico de sockets causado por esta solicitud como si el valor de la etiqueta se hubiera establecido en 0.

NOTA: Establecer una etiqueta no permite compartir sockets con solicitudes que tengan otras etiquetas, lo que puede afectar negativamente el rendimiento, ya que se prohíbe el uso compartido de conexiones. En otras palabras, el uso de sockets multiplexados (p.ej., HTTP/2 y QUIC) solo se permitirá si todas las solicitudes tienen la misma etiqueta de socket.

Parámetros
tag: Int

Es el valor de la etiqueta que se usa cuando se contabiliza el tráfico de sockets causado por esta solicitud. Las etiquetas entre 0xFFFFFF00 y 0xFFFFFFFF están reservadas y los servicios del sistema, como android.app.DownloadManager, las usan de forma interna cuando realizan tráfico en nombre de una aplicación.

Muestra
BidirectionalStream.Builder!

el compilador para facilitar el encadenamiento.

setTrafficStatsUid

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

Establece el UID específico que se usará cuando se contabilice el tráfico de sockets causado por esta solicitud. Consulta android.net.TrafficStats para obtener más información. Se diseñó para usarse cuando se realiza una operación en nombre de otra aplicación. El emisor debe tener el permiso MODIFY_NETWORK_ACCOUNTING. De forma predeterminada, el tráfico se atribuye al UID de la entidad que realiza la llamada.

NOTA: Establecer un UID no permite compartir sockets con solicitudes que tengan otros UID, lo que puede afectar negativamente el rendimiento, ya que se prohíbe el uso compartido de conexiones. En otras palabras, el uso de sockets multiplexados (p.ej., HTTP/2 y QUIC) solo se permitirá si todas las solicitudes tienen establecido el mismo UID.

Parámetros
uid: Int

Es el UID para atribuir el tráfico de sockets causado por esta solicitud.

Muestra
BidirectionalStream.Builder!

el compilador para facilitar el encadenamiento.