BidirectionalStream.Builder

abstract class BidirectionalStream.Builder


Конструктор для BidirectionalStream . Позволяет настроить поток перед его созданием с помощью build . Создан с помощью newBidirectionalStreamBuilder .

Краткое содержание

Константы

const Int

Наивысший приоритет потока.

const Int

Самый низкий приоритет потока.

const Int

Низкий приоритет потока.

const Int

Очень низкий приоритет потока.

const Int

Средний приоритет потока.

Государственные строители

Builder ()

Общественные функции

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

Добавляет заголовок запроса.

BidirectionalStream.Builder !
addRequestAnnotation (annotation: Any !)

Связывает объект аннотации с данным запросом.

BidirectionalStream.Builder !
bindToNetwork (networkHandle: Long )

Привязывает запрос к указанному сетевому дескриптору.

abstract BidirectionalStream !
build ()

Создает BidirectionalStream используя конфигурацию из этого Builder .

abstract BidirectionalStream.Builder !
delayRequestHeadersUntilFirstFlush (
delayRequestHeadersUntilFirstFlush: Boolean
)

Задерживает отправку заголовков запроса до вызова функции flush .

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

Задает HTTP-метод для запроса.

abstract BidirectionalStream.Builder !
setPriority (priority: Int )

Устанавливает приоритет потока, который должен быть одним из значений STREAM_PRIORITY_* .

BidirectionalStream.Builder !

Устанавливает тег android.net.TrafficStats для учета трафика сокета, вызванного этим запросом.

BidirectionalStream.Builder !

Задает конкретный UID, который будет использоваться при учете трафика сокета, вызванного этим запросом.

Константы

STREAM_PRIORITY_HIGHEST

const val STREAM_PRIORITY_HIGHEST = 4: Int

Наивысший приоритет потока. Передается в setPriority .

STREAM_PRIORITY_IDLE

const val STREAM_PRIORITY_IDLE = 0: Int

Наименьший приоритет потока. Передается в setPriority .

STREAM_PRIORITY_LOW

const val STREAM_PRIORITY_LOW = 2: Int

Низкий приоритет потока. Передаётся в setPriority .

STREAM_PRIORITY_LOWEST

const val STREAM_PRIORITY_LOWEST = 1: Int

Очень низкий приоритет потока. Передаётся в setPriority .

STREAM_PRIORITY_MEDIUM

const val STREAM_PRIORITY_MEDIUM = 3: Int

Средний приоритет потока. Передается в setPriority . Это приоритет по умолчанию, присвоенный потоку.

Государственные строители

Строитель

Builder()

Общественные функции

addHeader

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

Добавляет заголовок запроса. Возвращает конструктор для упрощения цепочки запросов.

Параметры
header: String !

название заголовка

value: String !

значение заголовка

Возвраты
BidirectionalStream.Builder !

строитель для облегчения цепочки

addRequestAnnotation

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

Связывает объект аннотации с этим запросом. Можно добавить более одного объекта. Передается в RequestFinishedInfo.Listener , см. getAnnotations .

Параметры
annotation: Any !

Объект, который будет передан в RequestFinishedInfo.Listener вместе с RequestFinishedInfo .

Возвраты
BidirectionalStream.Builder !

строитель для облегчения создания цепочек.

bindToNetwork

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

Привязывает запрос к указанному сетевому дескриптору. Cronet отправит этот запрос только через сеть, связанную с этим дескриптором. Если сеть отключится, запрос завершится неудачей; точная ошибка будет зависеть от стадии обработки запроса в момент отключения сети. Сетевые дескрипторы можно получить с помощью Network#getNetworkHandle . Доступно только начиная с Android Marshmallow.

Параметры
networkHandle: Long

Сетевой дескриптор, к которому будет привязан запрос. Укажите UNBIND_NETWORK_HANDLE , чтобы отменить привязку.

Возвраты
BidirectionalStream.Builder !

строитель для облегчения создания цепочек.

строить

abstract fun build(): BidirectionalStream!

Создает BidirectionalStream используя конфигурацию из этого Builder . Возвращенный BidirectionalStream затем можно запустить, вызвав start .

Возвраты
BidirectionalStream !

Создан BidirectionalStream с использованием конфигурации из этого Builder

delayRequestHeadersUntilFirstFlush

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

Задерживает отправку заголовков запроса до вызова функции flush . В настоящее время этот флаг учитывается только при согласовании QUIC. Если он имеет значение true, QUIC будет отправлять кадр заголовка запроса вместе с кадром(ами) данных в виде одного пакета, если это возможно.

Параметры
delayRequestHeadersUntilFirstFlush: Boolean

Если это так, отправка заголовков запроса будет отложена до вызова функции flush().

Возвраты
BidirectionalStream.Builder !

строитель для облегчения создания цепочек.

setHttpMethod

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

Задает HTTP-метод для запроса. Возвращает конструктор для упрощения цепочки запросов.

Параметры
method: String !

Метод, используемый для запроса. По умолчанию — 'POST'.

Возвраты
BidirectionalStream.Builder !

строитель для облегчения цепочки

установить приоритет

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

Устанавливает приоритет потока, который должен быть одним из значений STREAM_PRIORITY_* . Если этот метод не вызывается, потоку присваивается приоритет STREAM_PRIORITY_MEDIUM .

Параметры
priority: Int

Приоритет потока должен соответствовать одному из значений STREAM_PRIORITY_* .

Возвраты
BidirectionalStream.Builder !

строитель для облегчения создания цепочек.

setTrafficStatsTag

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

Устанавливает тег android.net.TrafficStats , используемый для учета трафика сокетов, вызванного этим запросом. Дополнительную информацию см. в описании android.net.TrafficStats . Если тег не установлен (например, этот метод не вызывается), Android учитывает трафик сокетов, вызванный этим запросом, как если бы значение тега было равно 0.

ПРИМЕЧАНИЕ: Установка тега запрещает совместное использование сокетов запросами с другими тегами, что может негативно сказаться на производительности, поскольку препятствует совместному использованию соединений. Другими словами, использование мультиплексированных сокетов (например, HTTP/2 и QUIC) будет разрешено только в том случае, если все запросы имеют один и тот же тег сокета.

Параметры
tag: Int

Значение тега, используемое при учете трафика сокета, вызванного этим запросом. Теги в диапазоне от 0xFFFFFF00 до 0xFFFFFFFF зарезервированы и используются внутри системных служб, таких как android.app.DownloadManager при обработке трафика от имени приложения.

Возвраты
BidirectionalStream.Builder !

строитель для облегчения создания цепочек.

setTrafficStatsUid

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

Устанавливает конкретный UID для учета трафика сокета, вызванного этим запросом. Дополнительную информацию см. в android.net.TrafficStats . Предназначен для использования при выполнении операции от имени другого приложения. Вызывающая сторона должна иметь разрешение MODIFY_NETWORK_ACCOUNTING . По умолчанию трафик приписывается UID вызывающей стороны.

ПРИМЕЧАНИЕ: Установка UID запрещает совместное использование сокетов запросами с другими UID, что может негативно сказаться на производительности, поскольку препятствует совместному использованию соединений. Другими словами, использование мультиплексированных сокетов (например, HTTP/2 и QUIC) будет разрешено только в том случае, если все запросы имеют один и тот же установленный UID.

Параметры
uid: Int

UID для присвоения идентификатора трафику сокета, вызванному этим запросом.

Возвраты
BidirectionalStream.Builder !

строитель для облегчения создания цепочек.