private <S> S readNull() { if (this.typeToken.getRawType() == Optional.class) { return (S) Optional.absent(); } return null; }
@SuppressWarnings("unchecked") public static <T> T json2object(String json, TypeToken<T> typeToken) { try { Gson gson = new Gson(); return (T) gson.fromJson(json, typeToken.getType()); } catch (Exception e) { } return null; }
@Override public Converter<?, RequestBody> requestBodyConverter(Type type, Annotation[] parameterAnnotations, Annotation[] methodAnnotations, Retrofit retrofit) { TypeAdapter<?> adapter = gson.getAdapter(TypeToken.get(type)); return new GsonRequestBodyConverter<>(gson, adapter); } }
public static <T> T fromJson(String json, TypeToken<T> typeToken) { return GSON.fromJson(json, typeToken.getType()); }
@Override public Converter<ResponseBody, ?> responseBodyConverter(Type type, Annotation[] annotations, Retrofit retrofit) { TypeAdapter<?> adapter = gson.getAdapter(TypeToken.get(type)); return new GsonResponseBodyConverter<>(gson, adapter); }
public static <T> T getListFromJson(String jsonString, TypeToken typeToken) { Gson gson = new Gson(); return gson.fromJson(jsonString, typeToken.getType()); }
@SafeVarargs public static <T> ExpectedSubtypesAdapter<T> create( Gson gson, Class<T> type, TypeToken<? extends T>... subtypes) { return create(gson, TypeToken.get(type), subtypes); }
public ANResponse executeForParsed(TypeToken typeToken) { this.mType = typeToken.getType(); this.mResponseType = ResponseType.PARSED; return SynchronousCall.execute(this); }
@Override public Parser<ResponseBody, ?> responseBodyParser(Type type) { TypeAdapter<?> adapter = gson.getAdapter(TypeToken.get(type)); return new GsonResponseBodyParser<>(gson, adapter); }
public void getAsOkHttpResponseAndParsed(TypeToken typeToken, OkHttpResponseAndParsedRequestListener parsedRequestListener) { this.mType = typeToken.getType(); this.mResponseType = ResponseType.PARSED; this.mOkHttpResponseAndParsedRequestListener = parsedRequestListener; ANRequestQueue.getInstance().addRequest(this); }
@Override public Parser<?, RequestBody> requestBodyParser(Type type) { TypeAdapter<?> adapter = gson.getAdapter(TypeToken.get(type)); return new GsonRequestBodyParser<>(gson, adapter); }
public void getAsParsed(TypeToken typeToken, ParsedRequestListener parsedRequestListener) { this.mType = typeToken.getType(); this.mResponseType = ResponseType.PARSED; this.mParsedRequestListener = parsedRequestListener; ANRequestQueue.getInstance().addRequest(this); }
@Override public Converter<?, RequestBody> requestBodyConverter(Type type, Annotation[] parameterAnnotations, Annotation[] methodAnnotations, Retrofit retrofit) { TypeAdapter<?> adapter = gson.getAdapter(TypeToken.get(type)); return new GsonRequestBodyConverter<>(gson, adapter); } }
@SuppressWarnings("unchecked") @Override public <T> TypeAdapter<T> create(Gson gson, TypeToken<T> type) { Type rawType = type.getType(); TypeHandler<T> typeHandler = (TypeHandler<T>) typeSerializationLibrary.getHandlerFor(rawType); if (typeHandler == null) { return null; } return new GsonTypeHandlerAdapter<>(typeHandler, gson, type); } }
@Override public Converter<ResponseBody, ?> responseBodyConverter(Type type, Annotation[] annotations, Retrofit retrofit) { TypeAdapter<?> adapter = gson.getAdapter(TypeToken.get(type)); return new GsonResponseBodyConverter<>(gson, adapter); }
public static Map<String, Object> toMap(String jsonStr) { if (jsonStr == null || jsonStr.trim().length() == 0) { return Collections.emptyMap(); } // gson uses type tokens for generic input like Map<String,Object> TypeToken<Map<String, Object>> typeToken = new TypeToken<Map<String, Object>>() { }; Map<String, Object> map = GSON.fromJson(jsonStr, typeToken.getType()); return map == null ? Collections.emptyMap() : map; } }
private static <T> String toJsonIterable(List<? extends T> list, TypeToken<List<T>> typeToken) { return Marshaling.getGson().toJson(list, typeToken.getType()); } }
private static <T> List<T> fromJsonIterable(String json, TypeToken<List<T>> typeToken) { return Marshaling.getGson().fromJson(json, typeToken.getType()); }
public <T> Observable<T> getParseObservable(TypeToken<T> typeToken) { this.setType(typeToken.getType()); this.setResponseAs(ResponseType.PARSED); if (this.getRequestType() == RequestType.SIMPLE) { return Rx2InternalNetworking.generateSimpleObservable(this); } else if (this.getRequestType() == RequestType.MULTIPART) { return Rx2InternalNetworking.generateMultipartObservable(this); } else { return null; } }
public <T> Observable<T> getParseObservable(TypeToken<T> typeToken) { this.setType(typeToken.getType()); this.setResponseAs(ResponseType.PARSED); if (this.getRequestType() == RequestType.SIMPLE) { return RxInternalNetworking.generateSimpleObservable(this); } else if (this.getRequestType() == RequestType.MULTIPART) { return RxInternalNetworking.generateMultipartObservable(this); } else { return null; } }