TODO

以下です。

  • GAE から戻ったレスポンスから JSON なオブジェクトの Factory クラスの作成
  • ant で jar 作る
  • junit な試験書く

その他気づき

clone するとき、以下な方式ではパスワードを要求されてたんですが

$ git git://github.com:yamanetoshi/GAEAccess.git

プロトコルを http にしたら取得できる模様。

$ git http://github.com/yamanetoshi/GAEAccess.git

ちなみに clone した後に以下なコマンドで develop なブランチも取得必要。

$ git branch -t -b develop origin/develop
Branch develop set up to track remote branch refs/remotes/origin/develop.
Switched to a new branch "develop"
$ git branch
* develop
  master
$

今のところ、develop から master には merge してないし一段落するまでは merge しないと思うので歴史が進むのは develop のみな方向ッス。patch 歓迎します。
ちなみに今日もちょっとだけ手を入れたんですが、branch 作って云々なヤリ方をしてない事に帰宅途中に気づいた。まだ全然ちゃんとヤレてないな。

JSON オブジェクトの取得について

流れ的には

  • HTTP レスポンスから BufferedReader 取得
  • readline しつつ StringBuffer なソレに append
  • 読み込み終了したらバッファを toString
  • 上記の String なソレを JSONArray なコンストラクタに渡して JSONArray 生成

これを戻せば良いのかな。。あ、違うや。見てるサンプルが Array 作ってるのか。てーコトは単純に toString したオブジェクトを戻してやるのが最適解?
とりあえず以下なソレをでっち上げた。

package jp.shuri.yamanetoshi.gaeaccess;

import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;

import org.apache.http.HttpResponse;

public class HTTPResponse2JSON {
	public static String getJSONString(HttpResponse response) throws Exception {
		StringBuffer ret = new StringBuffer();
		if(response.getStatusLine().getStatusCode() < 400) {
			InputStream is = response.getEntity().getContent();
			InputStreamReader isr = new InputStreamReader(is);
			BufferedReader br = new BufferedReader(isr);
			String line;
			while((line = br.readLine()) != null) {
				ret.append(line);
			}
		}
		return ret.toString();
	}
}

junit な試験を書いてないし、ライブラリにもなってませんので git にソースはありますが、動作保証は全く無いッスね。わははは。
今から UT 書きます。