Перевести String в JSON
Пробую из полученного GET запроса строку преобразовать в JSON, что бы с этим можно было потом работать. Сам String выглядит так
{"values":[{"linesOfCode":{"added":0,"deleted":0},"user":{"emailAddress":"[email protected]","name":"loginName","displayName":"ФИО"},"repository":{"slug":"org","name":"org","project":{"key":"projKey","name":"NAME","type":"NORMAL"}},"author":{"displayName":"login","emailAddress":"[email protected]"},"parents":[{"id":"1q1q1q1q1q1q1q"},{"id":"2w2w2w2w2w2w2w"}],"authorTimestamp":"2023-01-31T15:07:06+03:00","id":"3e3e3e3e3e3e3e3e3e3e3e3e3e3e3"},{"linesOfCode":...}],"nextPageStart":null,"isLastPage":true,"limit":1000,"start":0,"size":233}
Раньше я использовал библиотеку Gson для парсинга, создавал класс под JSON и все, сейчас строка запутанней, и я запутался... Выглядит у меня все примерно так
String rest = getRest("https://git...");
Gson g = new Gson();
JsonFile values = g.fromJson(rest, JsonFile.class);
List<Values> valuesList = values.valuesList;
И сам класс JsonFile
class JsonFile {
List<Values> valuesList;
}
class Values {
List<LinesOfCode> linesOfCodes;
List<User> users;
List<Repository> repositories;
List<Author> authors;
List<Parents> parentsList;
String authorTimestamp;
String id;
}
class LinesOfCode {
int added;
int deleted;
}
class User {
String emailAddress;
String name;
String displayName;
}
class Repository {
String slug;
String name;
static class Project {
String key;
String name;
String type;
}
}
class Author {
String displayName;
String emailAddress;
}
class Parents {
List<String> id;
}
Т.е. смысл в том, что бы иметь возможность вытащить любой элемент, что бы после сформировать статистику, но по факту, объект valuesList у меня сейчас null.