/*
    ShengDao Android Client, JsonMananger
    Copyright (c) 2014 ShengDao Tech Company Limited
 */

package com.bc_chat.im.json;

import android.util.Log;

import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;

import java.util.List;


/**
 * [JSON解析管理类]
 *
 * @author huxinwu
 * @version 1.0
 * @date 2014-3-5
 **/
public class JsonMananger {

    private static final String tag = JsonMananger.class.getSimpleName();

    /**
     * 将json字符串转换成java对象
     *
     * @param json
     * @param cls
     * @return
     */
    public static <T> T jsonToBean(String json, Class<T> cls) {
        return new Gson().fromJson(json, cls);
    }

    /**
     * 将json字符串转换成java List对象
     *
     * @param json
     * @return
     */
    public static <T> List<T> jsonToList(String json, Class<T> cls) {
        return new Gson().fromJson(json, new TypeToken<List<T>>() {
        }.getType());
    }

    /**
     * 将bean对象转化成json字符串
     *
     * @param obj
     * @return
     */
    public static String beanToJson(Object obj)  {
        String result = new Gson().toJson(obj);
        Log.e(tag, "beanToJson: " + result);
        return result;
    }

}
