/** * Copyright (c) 2014-present, Facebook, Inc. All rights reserved. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to use, * copy, modify, and distribute this software in source code or binary form for use * in connection with the web services and APIs provided by Facebook. * * As with any software that integrates with the Facebook platform, your use of * this software is subject to the Facebook Developer Principles and Policies * [http://developers.facebook.com/policy/]. This copyright notice shall be * included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ package com.example.places.model; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; import java.util.ArrayList; import java.util.List; public class CurrentPlaceResult { private static final String PARAM_DATA = "data"; private static final String PARAM_SUMMARY = "summary"; private static final String PARAM_TRACKING = "tracking"; private List<Place> places; private String tracking; public List<Place> getPlaces() { return places; } public String getTracking() { return tracking; } public static CurrentPlaceResult fromJson(JSONObject json) throws JSONException { CurrentPlaceResult response = new CurrentPlaceResult(); if (json.has(PARAM_DATA)) { JSONArray array = json.getJSONArray(PARAM_DATA); int length = array.length(); response.places = new ArrayList<>(length); for (int i=0; i<length; i++) { JSONObject placeJson = array.getJSONObject(i); response.places.add(new Place(placeJson)); } } if (json.has(PARAM_SUMMARY)) { JSONObject summaryJson = json.getJSONObject(PARAM_SUMMARY); response.tracking = summaryJson.getString(PARAM_TRACKING); } return response; } }