1 // Copyright (c) 2013 Intel Corporation. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 package org.xwalk.core.internal.extension.api.contacts;
7 import android.util.Log;
9 import java.util.ArrayList;
10 import java.util.List;
12 import org.json.JSONArray;
13 import org.json.JSONException;
14 import org.json.JSONObject;
17 * The class mainly wraps try catch blocks of JSON.
19 public class ContactJson {
20 private static final String TAG = "ContactJson";
22 private JSONObject mObject;
23 public ContactJson(JSONObject o) {
27 public ContactJson(String init) {
29 if (init == null) return;
30 mObject = new JSONObject(init);
31 } catch (JSONException e) {
32 Log.e(TAG, "Init JSON by " + init + " failed: " + e.toString());
36 public List<String> getStringArray(String name) {
37 List<String> list = new ArrayList<String>();
38 if (mObject != null && mObject.has(name)) {
40 JSONArray jsonArray = mObject.getJSONArray(name);
41 for (int i = 0; i < jsonArray.length(); i++) {
42 list.add(jsonArray.getString(i));
44 } catch (JSONException e) {
45 Log.e(TAG, "getStringArray(" + name + "): Failed to parse json data: " + e.toString());
51 public String getFirstValue(String name) {
53 if (mObject != null && mObject.has(name)) {
55 value = mObject.getJSONArray(name).getString(0);
56 } catch (JSONException e) {
57 Log.e(TAG, "getArrayTop(" + name + "): Failed to parse json data: " + e.toString());
63 public String getString(String name) {
65 if (mObject != null && mObject.has(name)) {
67 value = mObject.getString(name);
68 } catch (JSONException e) {
69 Log.e(TAG, "getString(" + name + "): Failed to parse json data: " + e.toString());
75 public boolean getBoolean(String name) {
76 boolean value = false;
77 if (mObject != null && mObject.has(name)) {
79 value = mObject.getBoolean(name);
80 } catch (JSONException e) {
81 Log.e(TAG, "getBoolean(" + name + "): Failed to parse json data: "+e.toString());
87 public JSONObject getObject(String name) {
89 if (mObject != null && mObject.has(name)) {
91 o = mObject.getJSONObject(name);
92 } catch (JSONException e) {
93 Log.e(TAG, "getObject(" + name + "): Failed to parse json data: "+e.toString());