DefaultHttpClient から HttpURLConnection への書き換え

JSONFunctions の今の実装が以下なカンジなのですが

    public static String getHTTPResponseBodyString(HttpUriRequest request,
            DefaultHttpClient httpclient)
        throws IOException, ClientProtocolException, RuntimeException {
        return httpclient.execute(request,
                new ResponseHandler<String>() {

            @Override
            public String handleResponse(HttpResponse response)
                    throws ClientProtocolException, IOException {
                switch (response.getStatusLine().getStatusCode()) {
                case HttpStatus.SC_OK:
                    return EntityUtils.toString(response.getEntity(), "UTF-8");
                default:
                    throw new RuntimeException("HTTP Status is " + 
                                   response.getStatusLine().getStatusCode());
                }
            }
        });

これを HttpUrlConnections 対応に書き換えるとどうなるか。

とりあえず

基本的な流れとしては

  • HttpURLConnection オブジェクト取得
  • メソドを設定してリクエストを送信
  • レスポンスコードの確認
  • レスポンス文字列取得

という流れらしい。あと、パラメータを渡すのも Stream で云々らしい。

むむ

とりあえず

  • GET と DELETE は URL で処理してる
  • POST と PUT はパラメータ付き

というあたりもアレ。つうかこれ、ついでに試験も作っておきたいな。諸々確認しつつ検討する方向で元気があれば追記するかも。