Example usage for com.google.gson.stream JsonReader JsonReader

List of usage examples for com.google.gson.stream JsonReader JsonReader

Introduction

In this page you can find the example usage for com.google.gson.stream JsonReader JsonReader.

Prototype

public JsonReader(Reader in) 

Source Link

Document

Creates a new instance that reads a JSON-encoded stream from in .

Usage

From source file:eu.liveGov.libraries.livegovtoolkit.helper.PermissionHelper.java

License:Open Source License

@Override
public void webcallReady(HttpResponse response) {
    if (response != null && response.getStatusLine().getStatusCode() == 200) {
        try {//from ww  w  . j a v  a 2 s  .  co  m
            Gson gson = new Gson();
            JsonReader jr = new JsonReader(new InputStreamReader(response.getEntity().getContent()));

            PermissionObject[] objects = gson.fromJson(jr, PermissionObject[].class);
            Permissions result = new Permissions();
            result.setPermissions(new ArrayList<PermissionObject>(Arrays.asList(objects)));

            if (result.getPermissions().size() > 0) {
                PermissionHelper.savePermissions(_context, result);
            } else {
                logger.error("Application doesn't have any permissions.");
            }
            PermissionHelper.permissionsUpdated(result);
        } catch (Exception e) {
            logger.error("webcallReady; Exception: {}", e.getCause());
            PermissionHelper.permissionsUpdated(null);
        }
    } else {
        if (response == null) {
            logger.error("webcallReady;  No internet");
        } else {
            logger.error("webcallReady; http statuscode: {}", response.getStatusLine().getStatusCode());
        }
        PermissionHelper.permissionsUpdated(null);
    }
    PermissionHelper.isDownloading = false;
}

From source file:eu.liveGov.libraries.livegovtoolkit.helper.QuestionaireHelper.java

License:Open Source License

private void handleGetResponse(HttpResponse response) {
    if (response != null && response.getStatusLine().getStatusCode() == 200) {
        try {/*from  w  w w.j a  v  a  2 s  .  co  m*/
            Gson gson = new Gson();
            JsonReader jr = new JsonReader(new InputStreamReader(response.getEntity().getContent()));

            QuestionaireResponseObject result = gson.fromJson(jr, QuestionaireResponseObject.class);

            if (result.getStatus() == QuestionaireResponseObject.QUESTIONAIRE_SET) {
                updateQuestionaireListeners(result.getQuestionaire());
            } else if (result.getStatus() == QuestionaireResponseObject.QUESTIONAIRE_RESULT_SET) {
                updateQuestionaireResultListeners(result.getQuestionaireResult());
            } else if (result.getStatus() == QuestionaireResponseObject.BOTH_SET) {
                updateBothListeners(result.getQuestionaire(), result.getQuestionaireResult());
            } else { // if the status is unknown, send a null object.
                updateQuestionaireListeners(null);
            }

        } catch (Exception e) {
            logger.error("webcallReady; Exception: {}", e.getCause());
            updateQuestionaireListeners(null);
        }
    } else {
        if (response == null) {
            logger.error("webcallReady;  No internet");
        } else {
            logger.error("webcallReady; http statuscode: {}", response.getStatusLine().getStatusCode());
        }

        updateQuestionaireListeners(null);
    }
}

From source file:eu.liveGov.libraries.livegovtoolkit.helper.QuestionaireHelper.java

License:Open Source License

private void handleSendResponse(HttpResponse response) {
    if (response != null && response.getStatusLine().getStatusCode() == 200) {
        updateQuestionaireSendtoServerListeners(true);
    } else {//from ww w. ja  va 2  s  .  c  o  m
        try {
            Gson gson = new Gson();
            JsonReader jr = new JsonReader(new InputStreamReader(response.getEntity().getContent()));
            ServiceApiErrorObject result = gson.fromJson(jr, ServiceApiErrorObject.class);
            logger.error("handleSendResponse;statuscode: {}, mesaage:{}",
                    response.getStatusLine().getStatusCode(), result.getMessage());
        } catch (Exception e) {

        }
        updateQuestionaireSendtoServerListeners(false);
    }
}

From source file:eu.liveGov.libraries.livegovtoolkit.helper.UserInformationHelper.java

License:Open Source License

@Override
public void webcallReady(HttpResponse response) {
    if (response != null && response.getStatusLine().getStatusCode() == 200) {
        try {/*from w  ww. ja  va2  s.com*/
            Gson gson = new Gson();
            InputStream is = response.getEntity().getContent();
            JsonReader jr = new JsonReader(new InputStreamReader(is));
            UserInformation result = gson.fromJson(jr, UserInformation.class);
            saveAnonymousUserId(_context, result.getAnonymousUserId());
            UserInformation currentUI = loadUserInformartion(_context, false);
            currentUI.setAnonymousUserId(result.getAnonymousUserId());

        } catch (Exception e) {
            logger.error("webcallReady; Exception: {}", e.getCause());
        }
        getUserInfoQuestionaire(_context);
    } else {
        if (response == null) {
            logger.error("webcallReady;  No internet");
        } else {
            logger.error("webcallReady; http statuscode: {}", response.getStatusLine().getStatusCode());
        }
    }
    sendAnonymousUpdated();
}

From source file:eu.modaclouds.sla.service.rest.ModacloudsTranslator.java

License:Apache License

@Override
public Map<IGuaranteeTerm, List<IMonitoringMetric>> translate(IAgreement agreement, String data) {
    MultivaluedMapWrapper<IGuaranteeTerm, IMonitoringMetric> resultWrapper = new MultivaluedMapWrapper<IGuaranteeTerm, IMonitoringMetric>();

    Gson gson = new Gson();
    JsonReader reader = null;/*from  w  w  w.j  a  v a 2  s  .c om*/
    Type type = new TypeToken<Map<String, Map<String, List<Map<String, String>>>>>() {
    }.getType();
    reader = new JsonReader(new StringReader(data));
    final Map<String, Map<String, List<Map<String, String>>>> json = gson.fromJson(reader, type);

    final MultivaluedMapWrapper<String, IGuaranteeTerm> metric2terms = initTermsMap(agreement);

    for (Map<String, List<Map<String, String>>> item : json.values()) {
        BindingHelper var = new BindingHelper(item);
        List<IGuaranteeTerm> terms = metric2terms.get(var.key);

        if (terms == null) {
            logger.warn("List of terms handling " + var.key + " is empty");
        }

        resultWrapper.addToKeys(terms, newMetric(var));
    }
    logger.debug("Output metricsmap = " + resultWrapper.getMap());
    return resultWrapper.getMap();
}

From source file:eu.pinnoo.garbagecalendar.util.parsers.CalendarParser.java

License:Apache License

@Override
protected ArrayList downloadData() throws IOException {
    ArrayList<PrimitiveCollection> list = new ArrayList<PrimitiveCollection>();
    InputStream inp = Network.getStream(getURL());
    JsonReader reader = new JsonReader(new InputStreamReader(inp, LocalConstants.ENCODING));
    PrimitiveCollectionList results = new GsonBuilder().create().fromJson(reader,
            PrimitiveCollectionList.class);
    list.addAll((java.util.Collection<PrimitiveCollection>) results.list);
    reader.close();//from w  ww.  j  av  a  2 s .c  o m
    return list;
}

From source file:eu.pinnoo.garbagecalendar.util.parsers.StreetsParser.java

License:Apache License

@Override
protected ArrayList downloadData() throws IOException {
    ArrayList<PrimitiveAddress> list = new ArrayList<PrimitiveAddress>();
    InputStream inp = Network.getStream(getURL());
    JsonReader reader = new JsonReader(new InputStreamReader(inp, LocalConstants.ENCODING));
    PrimitiveAddressList results = new GsonBuilder().create().fromJson(reader, PrimitiveAddressList.class);
    list.addAll((Collection<PrimitiveAddress>) results.list);
    reader.close();/*  w w w.  j  ava2  s  . c  o  m*/
    return list;
}

From source file:eventapp.beans.EventManagement.java

@Override
public GeoCoder geoCoding(String address) throws Exception {
    Gson gson = new Gson();
    GeoCoder location = null;/*w w w  .j a va 2 s.c  om*/

    URL url = new URL("https://maps.googleapis.com/maps/api/geocode/json?address=" + address
            + "&key=AIzaSyDQm3SmzFttml3FCJAsO6nQ7os_q8bdUhA");
    HttpURLConnection connection = (HttpURLConnection) url.openConnection();
    connection.setDoOutput(true);
    connection.setDoInput(true);
    connection.setRequestProperty("Acceptd", "application/json");
    connection.setRequestMethod("GET");
    String requestParams = "";

    try (OutputStream os = connection.getOutputStream();
            BufferedWriter _writer = new BufferedWriter(new OutputStreamWriter(os, "UTF-8"));) {
        _writer.write(requestParams);
        _writer.flush();
    }
    try (InputStream in = connection.getInputStream();
            JsonReader reader = new JsonReader(new InputStreamReader(in, "UTF-8"));) {
        JsonElement jelement = new JsonParser().parse(reader);
        //json.results[0].geometry.location
        JsonObject jobject = jelement.getAsJsonArray().get(0).getAsJsonObject().getAsJsonObject("geometry")
                .getAsJsonObject("location");
        location = gson.fromJson((JsonElement) jobject, GeoCoder.class);
    }
    return location;
}

From source file:fayder.restcountries.rest.CountryServiceHelper.java

License:Mozilla Public License

public static List<? extends BaseCountry> loadJson(String filename, Class<? extends BaseCountry> clazz) {
    LOG.debug("Loading JSON " + filename);
    List<BaseCountry> countries = new ArrayList<>();
    InputStream is = CountryServiceHelper.class.getClassLoader().getResourceAsStream(filename);
    Gson gson = new Gson();
    JsonReader reader;//from  w w  w.  j av  a  2s. c o  m
    try {
        reader = new JsonReader(new InputStreamReader(is, "UTF-8"));
        reader.beginArray();
        while (reader.hasNext()) {
            BaseCountry country = gson.fromJson(reader, clazz);
            countries.add(country);
        }
    } catch (Exception e) {
        LOG.error("Could not load JSON " + filename);
    }
    return countries;
}

From source file:fr.inria.atlanmod.discoverer.JsonSource.java

License:Open Source License

/**
 * Adds a new JSON definition from a file with the JSON as well as the input to get such a
 * definition. The input must be provided as a valid JSON object.
 * /*from   w w w. ja va2  s .  c o  m*/
 * Warning: If the JSON source already includes JSON Data, the provision of input must match
 * 
 * @param file
 * @param input
 * @throws FileNotFoundException
 */
public void addJsonDef(File file, String input) throws FileNotFoundException {
    if (file == null || !file.exists())
        throw new IllegalArgumentException("File cannot be null and must exist");
    if (input == null || input.equals(""))
        throw new IllegalArgumentException("Argument cannot be null or empty");
    if (this.jsonData.size() > 0 && this.withInput == false)
        throw new IllegalStateException("This JSON source was created to hold JSON data *without* input");

    JsonElement inputElement = (new JsonParser()).parse(new JsonReader(new StringReader(input)));
    if (!inputElement.isJsonObject())
        throw new JsonParseException("The input value must be a valid JSON object. Received " + input);

    JsonElement rootElement = (new JsonParser()).parse(new JsonReader(new FileReader(file)));
    JsonData data = new JsonData(inputElement.getAsJsonObject(), rootElement);
    getJsonData().add(data);
    this.withInput = true;
}