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