Example usage for com.google.gson.reflect TypeToken TypeToken

List of usage examples for com.google.gson.reflect TypeToken TypeToken

Introduction

In this page you can find the example usage for com.google.gson.reflect TypeToken TypeToken.

Prototype

@SuppressWarnings("unchecked")
protected TypeToken() 

Source Link

Document

Constructs a new type literal.

Usage

From source file:blog.BlogHelper.java

License:Apache License

public static List<ImageHolder> loadImagesFrom(String pathname) {
    List<ImageHolder> imageHolders = new ArrayList<>();
    try {// ww  w  .j  av a2 s .  c om
        GsonBuilder gsonBuilder = new GsonBuilder();
        gsonBuilder.registerTypeAdapterFactory(new ClassTypeAdapterFactory());
        gsonBuilder.registerTypeAdapter(Class.class, new ClassTypeAdapter());
        Gson gson = gsonBuilder.create();
        imageHolders
                .addAll(gson.fromJson(FileUtils.readFileToString(new File(pathname), Charset.defaultCharset()),
                        new TypeToken<List<ImageHolder>>() {
                        }.getType()));
    } catch (IOException e) {
        e.printStackTrace();
    }

    return imageHolders;
}

From source file:blog.identify.IdentifyMultipleFacesExample.java

License:Apache License

private static List<ImageHolder> candidates() throws IOException {
    GsonBuilder gsonBuilder = new GsonBuilder();
    gsonBuilder.registerTypeAdapterFactory(new ClassTypeAdapterFactory());
    gsonBuilder.registerTypeAdapter(Class.class, new ClassTypeAdapter());
    Gson gson = gsonBuilder.create();/*from  w  ww  .ja  va2  s . c om*/
    return gson.fromJson(
            FileUtils.readFileToString(new File("src/test/resources/blog/sets/love_hate_candidates.json"),
                    Charset.defaultCharset()),
            new TypeToken<List<ImageHolder>>() {
            }.getType());
}

From source file:bootwildfly.ProblemaJsonSerializer.java

@Override
public JsonElement serialize(Problema p, Type type, JsonSerializationContext jsc) {
    //jsc.serialize()
    JsonObject object = new JsonObject();
    TypeToken<List<Teste>> typeTestes = new TypeToken<List<Teste>>() {
    };//from ww w . j  ava  2  s .com
    JsonElement sumario = jsc.serialize(p.getSumario(), SumarioDeProblema.class);
    JsonElement testes = jsc.serialize(p.getTeste());
    object.addProperty("id", p.getId());
    object.addProperty("dica", p.getDica());
    object.addProperty("isPublicado", p.isIsPublicado());
    object.addProperty("isPublicado", p.isIsPublicado());
    object.add("sumario", sumario);
    object.add("teste", testes);

    return object;
}

From source file:boxalino.client.SDK.BxData.java

public Map<String, Object> checkResponseBody(String responseBody, String url) throws BoxalinoException {
    if (responseBody == null) {
        throw new BoxalinoException("API response of call to " + url + " is empty string, this is an error!");

    }/*  ww  w  . ja  va2  s  .  co m*/

    Gson gson = new Gson();
    Map<String, Object> value = gson.fromJson(responseBody, new TypeToken<HashMap<String, Object>>() {
    }.getType());

    if (value.containsKey("token")) {
        if (value.containsKey("changes")) {
            if (value.get("changes").toString().length() > 2) {
                throw new BoxalinoException(responseBody);
            }
        }
    }
    return value;
}

From source file:br.com.anteros.social.facebook.utils.FacebookUtils.java

License:Apache License

public static <T> List<T> typedListFromResponse(GraphResponse response /*, Class<T> cls */) {
    return JsonUtils.fromJson(response.getRawResponse(), new TypeToken<List<T>>() {
    }.getType());//  w  ww. jav a2  s . com
}

From source file:br.com.anteros.social.facebook.utils.FacebookUtils.java

License:Apache License

public static <T> List<T> typedListFromResponse(String raw) {
    return JsonUtils.fromJson(raw, new TypeToken<List<T>>() {
    }.getType());//from  ww  w .  ja va  2s .c  om
}

From source file:br.com.anteros.social.facebook.utils.JsonUtils.java

License:Apache License

public static <T> T fromJson(String json, Class<T> cls) {
    Gson gson = buildGson();// ww  w .j a va 2  s.c om

    JsonParser parser = new JsonParser();
    JsonElement element = parser.parse(json);

    if (cls != null && cls.isArray() && element instanceof JsonArray == false) {
        JsonArray jsonArray = new JsonArray();
        jsonArray.add(element);

        Type listType = new TypeToken<T>() {
        }.getType();
        return gson.fromJson(jsonArray, listType);
    }

    return gson.fromJson(json, cls);
}

From source file:br.com.anteros.social.facebook.utils.JsonUtils.java

License:Apache License

public static <T> T fromJsonExcludeFields(String json, Class<T> cls) {
    Gson gson = new GsonBuilder().excludeFieldsWithoutExposeAnnotation().create();

    JsonParser parser = new JsonParser();
    JsonElement element = parser.parse(json);

    if (cls.isArray() && element instanceof JsonArray == false) {
        JsonArray jsonArray = new JsonArray();
        jsonArray.add(element);//from  w ww. ja  v a 2s .  c  om

        Type listType = new TypeToken<T>() {
        }.getType();
        return gson.fromJson(jsonArray, listType);
    }

    return gson.fromJson(json, cls);
}

From source file:br.com.bean.RestControllers.alunoController.java

@RequestMapping(value = "busca-alunos", method = RequestMethod.GET)
public String get() throws ParseException {
    Session sessao = HibernateUtility.getSession();
    Transaction transacao = sessao.beginTransaction();
    try {/*from  w w  w .  jav  a  2 s  .com*/
        Criteria query = sessao.createCriteria(Aluno.class);
        Criterion ativo = Restrictions.eq("ativo", 1);
        query.add(ativo);
        List<Aluno> listaDeAlunos = query.list();
        Type TipolistaDeAlunos = new TypeToken<List<Aluno>>() {
        }.getType();
        Gson gson = new GsonBuilder().registerTypeAdapter(Collection.class, new CollectionDeserializer())
                .create();
        return gson.toJson(listaDeAlunos, TipolistaDeAlunos);
    } catch (HibernateException e) {
        transacao.rollback();
        return null;
    }
}

From source file:br.com.bean.RestControllers.faculdadeController.java

@RequestMapping(value = "busca-faculdades", method = RequestMethod.GET)
public String get() throws ParseException {
    Session sessao = HibernateUtility.getSession();
    Transaction transacao = sessao.beginTransaction();
    try {/*  w  w w .  j a v  a  2s  .  c o  m*/
        Criteria query = sessao.createCriteria(Faculdade.class);
        Criterion ativo = Restrictions.eq("ativo", 1);
        query.setResultTransformer(DistinctRootEntityResultTransformer.INSTANCE);
        query.add(ativo);
        List<Faculdade> listaDeFaculdades = query.list();
        // Retira Referencia Circular
        for (Faculdade f : listaDeFaculdades) {
            f.setTurmas(null);
        }
        Type TipolistaDeFaculdades = new TypeToken<List<Faculdade>>() {
        }.getType();
        Gson gson = new GsonBuilder().registerTypeAdapter(Collection.class, new CollectionDeserializer())
                .create();
        String faculdades = gson.toJson(listaDeFaculdades, TipolistaDeFaculdades);
        return faculdades;
    } catch (HibernateException e) {
        transacao.rollback();
        return null;
    } catch (Exception e) {
        String erro = e.getMessage();
        return null;
    } finally {
        sessao.close();
    }
}