BidirectionalStream.Builder

public abstract class BidirectionalStream.Builder


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

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

Константы

static final int

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

static final int

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

static final int

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

static final int

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

static final int

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

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

Builder ()

Общедоступные методы

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

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

BidirectionalStream.Builder

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

BidirectionalStream.Builder
bindToNetwork (long networkHandle)

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

abstract BidirectionalStream
build ()

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

abstract BidirectionalStream.Builder
delayRequestHeadersUntilFirstFlush (
boolean delayRequestHeadersUntilFirstFlush
)

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

abstract BidirectionalStream.Builder

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

abstract BidirectionalStream.Builder
setPriority (int priority)

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

BidirectionalStream.Builder

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

BidirectionalStream.Builder

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

Константы

STREAM_PRIORITY_HIGHEST

public static final int STREAM_PRIORITY_HIGHEST = 4

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

STREAM_PRIORITY_IDLE

public static final int STREAM_PRIORITY_IDLE = 0

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

STREAM_PRIORITY_LOW

public static final int STREAM_PRIORITY_LOW = 2

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

STREAM_PRIORITY_LOWEST

public static final int STREAM_PRIORITY_LOWEST = 1

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

STREAM_PRIORITY_MEDIUM

public static final int STREAM_PRIORITY_MEDIUM = 3

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

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

Строитель

public Builder()

Общедоступные методы

addHeader

public abstract BidirectionalStream.Builder addHeader(String header, String value)

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

Параметры
String header

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

String value

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

Возвраты
BidirectionalStream.Builder

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

addRequestAnnotation

public BidirectionalStream.Builder addRequestAnnotation(Object annotation)

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

Параметры
Object annotation

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

Возвраты
BidirectionalStream.Builder

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

bindToNetwork

public BidirectionalStream.Builder bindToNetwork(long networkHandle)

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

Параметры
long networkHandle

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

Возвраты
BidirectionalStream.Builder

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

строить

public abstract BidirectionalStream build()

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

Возвраты
BidirectionalStream

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

delayRequestHeadersUntilFirstFlush

public abstract BidirectionalStream.Builder delayRequestHeadersUntilFirstFlush(
    boolean delayRequestHeadersUntilFirstFlush
)

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

Параметры
boolean delayRequestHeadersUntilFirstFlush

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

Возвраты
BidirectionalStream.Builder

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

setHttpMethod

public abstract BidirectionalStream.Builder setHttpMethod(String method)

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

Параметры
String method

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

Возвраты
BidirectionalStream.Builder

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

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

public abstract BidirectionalStream.Builder setPriority(int priority)

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

Параметры
int priority

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

Возвраты
BidirectionalStream.Builder

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

setTrafficStatsTag

public BidirectionalStream.Builder setTrafficStatsTag(int tag)

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

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

Параметры
int tag

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

Возвраты
BidirectionalStream.Builder

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

setTrafficStatsUid

public BidirectionalStream.Builder setTrafficStatsUid(int uid)

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

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

Параметры
int uid

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

Возвраты
BidirectionalStream.Builder

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