Разбор Json к списку элементов с общим полем с помощью Gson

public class OwnCollection<T>{
    private int size;
    private List<ResponseItem<T>> data;
}

public class ResponseItem<T>{
    private String path;
    private String key;
    private T value;
}

public class Query{
    public <T> OwnCollection<T>  getParsedCollection( ... ){
        String json = ...; //some unimportant calls where I get an valid Json to parse
        return Result.<T>parseToGenericCollection(json);
    }
}

public class Result{
    public static <T> OwnCollection<T> parseToGenericCollection(String result){
        Type type = new TypeToken<OwnCollection<T>>() {}.getType();
        //GsonUtil is a class where I get an Instance Gson, nothing more.
        return GsonUtil.getInstance().fromJson(result, type);
    }
}

Теперь, как я это называю:

OwnCollection<Game> gc = new Query().<Game>getParsedCollection( ... );

В результате я думал, что получуOwnCollection сList<ResponseItem> где один элемент ответа содержит поле классаGame, Json в порядке, и нет ошибки синтаксического анализа, единственная проблема сейчас - эта ошибка, когда я пытаюсь ее получить.Game элемент и вызов метода:

Exception in thread "main" java.lang.ClassCastException: com.google.gson.internal.LinkedTreeMap cannot be cast to at.da.example.Game

Ответы на вопрос(1)

Ваш ответ на вопрос