Как сделать этот getData (String) метод genri c, чтобы я мог передать в него любой тип класса POJO. Я хотел передать обобщенный c тип класса Модель в метод toObject () в
case ADDED:
Model model = dc.getDocument().toObject(Class<Model>);
и
case MODIFIED:
Model model1 = dc.getDocument().toObject(Model.class);
Model.class
шоу Невозможно выбрать переменную типа, и Class<Model>
просто показывает ошибку.
Вот код
public List<Model> getData(String path){
db.collection(path)
.addSnapshotListener(new EventListener<QuerySnapshot>() {
@Override
public void onEvent(@Nullable QuerySnapshot queryDocumentSnapshots,
@Nullable FirebaseFirestoreException e) {
if (e != null || queryDocumentSnapshots == null)
return;
List<DocumentChange> documentChanges = queryDocumentSnapshots.getDocumentChanges();
if(documentChanges.size() != 0 && mAdapter != null) {
List<Model> newList = new ArrayList<>(oldData);
for (DocumentChange dc : documentChanges) {
switch (dc.getType()) {
case ADDED:
Model model = dc.getDocument().toObject(Class<Model>);
newList.add(model);
break;
case MODIFIED:
Model model1 = dc.getDocument().toObject(Model.class);
newList.set(model1);
break;
case REMOVED:
Log.d("debug","REMOVED");
break;
}
}
}
}
});
}