@SuppressWarnings("unchecked") public <T> TypeAdapter<T> create(Gson gson, TypeToken<T> ownerType) { Type type = ownerType.getType(); if (ownerType.getRawType() != declaring || !(type instanceof ParameterizedType)) return null; Type elementType = ((ParameterizedType) type).getActualTypeArguments()[0]; TypeAdapter<?> elementAdapter = gson.getAdapter(TypeToken.get(elementType)); return (TypeAdapter<T>) newAdapter(elementAdapter); }
@SuppressWarnings("unchecked") public <T> TypeAdapter<T> create(Gson gson, TypeToken<T> ownerType) { Type type = ownerType.getType(); if (ownerType.getRawType() != declaring || !(type instanceof ParameterizedType)) return null; Type elementType = ((ParameterizedType) type).getActualTypeArguments()[0]; TypeAdapter<?> elementAdapter = gson.getAdapter(TypeToken.get(elementType)); return (TypeAdapter<T>) newAdapter(elementAdapter); }
@SuppressWarnings("unchecked") public <T> TypeAdapter<T> create(Gson gson, TypeToken<T> ownerType) { Type type = ownerType.getType(); if (ownerType.getRawType() != declaring || !(type instanceof ParameterizedType)) return null; Type elementType = ((ParameterizedType) type).getActualTypeArguments()[0]; TypeAdapter<?> elementAdapter = gson.getAdapter(TypeToken.get(elementType)); return (TypeAdapter<T>) newAdapter(elementAdapter); }
@SuppressWarnings("unchecked") public <T> TypeAdapter<T> create(Gson gson, TypeToken<T> ownerType) { Type type = ownerType.getType(); if (ownerType.getRawType() != declaring || !(type instanceof ParameterizedType)) return null; Type elementType = ((ParameterizedType) type).getActualTypeArguments()[0]; TypeAdapter<?> elementAdapter = gson.getAdapter(TypeToken.get(elementType)); return (TypeAdapter<T>) newAdapter(elementAdapter); }
@SuppressWarnings("unchecked") public <T> TypeAdapter<T> create(Gson gson, TypeToken<T> ownerType) { Type type = ownerType.getType(); if (ownerType.getRawType() != declaring || !(type instanceof ParameterizedType)) return null; Type elementType = ((ParameterizedType) type).getActualTypeArguments()[0]; TypeAdapter<?> elementAdapter = gson.getAdapter(TypeToken.get(elementType)); return (TypeAdapter<T>) newAdapter(elementAdapter); }
@SuppressWarnings("unchecked") public <T> TypeAdapter<T> create(Gson gson, TypeToken<T> ownerType) { Type type = ownerType.getType(); if (ownerType.getRawType() != declaring || !(type instanceof ParameterizedType)) return null; Type elementType = ((ParameterizedType) type).getActualTypeArguments()[0]; TypeAdapter<?> elementAdapter = gson.getAdapter(TypeToken.get(elementType)); return (TypeAdapter<T>) newAdapter(elementAdapter); }
@SuppressWarnings("unchecked") public <T> TypeAdapter<T> create(Gson gson, TypeToken<T> ownerType) { Type type = ownerType.getType(); if (ownerType.getRawType() != declaring || !(type instanceof ParameterizedType)) return null; Type elementType = ((ParameterizedType) type).getActualTypeArguments()[0]; TypeAdapter<?> elementAdapter = gson.getAdapter(TypeToken.get(elementType)); return (TypeAdapter<T>) newAdapter(elementAdapter); }