- 
- すべてのスーパー・インタフェース:
- Flow.Publisher<ByteBuffer>
 - 含まれているクラス:
- HttpRequest
 
 public static interface HttpRequest.BodyPublisher extends Flow.Publisher<ByteBuffer> 高水準のJavaオブジェクトをリクエスト本体として送信するのに適したバイト・バッファのフローに変換するパブリッシャ。
 インキュベーション機能。将来のリリースで削除されます。BodyPublisherクラスはFlow.Publisher<ByteBuffer>を実装しています。これは、BodyPublisherが「バイト・バッファ」のパブリッシャとして機能することを意味します。HTTPクライアント実装は、発信データ・バッファのフローを受信するためにパブリッシャにサブスクライブします。 Flow.SubscriberとFlow.Publisherの通常のセマンティクスはライブラリによって実装され、パブリッシャの実装から期待されます。 それぞれの発信リクエストは、リクエスト本文を含むバイト・バッファのシーケンスを提供するために、BodyPublisherに加入する1つのSubscriberをもたらす。 パブリッシャによって発行されたByteBufferのインスタンスは、パブリッシャによって割り当てられなければならず、図書館に引き渡された後にアクセスされてはなりません。 これらのサブスクリプションは、リクエストが完全に送信されたときに正常に完了し、エラーによって早期に取消または終了することができます。 何らかの理由でリクエストを再送信する必要がある場合、以前と同じデータを生成すると予想される新しいサブスクリプションが作成されます。0の「内容の長さ」を報告するパブリッシャは、公開するデータが事実上存在しないため、HTTPクライアント実装によってサブスクライブされないことがあります。
- 
- 
メソッドのサマリー「すべてのメソッド」「静的メソッド」「インスタンス・メソッド」「抽象メソッド」 修飾子と型 メソッド 説明 longcontentLength()このリクエスト本文のコンテンツ長を返します。static HttpRequest.BodyPublisherfromByteArray(byte[] buf)本文が指定されたバイト配列であるリクエストボディ・パブリッシャを返します。static HttpRequest.BodyPublisherfromByteArray(byte[] buf, int offset, int length)指定されたoffsetから始まるlengthバイトの指定されたバイト配列の内容を本文として持つリクエストボディ・パブリッシャを返します。static HttpRequest.BodyPublisherfromByteArrays(Iterable<byte[]> iter)バイト配列のIterableからデータを取得するリクエストボディ・パブリッシャ。static HttpRequest.BodyPublisherfromFile(Path path)ファイルの内容からデータを取得するリクエスト・ボディ・パブリッシャ。static HttpRequest.BodyPublisherfromInputStream(Supplier<? extends InputStream> streamSupplier)InputStreamからデータを読み取るリクエスト・ボディ・パブリッシャ。static HttpRequest.BodyPublisherfromPublisher(Flow.Publisher<? extends ByteBuffer> publisher)指定されたFlow.Publisherから本文が取得されたリクエスト・ボディ・パブリッシャを返します。static HttpRequest.BodyPublisherfromPublisher(Flow.Publisher<? extends ByteBuffer> publisher, long contentLength)指定されたFlow.Publisherから本文が取得されたリクエスト・ボディ・パブリッシャを返します。static HttpRequest.BodyPublisherfromString(String body)UTF_8文字セットを使用して変換された、指定されたStringの本文を持つリクエスト本体パブリッシャを返します。static HttpRequest.BodyPublisherfromString(String s, Charset charset)指定された文字セットを使用して変換された、指定されたStringの本文を持つリクエスト・ボディ・パブリッシャを返します。static HttpRequest.BodyPublishernoBody()リクエスト本文を送信しないリクエストボディ・パブリッシャ。- 
インタフェース java.util.concurrent.Flow.Publisherで宣言されたメソッドsubscribe
 
- 
 
- 
- 
- 
メソッドの詳細- 
fromPublisherstatic HttpRequest.BodyPublisher fromPublisher(Flow.Publisher<? extends ByteBuffer> publisher) 指定されたFlow.Publisherから本文が取得されたリクエスト・ボディ・パブリッシャを返します。 返されたリクエストボディ・パブリッシャのコンテンツ長は不明です。- APIの注:
- このメソッドは、BodyPublisherとFlow.Publisherの間のアダプタとして使用できます。この場合、パブリッシャが公開するリクエスト本文の量は不明です。
- パラメータ:
- publisher- 本文の発行責任者
- 戻り値:
- a BodyPublisher
 
 - 
fromPublisherstatic HttpRequest.BodyPublisher fromPublisher(Flow.Publisher<? extends ByteBuffer> publisher, long contentLength) 指定されたFlow.Publisherから本文が取得されたリクエスト・ボディ・パブリッシャを返します。 返されたリクエストボディ・パブリッシャは、指定されたコンテンツ長を持ちます。与えられた contentLengthは正の数で、publisherが公開しなければならない正確なバイト数を表します。- APIの注:
- このメソッドは、BodyPublisherとFlow.Publisherの間のアダプタとして使用できます。BodyPublisherでは、パブリッシャがパブリッシュするリクエスト本文の量がわかります。
- パラメータ:
- publisher- 本文の発行責任者
- contentLength- パブリッシャが公開する正確なバイト数を表す正の数
- 戻り値:
- a BodyPublisher
- 例外:
- IllegalArgumentException- コンテンツの長さが正でない場合
 
 - 
fromStringstatic HttpRequest.BodyPublisher fromString(String body) UTF_8文字セットを使用して変換された、指定されたStringの本文を持つリクエスト本体パブリッシャを返します。- パラメータ:
- body- 本文を含むString
- 戻り値:
- a BodyPublisher
 
 - 
fromStringstatic HttpRequest.BodyPublisher fromString(String s, Charset charset) 指定された文字セットを使用して変換された、指定されたStringの本文を持つリクエスト・ボディ・パブリッシャを返します。- パラメータ:
- s- 本文を含むString
- charset- 文字列をバイトに変換する文字セット
- 戻り値:
- a BodyPublisher
 
 - 
fromInputStreamstatic HttpRequest.BodyPublisher fromInputStream(Supplier<? extends InputStream> streamSupplier) InputStreamからデータを読み取るリクエスト・ボディ・パブリッシャ。InputStreamのSupplierは、コンテンツがバッファされていないため、リクエストを繰り返す必要がある場合に使用されます。Supplierは、その後の試行でnullを返します。この場合、リクエストは失敗します。- パラメータ:
- streamSupplier- オープンなInputStreamのサプライヤ
- 戻り値:
- a BodyPublisher
 
 - 
fromByteArraystatic HttpRequest.BodyPublisher fromByteArray(byte[] buf) 本文が指定されたバイト配列であるリクエストボディ・パブリッシャを返します。- パラメータ:
- buf- 本文を含むバイト配列
- 戻り値:
- a BodyPublisher
 
 - 
fromByteArraystatic HttpRequest.BodyPublisher fromByteArray(byte[] buf, int offset, int length) 指定されたoffsetから始まるlengthバイトの指定されたバイト配列の内容を本文として持つリクエストボディ・パブリッシャを返します。- パラメータ:
- buf- 本文を含むバイト配列
- offset- 最初のバイトのオフセット
- length- 使用するバイト数
- 戻り値:
- a BodyPublisher
- 例外:
- IndexOutOfBoundsException- サブ範囲が範囲外であると定義されている場合
 
 - 
fromFilestatic HttpRequest.BodyPublisher fromFile(Path path) throws FileNotFoundException ファイルの内容からデータを取得するリクエスト・ボディ・パブリッシャ。- パラメータ:
- path- 本文を含むファイルへのパス
- 戻り値:
- a BodyPublisher
- 例外:
- FileNotFoundException- パスが見つからない場合
- SecurityException- セキュリティ・マネージャがインストールされていて、指定されたファイルに対して- read accessを拒否した場合
 
 - 
fromByteArraysstatic HttpRequest.BodyPublisher fromByteArrays(Iterable<byte[]> iter) バイト配列のIterableからデータを取得するリクエストボディ・パブリッシャ。Iteratorインスタンスを提供するIterableが提供されています。 リクエストを送信しようとするたびに、Iterableが1回呼び出されます。- パラメータ:
- iter- バイト配列のIterable
- 戻り値:
- a BodyPublisher
 
 - 
noBodystatic HttpRequest.BodyPublisher noBody() リクエスト本文を送信しないリクエストボディ・パブリッシャ。- 戻り値:
- すぐに完了し、リクエスト本文を送信しないBodyPublisher。
 
 - 
contentLengthlong contentLength() このリクエスト本文のコンテンツ長を返します。 リクエスト本文が送信されない場合はゼロ、固定長コンテンツの場合は0より大きい、未知のコンテンツ長の場合はゼロ未満である可能性があります。 このメソッドは、パブリッシャがサブスクライブされる前に呼び出すことができます。 このメソッドは、HTTPクライアントの実装によって複数回呼び出され、毎回同じ定数値を返さなければなりません。- 戻り値:
- 既知の場合は、このリクエスト本文のコンテンツの長さ
 
 
- 
 
-