package co.touchlab.droidconandroid.data; import android.content.Context; import java.sql.SQLException; import co.touchlab.droidconandroid.network.dao.LoginResult; /** * Created by kgalligan on 4/7/16. */ public class UserAuthHelper { public static UserAccount processLoginResonse(Context c, LoginResult result) throws SQLException { UserAccount newDbUser = new UserAccount(); userAccountToDb(result.user, newDbUser); DatabaseHelper.getInstance(c).getUserAccountDao().createOrUpdate(newDbUser); //Save db first, then these. AppPrefs appPrefs = AppPrefs.getInstance(c); appPrefs.setUserUuid(result.uuid); appPrefs.setUserId(result.userId); saveDrawerAppPrefs(c, newDbUser); return newDbUser; } public static void userAccountToDb(co.touchlab.droidconandroid.network.dao.UserAccount ua, co.touchlab.droidconandroid.data.UserAccount dbUa) { dbUa.id = ua.id; dbUa.name = ua.name; dbUa.profile = ua.profile; dbUa.avatarKey = ua.avatarKey; dbUa.userCode = ua.userCode; dbUa.company = ua.company; dbUa.twitter = ua.twitter; dbUa.linkedIn = ua.linkedIn; dbUa.website = ua.website; dbUa.following = ua.following; dbUa.gPlus = ua.gPlus; dbUa.phone = ua.phone; dbUa.email = ua.email; dbUa.coverKey = ua.coverKey; dbUa.facebook = ua.facebook; dbUa.emailPublic = ua.emailPublic; } public static void saveDrawerAppPrefs(Context context, UserAccount user) { AppPrefs appPrefs = AppPrefs.getInstance(context); appPrefs.setAvatarKey(user.avatarKey); appPrefs.setCoverKey(user.coverKey); appPrefs.setName(user.name); appPrefs.setEmail(user.email); } }