Chunk形式の処理の実装

HTTP-GET を、http://www.google.co.jp/ に投げると、チャンク形式の転送である Transfer-Encoding: chunked が、
HTTPヘッダに付いている。
でも、Apache component HttpClient で実行して Entity の先頭にチャンクサイズは見当たらない。

HttpClient は、以下のように用意する。
HttpResponseInterceptor を使う方法をよく見かける。
この方法を見て思ったのは、通常でもHttpClient execute の戻り値でHttpResponse を受けるよりも
インターセプトした方が良いのでは?と最近考えてる。

import java.io.BufferedInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import org.apache.http.Header;
import org.apache.http.HttpEntity;
import org.apache.http.HttpException;
import org.apache.http.HttpResponse;
import org.apache.http.HttpResponseInterceptor;
import org.apache.http.ProtocolVersion;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.impl.io.ChunkedInputStream;
import org.apache.http.protocol.HttpContext;
    //
    //

HttpGet request = new HttpGet(url);
request.addHeader("Connection","Keep-Alive");
DefaultHttpClient httpClient = new DefaultHttpClient();
httpClient.addResponseInterceptor(new HttpResponseInterceptor(){
   @Override
   public void process(HttpResponse response,HttpContext context) throws HttpException,IOException{

      int statusCode = response.getStatusLine().getStatusCode();
      ProtocolVersion procolversion = response.getProtocolVersion();
      String protcol = procolversion.getProtocol();
      String protcolNumber = String.format("%d.%d",procolversion.getMajor(),procolversion.getMinor());

      HttpEntity entity = response.getEntity();

      if (entity != null){
         InputStream inputStream = entity.getContent();
         if (inputStream instanceof ChunkedInputStream){
            for(Header h : *1{
               // トレーラ 情報による処理
            }
         }

         BufferedInputStream bufferedInputStream = new BufferedInputStream(inputStream, 1024);
         ByteArrayOutputStream out = new ByteArrayOutputStream();
         byte buffer[] = new byte[1024];
         int size = 0;
         while*2 != -1){
            out.write(buffer, 0, size);
            out.flush();
         }
         out.close();
      }
   }
});
try{
   httpClient.execute(request);
}catch(Exception e){
   //
}
=======================
しかし、Google 検索ページをこれで要求して実行しても、
  inputStream instanceof ChunkedInputStream が true であるものの、
  ChunkedInputStream の getFooters() の結果は空である!???

*1:ChunkedInputStream) inputStream).getFooters(

*2:size = bufferedInputStream.read(buffer