Newer
Older
dxcgt / app / src / main / java / com / smartdot / cgt / util / ResponseJsonItem.java
wangxitong on 6 Apr 2021 3 KB first commit
package com.smartdot.cgt.util;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.Iterator;

import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

public class ResponseJsonItem {

    private JSONObject rootObj;

    public ResponseJsonItem(String jsonString) throws IOException, JSONException {
        rootObj = new JSONObject(jsonString);
    }

    public ResponseJsonItem(InputStream stream) throws IOException, JSONException {
        StringBuffer sb = new StringBuffer();
        BufferedReader reader = new BufferedReader(new InputStreamReader(stream));
        String line = reader.readLine();
        while (line != null) {
            sb.append(line);
            line = reader.readLine();
        }
        reader.close();
        stream.close();
        rootObj = new JSONObject(sb.toString());
    }

    public boolean getBoolean(String key) throws JSONException {
        return rootObj.getBoolean(key);
    }

    public Object get(String name) throws JSONException {
        return rootObj.get(name);
    }

    public double getDouble(String name) throws JSONException {
        return rootObj.getDouble(name);
    }

    public int getInt(String name) throws JSONException {
        return rootObj.getInt(name);
    }

    public JSONArray getJSONArray(String name) throws JSONException {
        return rootObj.getJSONArray(name);
    }

    public JSONObject getJSONObject(String name) throws JSONException {
        return rootObj.getJSONObject(name);
    }

    public long getLong(String name) throws JSONException {
        return rootObj.getLong(name);
    }

    public String getString(String name) throws JSONException {
        return rootObj.getString(name);
    }

    public boolean isNull(String name) {
        return rootObj.isNull(name);
    }

    @SuppressWarnings("unchecked")
    public Iterator<String> keys() {
        return rootObj.keys();
    }

    public int length() {
        return rootObj.length();
    }

    public JSONArray names() {
        return rootObj.names();
    }

    public Object opt(String name) {
        return rootObj.opt(name);
    }

    public boolean optBoolean(String name, boolean fallback) {
        return rootObj.optBoolean(name, fallback);
    }

    public boolean optBoolean(String name) {
        return rootObj.optBoolean(name);
    }

    public double optDouble(String name, double fallback) {
        return rootObj.optDouble(name, fallback);
    }

    public double optDouble(String name) {
        return rootObj.optDouble(name);
    }

    public int optInt(String name, int fallback) {
        return rootObj.optInt(name, fallback);
    }

    public int optInt(String name) {
        return rootObj.optInt(name);
    }

    public JSONArray optJSONArray(String name) {
        return rootObj.optJSONArray(name);
    }

    public JSONObject optJSONObject(String name) {
        return rootObj.optJSONObject(name);
    }

    public long optLong(String name, long fallback) {
        return rootObj.optLong(name, fallback);
    }

    public long optLong(String name) {
        return rootObj.optLong(name);
    }

    public String optString(String name, String fallback) {
        return rootObj.optString(name, fallback);
    }

    public String optString(String name) {
        return rootObj.optString(name);
    }
}