diff --git a/store2realm/src/main/java/com/playmoweb/store2realm/dao/RealmDao.java b/store2realm/src/main/java/com/playmoweb/store2realm/dao/RealmDao.java index a6edd90..38b0544 100644 --- a/store2realm/src/main/java/com/playmoweb/store2realm/dao/RealmDao.java +++ b/store2realm/src/main/java/com/playmoweb/store2realm/dao/RealmDao.java @@ -62,11 +62,17 @@ public Flowable>> getAll(List items) { if(items.size() > 0){ String paramName = items.get(0).getUniqueIdentifierName(); - Integer[] keys = new Integer[items.size()]; + Object[] keys = new Object[items.size()]; for(int i = 0; i < items.size(); i++){ keys[i] = items.get(i).getUniqueIdentifier(); } - query.in(paramName, keys); + + Object valueType = items.get(0).getUniqueIdentifier(); + if(valueType instanceof String){ + query.in(paramName, (String[]) keys); + } else if(valueType instanceof Integer){ + query.in(paramName, (Integer[]) keys); + } } List copies = realm.copyFromRealm(query.findAll()); diff --git a/store2realm/src/main/java/com/playmoweb/store2realm/model/HasId.java b/store2realm/src/main/java/com/playmoweb/store2realm/model/HasId.java index 13cff3e..fb3243d 100644 --- a/store2realm/src/main/java/com/playmoweb/store2realm/model/HasId.java +++ b/store2realm/src/main/java/com/playmoweb/store2realm/model/HasId.java @@ -3,7 +3,7 @@ /** * Created by thibaud on 13/09/2017. */ -public interface HasId { - int getUniqueIdentifier(); +public interface HasId { + T getUniqueIdentifier(); String getUniqueIdentifierName(); }