@@ -0,0 +1,1504 @@
+package com.antonio.samir.meteoritelandingsspots.features.list.ui.recyclerView;%0A%0Aimport androidx.recyclerview.widget.DiffUtil;%0A%0Aimport com.antonio.samir.meteoritelandingsspots.service.business.model.Meteorite;%0A%0Aimport java.util.List;%0Aimport java.util.Objects;%0A%0Apublic class MeteoriteDiffCallback extends DiffUtil.Callback %7B%0A%0A    private List%3CMeteorite%3E oldMeteorites;%0A    private List%3CMeteorite%3E newMeteorites;%0A%0A    public MeteoriteDiffCallback(List%3CMeteorite%3E newMeteorites, List%3CMeteorite%3E oldMeteorites) %7B%0A        this.newMeteorites = newMeteorites;%0A        this.oldMeteorites = oldMeteorites;%0A    %7D%0A%0A    @Override%0A    public int getOldListSize() %7B%0A        return oldMeteorites.size();%0A    %7D%0A%0A    @Override%0A    public int getNewListSize() %7B%0A        return newMeteorites.size();%0A    %7D%0A%0A    @Override%0A    public boolean areItemsTheSame(int oldItemPosition, int newItemPosition) %7B%0A        return oldMeteorites.get(oldItemPosition).getId() == newMeteorites.get(newItemPosition).getId();%0A    %7D%0A%0A    @Override%0A    public boolean areContentsTheSame(int oldItemPosition, int newItemPosition) %7B%0A        final Meteorite oldMeteorite = oldMeteorites.get(oldItemPosition);%0A        final Meteorite newMeteorite = newMeteorites.get(newItemPosition);%0A        return Objects.equals(oldMeteorite.getAddress(), newMeteorite.getAddress());%0A    %7D%0A%0A    @Override%0A    public Object getChangePayload(int oldItemPosition, int newItemPosition) %7B%0A        return super.getChangePayload(oldItemPosition, newItemPosition);%0A    %7D%0A%7D

add MeteoriteDiffCallback