昨日の続きです。

使用するテストデータはこちら

そしてこれに対するパーサークラスが下記2つです。
PostMessageList

@JsonModel(decamelize=false)
public class PostMessageList {
    @JsonKey
    public List<TestJsonParse> postlist;

    public List<TestJsonParse> getPostlist() {
        return postlist;
    }

    public void setPostlist(List<TestJsonParse> postlist) {
        this.postlist = postlist;
    }
}

TestJsonParse

@JsonModel(decamelize=false)
public class TestJsonParse {
    @JsonKey
    public String id_postmessage;

    @JsonKey
    public String id_sender;

    public String getId_postmessage() {
        return id_postmessage;
    }
    public void setId_postmessage(String id_postmessage) {
        this.id_postmessage = id_postmessage;
    }

    public String getId_sender() {
        return id_sender;
    }
    public void setId_sender(String id_sender) {
        this.id_sender = id_sender;
    }
}

上記のクラスを定義して、
テストデータのInputStreamを生成できたら、下記のようにして読み込めばパース完了です。

JsonPullParser parser = JsonPullParser.newParser(in);
PostMessageList json = PostMessageListGen.get(parser);
Log.d("test",json.postlist.get(2).id_sender);

こんな感じでパースした内容を参照できます。


JsonPullParserはProGuardの難読化にも対応できるそうで、その点でも使いたいなーと思ってます。
難読化が出来る/出来ないについて、どういうことなのかよくわかってないので、
次回は難読化について調べてみます。