public class ResponseBody
extends java.lang.Object
 レスポンスボディの内容を以下の3つの方式のいずれかによって指定する。
 (排他利用)
 1. コンテンツパスによる静的リソースの指定。
     HttpResponse.setContentPath(ResourceLocator)
 2. 入力ストリームによる指定。
     HttpResponse.setBodyStream(InputStream)
 3. 内部バッファへの書き込み。
     HttpResponse.write(byte[])
     HttpResponse.write(CharSequence)
 
 内部バッファは一定サイズまではヒープ領域上に置かれるが、それを超えた
 場合は一時ファイルに出力される。
 入力ストリーム一時ファイルは、レスポンス処理終了後に
 HttpResponseHandler が cleanup() を呼ぶことで
 自動的に削除される。HttpResponse, 
HttpResponseHandler| コンストラクタと説明 | 
|---|
ResponseBody(HttpResponse response)
コンストラクタ 
 | 
| 修飾子とタイプ | メソッドと説明 | 
|---|---|
static void | 
addTempFileToDelete(java.io.File file)
削除しなければならない一時ファイルに追加する。 
 | 
static void | 
cleanup()
カレントスレッドがIO用に確保しているリソースを全て開放する。 
 | 
ResourceLocator | 
getContentPath()
コンテンツパスを取得する。 
 | 
java.io.InputStream | 
getInputStream()
ボディの内容を格納した入力ストリームを返す。 
 | 
boolean | 
isEmpty()
ボディの内容が設定されていなければtrueを返す。 
 | 
java.lang.Long | 
length()
ボディの内容をヒープバッファに保持している場合、そのサイズを返す。 
 | 
ResponseBody | 
setContentPath(ResourceLocator path)
ボディのコンテンツパスを設定する。 
 | 
ResponseBody | 
setInputStream(java.io.InputStream input)
ボディの内容を格納した入力ストリームを設定する。 
 | 
java.lang.String | 
toString()
 この実装ではボディの内容を表す文字列を返す。 
 | 
ResponseBody | 
write(byte[] bytes)
内部バッファにバイナリデータを書き込む。 
 | 
ResponseBody | 
write(java.nio.ByteBuffer bytes)
内部バッファにバイナリデータを書き込む。 
 | 
ResponseBody | 
write(java.lang.CharSequence text)
内部バッファにキャラクタデータを書き込む。 
 | 
public ResponseBody(HttpResponse response)
response - HTTPレスポンス本体public boolean isEmpty()
public java.lang.Long length()
内部バッファを使用していない場合、もしくは、 内部バッファとして一時ファイルを使用している場合は null を返す。
public ResponseBody setContentPath(ResourceLocator path)
path - コンテンツパスpublic ResourceLocator getContentPath()
public ResponseBody write(byte[] bytes)
bytes - バイナリデータpublic ResponseBody write(java.lang.CharSequence text)
text - キャラクタデータpublic ResponseBody write(java.nio.ByteBuffer bytes)
要求サイズがヒープバッファの上限値を超過した場合、 一時ファイルへの書き出しが許可されていれば、 ヒープバッファを破棄し、以降は一時ファイルをバッファとして使用する。 (ヒープバッファは直近のGCにより開放される。) 一時ファイルへの書き出しが許可されていないばあい、 レスポンスコード400に相当するHTTPエラーを送出する。
bytes - バイナリデータpublic java.lang.String toString()
 1. コンテンツパスが指定されている場合。
     パス文字列を返す。
 2. 入力ストリームもしくは一時ファイル上にバッファリングしている場合。
     先頭16KBの内容をデコードした文字列を返す。
 3. ヒープ上にバッファリングしている場合。
     バッファの内容をデコードした文字列を返す。
 toString クラス内 java.lang.Objectデコードに使用するコンバータpublic java.io.InputStream getInputStream()
1. コンテントパスのスキームが file:// もしくは classpath:// のいずれでもない場合 2. コンテントパスのスキームが file:// もしくは classpath:// だが、その参照先のファイルが存在しない場合。
public ResponseBody setInputStream(java.io.InputStream input)
input - 入力ストリームpublic static void addTempFileToDelete(java.io.File file)
cleanup()メソッドが呼ばれた際に指定された一時ファイルが削除される。file - 一時ファイルpublic static void cleanup()