Guest User

Untitled

a guest
Jul 17th, 2018
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.06 KB | None | 0 0
  1. public <T extends RealmModel > void checkOfflineData(){
  2.  
  3.  
  4. Realm realm = Realm.getDefaultInstance();
  5.  
  6. Set<Class<? extends RealmModel>> realmObjectClasses = realm.getConfiguration().getRealmObjectClasses();
  7.  
  8. for(Class modelClass: realmObjectClasses) {
  9.  
  10. // fetch non synced data
  11.  
  12. RealmResults realmResults = getNotSynced(realm,modelClass);
  13. if(realmResults !=null && realmResults.size() > 0){
  14.  
  15. //build a request
  16. Request<T> request = new Request<T>();
  17. RealmList<T> realmList = new RealmList<T>();
  18. //add results to list
  19. realmList.addAll(realmResults.subList(0, realmResults.size()));
  20. request.setRequestList(realmList);
  21.  
  22. }
  23. }
  24.  
  25. // Parsing using GSON data
  26.  
  27.  
  28. GsonBuilder builder = new GsonBuilder();
  29. builder.registerTypeAdapter(Request.class, new RequestSerializer());
  30. Gson gson = builder.create();
  31. String data = gson.toJson(request);
  32.  
  33.  
  34.  
  35. }
  36.  
  37. public class Request<T> {
  38.  
  39. private RealmList<T> requestList;
  40.  
  41. public RealmList<T> getRequestList() {
  42. return requestList;
  43. }
  44.  
  45. public void setRequestList(RealmList<T> requestList) {
  46. this.requestList = requestList;
  47. }
  48.  
  49. 07-17 13:04:00.177 6076-6076/com.org.connectedhealth W/System.err: Caused by: java.lang.StackOverflowError: stack size 8MB
  50. at java.lang.reflect.Field.get(Native Method)
  51. at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.writeField(ReflectiveTypeAdapterFactory.java:138)
  52. 07-17 13:04:00.178 6076-6076/com.org.connectedhealth W/System.err: at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.write(ReflectiveTypeAdapterFactory.java:243)
  53. at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.write(TypeAdapterRuntimeTypeWrapper.java:69)
  54. at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.write(MapTypeAdapterFactory.java:208)
  55. at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.write(MapTypeAdapterFactory.java:145)
  56. at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.write(TypeAdapterRuntimeTypeWrapper.java:69)
  57. at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.write(ReflectiveTypeAdapterFactory.java:127)
  58. 07-17 13:04:00.179 6076-6076/com.org.connectedhealth W/System.err: at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.write(ReflectiveTypeAdapterFactory.java:245)
  59. at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.write(TypeAdapterRuntimeTypeWrapper.java:69)
  60. at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.write(ReflectiveTypeAdapterFactory.java:127)
  61. at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.write(ReflectiveTypeAdapterFactory.java:245)
  62. at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.write(TypeAdapterRuntimeTypeWrapper.java:69)
  63. 07-17 13:04:00.180 6076-6076/com.org.connectedhealth W/System.err: at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.write(ReflectiveTypeAdapterFactory.java:127)
Add Comment
Please, Sign In to add comment