public class SimpleClientHttpRequestFactory extends ObjectSE implements ClientHttpRequestFactory, AsyncClientHttpRequestFactory
ClientHttpRequestFactory 実装。HttpURLConnectionSE, HttpComponentsClientHttpRequestFactory| コンストラクターと説明 |
|---|
SimpleClientHttpRequestFactory() |
| 修飾子と型 | メソッドと説明 |
|---|---|
AsyncClientHttpRequest | createAsyncRequest(URISE uri, HttpMethod httpMethod) 指定された URI および HTTP メソッドの新しい非同期 AsyncClientHttpRequest を作成します。 |
ClientHttpRequest | createRequest(URISE uri, HttpMethod httpMethod) 指定された URI および HTTP メソッドの新しい ClientHttpRequest を作成します。 |
protected HttpURLConnectionSE | openConnection(URLSE url, ProxySE proxy) 指定された URL への接続を開いて返します。 |
protected void | prepareConnection(HttpURLConnectionSE connection, StringSE httpMethod) 指定された HttpURLConnectionSE を準備するためのテンプレートメソッド。 |
void | setBufferRequestBody(boolean bufferRequestBody) このリクエストファクトリがリクエストボディを内部でバッファリングするかどうかを示します。 |
void | setChunkSize(int chunkSize) リクエスト本文をローカルにバッファリングしない場合に、各チャンクに書き込むバイト数を設定します。 |
void | setConnectTimeout(int connectTimeout) 基礎となる URLConnection の接続タイムアウトを設定します(ミリ秒単位)。 |
void | setOutputStreaming(boolean outputStreaming) 基になる URLConnection を「出力ストリーミング」モードに設定できる場合に設定します。 |
void | setProxy(ProxySE proxy) このリクエストファクトリに使用する ProxySE を設定します。 |
void | setReadTimeout(int readTimeout) 基礎となる URLConnection の読み取りタイムアウトを設定します(ミリ秒単位)。 |
void | setTaskExecutor(AsyncListenableTaskExecutor taskExecutor) このリクエストファクトリのタスクエグゼキューターを設定します。 |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSEpublic void setBufferRequestBody(boolean bufferRequestBody)
デフォルトは true です。POST または PUT を介して大量のデータを送信する場合、メモリが不足しないように、このプロパティを false に変更することをお勧めします。これにより、基になる HttpURLConnectionSE に直接ストリーミングする ClientHttpRequest(Content-Length が事前にわかっている場合)、または「チャンク転送エンコード」を使用する ClientHttpRequest が得られます(Content-Length が事前にわかっていない場合)。
public void setChunkSize(int chunkSize)
このパラメーターは、bufferRequestBody が false に設定されている場合にのみ使用され、Content-Length は事前に認識されていないことに注意してください。
public void setConnectTimeout(int connectTimeout)
デフォルトは、システムのデフォルトのタイムアウトです。
public void setReadTimeout(int readTimeout)
デフォルトは、システムのデフォルトのタイムアウトです。
public void setOutputStreaming(boolean outputStreaming)
true です。 出力ストリーミングが有効な場合、認証とリダイレクトは自動的に処理できません。出力ストリーミングが無効になっている場合、基礎となる接続の HttpURLConnection.setFixedLengthStreamingMode(int)SE および HttpURLConnection.setChunkedStreamingMode(int)SE メソッドは呼び出されません。
outputStreaming - 出力ストリーミングが有効な場合 public void setTaskExecutor(AsyncListenableTaskExecutor taskExecutor)
taskExecutor - タスクエグゼキューター public ClientHttpRequest createRequest(URISE uri, HttpMethod httpMethod) throws IOExceptionSE
ClientHttpRequestFactoryClientHttpRequest を作成します。 返されたリクエストは、ClientHttpRequest.execute() を呼び出して書き込み、実行できます。
ClientHttpRequestFactory の createRequest uri - リクエストを作成する URIhttpMethod - 実行する HTTP メソッド IOExceptionSE - I/O エラーの場合 public AsyncClientHttpRequest createAsyncRequest(URISE uri, HttpMethod httpMethod) throws IOExceptionSE
AsyncClientHttpRequest を作成します。 返されたリクエストは、AsyncClientHttpRequest.executeAsync() を呼び出して書き込み、実行できます。
このメソッドを呼び出す前に、taskExecutor プロパティを設定する必要があります。
AsyncClientHttpRequestFactory の createAsyncRequest uri - リクエストを作成する URIhttpMethod - 実行する HTTP メソッド IOExceptionSE - I/O エラーの場合 protected HttpURLConnectionSE openConnection(URLSE url, @Nullable ProxySE proxy) throws IOExceptionSE
デフォルトの実装では、指定されたプロキシ(存在する場合)を使用して接続を開きます。
url - 接続を開くための URLproxy - 使用するプロキシ。null の場合があります IOExceptionSE - I/O エラーの場合 protected void prepareConnection(HttpURLConnectionSE connection, StringSE httpMethod) throws IOExceptionSE
HttpURLConnectionSE を準備するためのテンプレートメソッド。デフォルトの実装では、入力と出力の接続を準備し、HTTP メソッドを設定します。
connection - 準備する接続 httpMethod - HTTP リクエストメソッド (GET、POST など。)IOExceptionSE - I/O エラーの場合