@@ -100,7 +100,7 @@ public void onCreate() {
100
100
currentRealm = globalSettings .getInt (GLOBAL_SETTINGS_CURRENT , currentRealm );
101
101
serverStringSet = new HashSet <String >(globalSettings .getStringSet (GLOBAL_SETTINGS_REALMS , new HashSet <String >()));
102
102
103
-
103
+ switchToRealm ( currentRealm );
104
104
if (BuildHelper .shouldLogToCrashlytics ()) {
105
105
// TODO(lfaraone): figure out what to do about crash reporting
106
106
}
@@ -387,4 +387,22 @@ public void createNewRealm() {
387
387
lastEventId = settings .getInt ("lastEventId" , -1 );
388
388
pointer = settings .getInt ("pointer" , -1 );
389
389
}
390
+
391
+ public void switchToRealm (int position ) {
392
+ databaseHelper = new DatabaseHelper (this , SERVER_SETTINGS + position );
393
+ this .settings = getSharedPreferences (SERVER_SETTINGS + position , Context .MODE_PRIVATE );
394
+ this .api_key = settings .getString ("api_key" , null );
395
+ max_message_id = settings .getInt ("max_message_id" , -1 );
396
+ eventQueueId = settings .getString ("eventQueueId" , null );
397
+ lastEventId = settings .getInt ("lastEventId" , -1 );
398
+ pointer = settings .getInt ("pointer" , -1 );
399
+ if (settings .contains ("email" ))
400
+ this .you = Person .getOrUpdate (this , settings .getString ("email" , null ), null , null );
401
+ currentRealm = position ;
402
+ if (position != currentRealm ) {
403
+ SharedPreferences .Editor edit = globalSettings .edit ();
404
+ edit .putInt (GLOBAL_SETTINGS_CURRENT , position );
405
+ edit .apply ();
406
+ }
407
+ }
390
408
}
0 commit comments