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

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

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

TypeToken.getParameterized介绍

[英]Gets type literal for the parameterized type represented by applying typeArguments to rawType.
[中]获取通过将typeArguments应用于rawType表示的参数化类型的类型文字。

代码示例

代码示例来源:origin: io.ultreia.java4all.http/http-api

private Type token(Class<?> main, Class<?> type) {
    return TypeToken.getParameterized(main, type).getType();
  }
}

代码示例来源:origin: icclab/cyclops

public <T> List<T> getAsListOfThisType(Class<T> clazz) throws Exception {
  return new Gson().fromJson(object, TypeToken.getParameterized(List.class, clazz).getType());
}

代码示例来源:origin: googlesamples/android-AutofillFramework

@Override
  public List<DefaultFieldTypeWithHints> getDefaultFieldTypes() {
    Type fieldTypeListType =  TypeToken.getParameterized(List.class,
        DefaultFieldTypeWithHints.class).getType();
    InputStream is = mResources.openRawResource(R.raw.default_field_types);
    List<DefaultFieldTypeWithHints> fieldTypes = null;
    try(Reader reader = new BufferedReader(new InputStreamReader(is, "UTF-8"))) {
      fieldTypes = mGson.fromJson(reader, fieldTypeListType);
    } catch (IOException e) {
      loge(e, "Exception during deserialization of FieldTypes.");
    }
    return fieldTypes;
  }
}

代码示例来源:origin: icclab/cyclops

static Object PGObjectFieldToMap(Object data, Class clazz) {
    if (data == null) return null;

    String valueToParse;
    if (data instanceof PGobject) valueToParse = ((PGobject) data).getValue();
    else if (data instanceof String) valueToParse = (String) data;
    else return null;

    if (valueToParse != null && !valueToParse.isEmpty()) {
      if (clazz == null) clazz = Map.class;
      try {
        Object mapped = new Gson().fromJson(valueToParse, clazz);
        if (mapped != null) return mapped;
      } catch (Exception e) {
        List list = new Gson().fromJson(valueToParse, com.google.gson.reflect.TypeToken.getParameterized(List.class, clazz).getType());
        if (list != null && !list.isEmpty()) return list;
      }
    }

    // if something went wrong or was null
    return null;
  }
}

代码示例来源:origin: icclab/cyclops

static Object PGObjectFieldToMap(Object data, Class clazz) {
    if (data == null) return null;

    String valueToParse;
    if (data instanceof PGobject) valueToParse = ((PGobject) data).getValue();
    else if (data instanceof String) valueToParse = (String) data;
    else return null;

    if (valueToParse != null && !valueToParse.isEmpty()) {
      if (clazz == null) clazz = Map.class;
      try {
        Object mapped = new Gson().fromJson(valueToParse, clazz);
        if (mapped != null) return mapped;
      } catch (Exception e) {
        List list = new Gson().fromJson(valueToParse, TypeToken.getParameterized(List.class, clazz).getType());
        if (list != null && !list.isEmpty()) return list;
      }
    }

    // if something went wrong or was null
    return null;
  }
}

代码示例来源:origin: icclab/cyclops

static Object PGObjectFieldToMap(Object data, Class clazz) {
    if (data == null) return null;

    String valueToParse;
    if (data instanceof PGobject) valueToParse = ((PGobject) data).getValue();
    else if (data instanceof String) valueToParse = (String) data;
    else return null;

    if (valueToParse != null && !valueToParse.isEmpty()) {
      if (clazz == null) clazz = Map.class;
      try {
        Object mapped = new Gson().fromJson(valueToParse, clazz);
        if (mapped != null) return mapped;
      } catch (Exception e) {
        List list = new Gson().fromJson(valueToParse, com.google.gson.reflect.TypeToken.getParameterized(List.class, clazz).getType());
        if (list != null && !list.isEmpty()) return list;
      }
    }

    // if something went wrong or was null
    return null;
  }
}

代码示例来源:origin: com.holon-platform.json/holon-gson

@Override
public <T> JsonWriter toJsonArray(Class<T> type, Collection<T> values) {
  ObjectUtils.argumentNotNull(type, "Type must be not null");
  if (values != null) {
    return new GsonJsonWriter(gson, values, TypeToken.getParameterized(Collection.class, type).getType());
  }
  return null;
}

代码示例来源:origin: LightSun/data-mediator

return builder.create().fromJson(json, TypeToken.getParameterized(List.class, clazz).getType());

代码示例来源:origin: com.holon-platform.json/holon-gson

@Override
public <T> List<T> fromJsonArray(JsonReader reader, Class<T> type) {
  ObjectUtils.argumentNotNull(reader, "JsonReader must be not null");
  ObjectUtils.argumentNotNull(type, "Type must be not null");
  try {
    return gson.fromJson(reader.getReader(), TypeToken.getParameterized(List.class, type).getType());
  } catch (Exception e) {
    throw new JsonReadException("Failed to deserialize JSON for array type [" + type + "]", e);
  }
}

代码示例来源:origin: stefan-niedermann/nextcloud-deck

@Override
public Observable<List<Board>> getBoards(Date lastSync) {
  NextcloudRequest request = buildRequest(GET, "boards", lastSync).build();
  return nextcloudAPI.performRequestObservable(TypeToken.getParameterized(List.class, Board.class).getType(), request);
}

代码示例来源:origin: stefan-niedermann/nextcloud-deck

@Override
public Observable<List<Stack>> getStacks(long boardId, Date lastSync) {
  NextcloudRequest request = buildRequest(GET, "boards/{boardId}/stacks", lastSync, boardId).build();
  return nextcloudAPI.performRequestObservable(TypeToken.getParameterized(List.class, Stack.class).getType(), request);
}

代码示例来源:origin: stefan-niedermann/nextcloud-deck

@Override
public Observable<List<Stack>> getArchivedStacks(long boardId, Date lastSync) {
  NextcloudRequest request = buildRequest(GET, "boards/{boardId}/stacks/archived", lastSync, boardId).build();
  return nextcloudAPI.performRequestObservable(TypeToken.getParameterized(List.class, Stack.class).getType(), request);
}

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

"application/json"));
Reader reader = new InputStreamReader(stream, "UTF-8");
Type type = TypeToken.getParameterized(QueryResult.class, classOfT).getType();
QueryResult<T> result = client.getGson().fromJson(reader, type);
return result;

相关文章