com.google.gson.reflect.TypeToken.getType()方法的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(6.5k)|赞(0)|评价(0)|浏览(893)

本文整理了Java中com.google.gson.reflect.TypeToken.getType()方法的一些代码示例,展示了TypeToken.getType()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。TypeToken.getType()方法的具体详情如下:
包路径:com.google.gson.reflect.TypeToken
类名称:TypeToken
方法名:getType

TypeToken.getType介绍

[英]Gets underlying Type instance.
[中]获取基础类型实例。

代码示例

代码示例来源:origin: ffay/lanproxy

@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;
}

代码示例来源:origin: biezhi/wechat-api

public static <T> T fromJson(String json, TypeToken<T> typeToken) {
  return GSON.fromJson(json, typeToken.getType());
}

代码示例来源:origin: cymcsg/UltimateAndroid

public static <T> T getListFromJson(String jsonString, TypeToken typeToken) {
  Gson gson = new Gson();
  return gson.fromJson(jsonString, typeToken.getType());
}

代码示例来源:origin: google/rejoiner

private static Map<String, Object> jsonToMap(String json) {
  if (Strings.isNullOrEmpty(json)) {
   return ImmutableMap.of();
  }
  return Optional.<Map<String, Object>>ofNullable(GSON.fromJson(json, MAP_TYPE_TOKEN.getType()))
    .orElse(ImmutableMap.of());
 }
}

代码示例来源:origin: google/rejoiner

private static Map<String, Object> jsonToMap(String json) {
  if (Strings.isNullOrEmpty(json)) {
   return ImmutableMap.of();
  }
  return Optional.<Map<String, Object>>ofNullable(GSON.fromJson(json, MAP_TYPE_TOKEN.getType()))
    .orElse(ImmutableMap.of());
 }
}

代码示例来源:origin: google/rejoiner

private static Map<String, Object> jsonToMap(String json) {
  if (Strings.isNullOrEmpty(json)) {
   return ImmutableMap.of();
  }
  return Optional.<Map<String, Object>>ofNullable(GSON.fromJson(json, MAP_TYPE_TOKEN.getType()))
    .orElse(ImmutableMap.of());
 }
}

代码示例来源:origin: amitshekhariitbhu/Fast-Android-Networking

public ANResponse executeForParsed(TypeToken typeToken) {
  this.mType = typeToken.getType();
  this.mResponseType = ResponseType.PARSED;
  return SynchronousCall.execute(this);
}

代码示例来源:origin: org.springframework.boot/spring-boot

@Override
public List<Object> parseList(String json) {
  return parseList(json,
      (trimmed) -> this.gson.fromJson(trimmed, LIST_TYPE.getType()));
}

代码示例来源:origin: org.springframework.boot/spring-boot

@Override
public Map<String, Object> parseMap(String json) {
  return parseMap(json,
      (trimmed) -> this.gson.fromJson(trimmed, MAP_TYPE.getType()));
}

代码示例来源:origin: MovingBlocks/Terasology

@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);
  }
}

代码示例来源:origin: amitshekhariitbhu/Fast-Android-Networking

public void getAsOkHttpResponseAndParsed(TypeToken typeToken, OkHttpResponseAndParsedRequestListener parsedRequestListener) {
  this.mType = typeToken.getType();
  this.mResponseType = ResponseType.PARSED;
  this.mOkHttpResponseAndParsedRequestListener = parsedRequestListener;
  ANRequestQueue.getInstance().addRequest(this);
}

代码示例来源:origin: amitshekhariitbhu/Fast-Android-Networking

public void getAsParsed(TypeToken typeToken, ParsedRequestListener parsedRequestListener) {
  this.mType = typeToken.getType();
  this.mResponseType = ResponseType.PARSED;
  this.mParsedRequestListener = parsedRequestListener;
  ANRequestQueue.getInstance().addRequest(this);
}

代码示例来源:origin: MovingBlocks/Terasology

@Override
public T read(JsonReader in) throws IOException {
  JsonElement value = Streams.parse(in);
  if (value.isJsonNull()) {
    return null;
  }
  return deserializer.deserialize(value, typeToken.getType(), (JsonDeserializationContext) ReflectionUtil.readField(gson, "deserializationContext"));
}

代码示例来源:origin: MovingBlocks/Terasology

@Override
  public void write(JsonWriter out, T value) throws IOException {
    if (value == null) {
      out.nullValue();
      return;
    }
    JsonElement tree = serializer.serialize(value, typeToken.getType(), (JsonSerializationContext) ReflectionUtil.readField(gson, "serializationContext"));
    Streams.write(tree, out);
  }
}

代码示例来源:origin: graphql-java/graphql-java

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;
  }
}

代码示例来源:origin: apache/incubator-gobblin

@Override
public <R> TypeAdapter<R> create(Gson gson, TypeToken<R> type) {
 if (ClassUtils.isPrimitiveOrWrapper(type.getRawType()) || type.getType() instanceof GenericArrayType
   || CharSequence.class.isAssignableFrom(type.getRawType())
   || (type.getType() instanceof ParameterizedType && (Collection.class.isAssignableFrom(type.getRawType())
     || Map.class.isAssignableFrom(type.getRawType())))) {
  // delegate primitives, arrays, collections, and maps
  return null;
 }
 if (!this.baseClass.isAssignableFrom(type.getRawType())) {
  // delegate anything not assignable from base class
  return null;
 }
 TypeAdapter<R> adapter = new InterfaceAdapter<>(gson, this, type);
 return adapter;
}

代码示例来源:origin: immutables/immutables

private static <T> String toJsonIterable(List<? extends T> list, TypeToken<List<T>> typeToken) {
  return Marshaling.getGson().toJson(list, typeToken.getType());
 }
}

代码示例来源:origin: immutables/immutables

private static <T> List<T> fromJsonIterable(String json, TypeToken<List<T>> typeToken) {
 return Marshaling.getGson().fromJson(json, typeToken.getType());
}

代码示例来源:origin: amitshekhariitbhu/Fast-Android-Networking

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;
  }
}

代码示例来源:origin: amitshekhariitbhu/Fast-Android-Networking

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;
  }
}

相关文章