List of usage examples for com.google.gson.reflect TypeToken getType
public final Type getType()
From source file:com.ikanow.infinit.e.data_model.index.IndexManager.java
License:Apache License
@SuppressWarnings("unchecked") public static <S> S mapFromIndex(String s, TypeToken<S> type, BasePojoIndexMap<S> docMap) { GsonBuilder gb = BaseIndexPojo.getDefaultBuilder(); if (null != docMap) { gb = docMap.extendBuilder(gb);// w ww .j a va2 s. co m } return (S) gb.create().fromJson(s, type.getType()); }
From source file:com.ikanow.infinit.e.data_model.index.IndexManager.java
License:Apache License
public static <S> JsonElement mapListToIndex(Collection<S> list, TypeToken<? extends Collection<S>> listType, BasePojoIndexMap<S> docMap) { GsonBuilder gb = BaseIndexPojo.getDefaultBuilder(); if (null != docMap) { gb = docMap.extendBuilder(gb);/*from w ww . ja v a 2 s. c o m*/ } return gb.create().toJsonTree(list, listType.getType()); }
From source file:com.ikanow.infinit.e.data_model.index.IndexManager.java
License:Apache License
@SuppressWarnings("unchecked") public static <S, L extends Collection<S>> L mapListFromIndex(String json, TypeToken<? extends L> listType, BasePojoIndexMap<S> docMap) { GsonBuilder gb = BaseIndexPojo.getDefaultBuilder(); if (null != docMap) { gb = docMap.extendBuilder(gb);/* w w w .java2s .c o m*/ } return (L) gb.create().fromJson(json, listType.getType()); }
From source file:com.ikanow.infinit.e.data_model.store.BaseDbPojo.java
License:Apache License
@SuppressWarnings("unchecked") public static <S extends BaseDbPojo> S fromDb(DBObject s, TypeToken<S> type, BasePojoDbMap<S> dynamicMap) { if (null == s) return null; GsonBuilder gb = null;//ww w . j a v a 2 s .c o m try { Class<S> clazz = (Class<S>) type.getType(); gb = ((S) clazz.newInstance()).extendBuilder(BaseDbPojo.getDefaultBuilder()); } catch (Exception e) { return null; } if (null != dynamicMap) { gb = dynamicMap.extendBuilder(gb); } return (S) gb.create().fromJson(MongoDbUtil.encode(s), type.getType()); }
From source file:com.ikanow.infinit.e.data_model.store.BaseDbPojo.java
License:Apache License
public static <S extends BaseDbPojo> DBObject listToDb(Collection<S> list, TypeToken<? extends Collection<S>> listType, BasePojoDbMap<S> dynamicMap) { GsonBuilder gb = null;// ww w . ja va2 s. c o m try { if (!list.isEmpty()) { gb = list.iterator().next().extendBuilder(BaseDbPojo.getDefaultBuilder()); } } catch (Exception e) { return null; } return (DBObject) MongoDbUtil .encodeArray(gb.create().toJsonTree(list, listType.getType()).getAsJsonArray()); }
From source file:com.ikanow.infinit.e.data_model.store.BaseDbPojo.java
License:Apache License
@SuppressWarnings("unchecked") public static <S extends BaseDbPojo, L extends Collection<S>> L listFromDb(DBCursor bson, TypeToken<? extends L> listType, BasePojoDbMap<S> dynamicMap) { GsonBuilder gb = null;// w w w. j ava 2s. c o m try { Class<S> clazz = (Class<S>) ((ParameterizedType) listType.getType()).getActualTypeArguments()[0]; // (know this works because of construction of listType) gb = (clazz.newInstance()).extendBuilder(BaseDbPojo.getDefaultBuilder()); } catch (Exception e) { return null; } if (null != dynamicMap) { gb = dynamicMap.extendBuilder(gb); } return (L) gb.create().fromJson(MongoDbUtil.encode(bson), listType.getType()); }
From source file:com.lib.lapp.net.utils.JSONUtils.java
License:Apache License
/** * {@code JSON} ??// ww w.j a va2s. c o m * * @param <T> ?? * @param json {@code JSON} * @param token {@code com.google.gson.reflect.TypeToken} * @param datePattern ?? * @return {@code JSON} * @since 1.0 */ public static <T> T fromJson(String json, TypeToken<T> token, String datePattern) { if (TextUtils.isEmpty(json)) { return null; } GsonBuilder builder = new GsonBuilder(); if (TextUtils.isEmpty(datePattern)) { datePattern = DEFAULT_DATE_PATTERN; } Gson gson = builder.create(); try { return gson.fromJson(json, token.getType()); } catch (Exception ex) { return null; } }
From source file:com.logisticsShop.utils.JsonUtil.java
License:Apache License
/** * {@code JSON} ???/*from ww w . j a v a 2 s . c om*/ * * @param <T> * ??? * @param json * ?{@code JSON} ? * @param token * {@code com.google.gson.reflect.TypeToken} ? * @param datePattern * ??? * @return ?{@code JSON} ? * @since 1.0 */ public static <T> T fromJson(String json, TypeToken<T> token, String datePattern) { GsonBuilder builder = new GsonBuilder(); Gson gson = builder.create(); try { return gson.fromJson(json, token.getType()); } catch (Exception ex) { return null; } }
From source file:com.marcohc.architecture.common.helper.ParserHelper.java
License:Apache License
@Nullable public <T> T parse(Object jsonObject, TypeToken<T> typeToken) { T object = null;/* ww w .j ava 2 s .c o m*/ try { if (jsonObject != null && typeToken != null) { // Convert to json string first if (!String.class.isInstance(jsonObject)) { jsonObject = gson.toJson(jsonObject); } object = gson.fromJson((String) jsonObject, typeToken.getType()); } } catch (Exception e) { Timber.e("parse: %s", e.getMessage()); } return object; }
From source file:com.owncloud.android.lib.resources.OCSRemoteOperation.java
License:Open Source License
public <T> T getServerResponse(HttpMethodBase method, TypeToken<T> type) throws IOException { String response = method.getResponseBodyAsString(); JsonParser parser = new JsonParser(); JsonElement element = parser.parse(response); Gson gson = new Gson(); return gson.fromJson(element, type.getType()); }