Не понимаю как именно Retrofit парсит json с GSON и как с этим работать

Вот что я нагуглил про получению json данных по api(немного псевдокод)

    //тут как-бы ясно
    Retrofit retrofit = new Retrofit.Builder()
            .baseUrl("https://site/api")
            .addConverterFactory(GsonConverterFactory.create())
            .build();
    //в api уже реализованный retrofit-ом метод из интерфеса
    DataInterface api = retrofit.create(DataInterface.class);

    //не совсем понял
    Call<List<MyModel>> call = api.getData();

    //это ок. обработка данных в новом потоке
    call.enqueue(new Callback<List<MyModel>>() {
        @Override
        public void onResponse(Call<List<MyModel>> call, Response<List<MyModel>> response) {
            //если я правильно понял, тут приходит список объектов MyModel
            //уже заполненный данными??? каким образом?
        }

        @Override
        public void onFailure(Call<List<MyModel>> call, Throwable t) {
            //обработка ошибки
        }
    });

А вот и DataInterface

    public interface DataInterface {
        @GET("apiUri")
        Call<List<MyModel>> getData();
    }

Насколько я понял MyModel это POJO, но в примерах этот объект имел только приватные свойства и геттеры. Тогда что приходит в onResponse?

Помогите пожалуйста понять всю эту магию и как с этим работать. Спасибо.


Ответы (0 шт):