add preference helper to save logged in user details
Project: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/commit/391d3d74 Tree: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/tree/391d3d74 Diff: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/diff/391d3d74 Branch: refs/heads/master Commit: 391d3d741f3d3a7668c7b99ae3cb9b0f8c73dd67 Parents: bb4d806 Author: Sagar <[email protected]> Authored: Mon Aug 1 13:24:07 2016 +0530 Committer: Sagar <[email protected]> Committed: Mon Aug 1 13:24:07 2016 +0530 ---------------------------------------------------------------------- .../mobile/data/local/PreferencesHelper.java | 143 +++++++++++++++++++ 1 file changed, 143 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/391d3d74/app/src/main/java/org/apache/taverna/mobile/data/local/PreferencesHelper.java ---------------------------------------------------------------------- diff --git a/app/src/main/java/org/apache/taverna/mobile/data/local/PreferencesHelper.java b/app/src/main/java/org/apache/taverna/mobile/data/local/PreferencesHelper.java new file mode 100644 index 0000000..1266d71 --- /dev/null +++ b/app/src/main/java/org/apache/taverna/mobile/data/local/PreferencesHelper.java @@ -0,0 +1,143 @@ +package org.apache.taverna.mobile.data.local; + + +import android.content.Context; +import android.content.SharedPreferences; + +import org.apache.taverna.mobile.data.model.User; + +public class PreferencesHelper { + + public static final String PREF_FILE_NAME = "taverna_app_pref_file"; + + private static final String PREF_KEY_LOGGED_IN = "pref_logged_in"; + + private static final String PREF_KEY_USER_ID = "pref_user_id"; + + private static final String PREF_KEY_USER_NAME = "pref_user_name"; + + private static final String PREF_KEY_USER_DESCRIPTION = "pref_user_description"; + + private static final String PREF_KEY_USER_EMAIL = "pref_user_email"; + + private static final String PREF_KEY_USER_AVATAR = "pref_user_avatar"; + + private static final String PREF_KEY_USER_CITY = "pref_user_city"; + + private static final String PREF_KEY_USER_COUNTRY = "pref_user_country"; + + private static final String PREF_KEY_USER_WEBSITE = "pref_user_website"; + + private final SharedPreferences mPref; + + + public PreferencesHelper(Context context) { + mPref = context.getSharedPreferences(PREF_FILE_NAME, Context.MODE_PRIVATE); + } + + + public void clear() { + mPref.edit().clear().apply(); + } + + public boolean getLoggedInFlag() { + return mPref.getBoolean(PREF_KEY_LOGGED_IN, false); + } + + public void setLoggedInFlag(Boolean flag) { + mPref.edit().putBoolean(PREF_KEY_LOGGED_IN, flag).apply(); + } + + public String getUserWebsite() { + return mPref.getString(PREF_KEY_USER_WEBSITE, null); + } + + private void setUserWebsite(String website) { + mPref.edit().putString(PREF_KEY_USER_WEBSITE, website).apply(); + } + + public String getUserCountry() { + return mPref.getString(PREF_KEY_USER_COUNTRY, null); + } + + private void setUserCountry(String country) { + mPref.edit().putString(PREF_KEY_USER_COUNTRY, country).apply(); + } + + public String getUserCity() { + return mPref.getString(PREF_KEY_USER_CITY, null); + } + + private void setUserCity(String city) { + mPref.edit().putString(PREF_KEY_USER_CITY, city).apply(); + } + + public String getUserID() { + return mPref.getString(PREF_KEY_USER_ID, null); + } + + private void setUserID(String userID) { + mPref.edit().putString(PREF_KEY_USER_ID, userID).apply(); + } + + public String getUserName() { + return mPref.getString(PREF_KEY_USER_NAME, null); + } + + private void setUserName(String userName) { + mPref.edit().putString(PREF_KEY_USER_NAME, userName).apply(); + + } + + public String getUserDescription() { + return mPref.getString(PREF_KEY_USER_DESCRIPTION, null); + } + + private void setUserDescription(String userDescription) { + mPref.edit().putString(PREF_KEY_USER_DESCRIPTION, userDescription).apply(); + } + + public String getUserEmail() { + return mPref.getString(PREF_KEY_USER_EMAIL, null); + } + + private void setUserEmail(String userEmail) { + mPref.edit().putString(PREF_KEY_USER_EMAIL, userEmail).apply(); + } + + public String getUserAvatar() { + return mPref.getString(PREF_KEY_USER_AVATAR, null); + } + + private void setUserAvatar(String userAvatar) { + mPref.edit().putString(PREF_KEY_USER_AVATAR, userAvatar).apply(); + } + + public void saveUserDetail(User user) { + if (user.getElementId() != null) { + setUserID(user.getElementId()); + } + if (user.getName() != null) { + setUserName(user.getName()); + } + if (user.getDescription() != null) { + setUserDescription(user.getDescription()); + } + if (user.getEmail() != null) { + setUserEmail(user.getEmail()); + } + if (user.getAvatar().getResource() != null) { + setUserAvatar(user.getAvatar().getResource()); + } + if (user.getCity() != null) { + setUserCity(user.getCity()); + } + if (user.getCountry() != null) { + setUserCountry(user.getCountry()); + } + if (user.getWebsite() != null) { + setUserWebsite(user.getWebsite()); + } + } + +}
