BidirectionalStream.Builder

abstract class BidirectionalStream.Builder


BidirectionalStream のビルダー。build を介してストリームを構築する前に、ストリームを構成できるようになりました。作成者: newBidirectionalStreamBuilder

概要

定数

const Int

ストリームの優先度が最も高い。

const Int

ストリームの優先度が最も低い。

const Int

ストリームの優先度が低い。

const Int

ストリームの優先度が非常に低い。

const Int

中程度のストリーム優先度。

パブリック コンストラクタ

パブリック関数

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

リクエスト ヘッダーを追加します。

BidirectionalStream.Builder!
addRequestAnnotation(annotation: Any!)

アノテーション オブジェクトをこのリクエストに関連付けます。

BidirectionalStream.Builder!
bindToNetwork(networkHandle: Long)

リクエストを指定されたネットワーク ハンドルにバインドします。

abstract BidirectionalStream!

この Builder の構成を使用して BidirectionalStream を作成します。

abstract BidirectionalStream.Builder!
delayRequestHeadersUntilFirstFlush(
    delayRequestHeadersUntilFirstFlush: Boolean
)

flush が呼び出されるまでリクエスト ヘッダーの送信を遅らせます。

abstract BidirectionalStream.Builder!

リクエストの 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

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 を使用して RequestFinishedInfo.Listener に渡すオブジェクト。

戻り値
BidirectionalStream.Builder!

チェーンを容易にするためのビルダー。

bindToNetwork

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

リクエストを指定されたネットワーク ハンドルにバインドします。Cronet は、このハンドルに関連付けられたネットワークのみを使用してこのリクエストを送信します。このネットワークが切断されると、リクエストは失敗します。正確なエラーは、ネットワークが切断されたときのリクエスト処理の段階によって異なります。ネットワーク ハンドルは Network#getNetworkHandle を介して取得できます。Android Marshmallow 以降でのみ利用可能です。

パラメータ
networkHandle: Long

リクエストをバインドするネットワーク ハンドル。バインドを解除するには、UNBIND_NETWORK_HANDLE を指定します。

戻り値
BidirectionalStream.Builder!

チェーンを容易にするためのビルダー。

build

abstract fun build(): BidirectionalStream!

この Builder の構成を使用して BidirectionalStream を作成します。返された BidirectionalStream は、start を呼び出すことで開始できます。

戻り値
BidirectionalStream!

この Builder の構成を使用して構築された BidirectionalStream

delayRequestHeadersUntilFirstFlush

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

flush が呼び出されるまでリクエスト ヘッダーの送信を遅延させます。このフラグは現在、QUIC がネゴシエートされている場合にのみ反映されます。true の場合、QUIC は可能な限り、リクエスト ヘッダー フレームとデータフレームを 1 つのパケットとして送信します。

パラメータ
delayRequestHeadersUntilFirstFlush: Boolean

true の場合、リクエスト ヘッダーの送信は flush() が呼び出されるまで遅延されます。

戻り値
BidirectionalStream.Builder!

チェーンを容易にするためのビルダー。

setHttpMethod

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

リクエストの HTTP メソッドを設定します。チェーンを容易にするためにビルダーを返します。

パラメータ
method: String!

リクエストに使用するメソッド。デフォルトは「POST」です。

戻り値
BidirectionalStream.Builder!

チェーンを容易にするビルダー

setPriority

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 を持つリクエストとのソケットの共有が禁止され、接続の共有が禁止されることでパフォーマンスに悪影響を及ぼす可能性があります。つまり、すべてのリクエストに同じ UID が設定されている場合にのみ、多重化ソケット(HTTP/2 や QUIC など)の使用が許可されます。

パラメータ
uid: Int

このリクエストによって発生したソケット トラフィックを帰属させる UID。

戻り値
BidirectionalStream.Builder!

チェーンを容易にするためのビルダー。