From cf3b3abae5023020fcd1b366359d04a117694c45 Mon Sep 17 00:00:00 2001 From: Thibaud Giovannetti Date: Mon, 7 May 2018 18:15:51 +0200 Subject: [PATCH] Id suppors now String or Integer --- .../java/com/playmoweb/store2realm/dao/RealmDao.java | 10 ++++++++-- .../java/com/playmoweb/store2realm/model/HasId.java | 4 ++-- 2 files changed, 10 insertions(+), 4 deletions(-) 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(); }