You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@taverna.apache.org by ia...@apache.org on 2016/08/09 11:22:56 UTC

[10/28] incubator-taverna-mobile git commit: wire preferenceHelper with UI and DataManager

wire preferenceHelper with UI and DataManager


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/aae7e22f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/tree/aae7e22f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/diff/aae7e22f

Branch: refs/heads/master
Commit: aae7e22f10fa268aeed1026b39979cf224ed9f86
Parents: 1b18a1c
Author: Sagar <ku...@gmail.com>
Authored: Mon Aug 1 16:14:23 2016 +0530
Committer: Sagar <lu...@Sagar.local>
Committed: Mon Aug 1 16:14:23 2016 +0530

----------------------------------------------------------------------
 .../apache/taverna/mobile/data/DataManager.java |  8 ++-
 .../mobile/data/local/PreferencesHelper.java    | 61 ++++++++++++--------
 .../taverna/mobile/ui/login/LoginFragment.java  |  3 +-
 3 files changed, 45 insertions(+), 27 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/aae7e22f/app/src/main/java/org/apache/taverna/mobile/data/DataManager.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/data/DataManager.java b/app/src/main/java/org/apache/taverna/mobile/data/DataManager.java
index a9ed31d..41fd585 100644
--- a/app/src/main/java/org/apache/taverna/mobile/data/DataManager.java
+++ b/app/src/main/java/org/apache/taverna/mobile/data/DataManager.java
@@ -153,6 +153,12 @@ public class DataManager {
      */
 
     public  Observable<User>  getLoginUserDetail(String credentials){
-        return mBaseApiManager.getTavernaApi().getLoginUserDetail(credentials);
+        return mBaseApiManager.getTavernaApi().getLoginUserDetail(credentials)
+                .concatMap(new Func1<User, Observable<? extends User>>() {
+                    @Override
+                    public Observable<? extends User> call(User user) {
+                        return mPreferencesHelper.saveUserDetail(user);
+                    }
+                });
     }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/aae7e22f/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
index 1266d71..f0f08d0 100644
--- 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
@@ -6,6 +6,9 @@ import android.content.SharedPreferences;
 
 import org.apache.taverna.mobile.data.model.User;
 
+import rx.Observable;
+import rx.functions.Func0;
+
 public class PreferencesHelper {
 
     public static final String PREF_FILE_NAME = "taverna_app_pref_file";
@@ -113,31 +116,39 @@ public class PreferencesHelper {
         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());
-        }
+    public Observable<User> saveUserDetail(final User user) {
+        return Observable.defer(new Func0<Observable<User>>() {
+            @Override
+            public Observable<User> call() {
+                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());
+                }
+                setLoggedInFlag(true);
+                return Observable.just(user);
+            }
+        });
+
     }
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/aae7e22f/app/src/main/java/org/apache/taverna/mobile/ui/login/LoginFragment.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/ui/login/LoginFragment.java b/app/src/main/java/org/apache/taverna/mobile/ui/login/LoginFragment.java
index dc818ef..cff0eb7 100644
--- a/app/src/main/java/org/apache/taverna/mobile/ui/login/LoginFragment.java
+++ b/app/src/main/java/org/apache/taverna/mobile/ui/login/LoginFragment.java
@@ -18,6 +18,7 @@ import android.widget.EditText;
 import org.apache.taverna.mobile.R;
 import org.apache.taverna.mobile.activities.DashboardMainActivity;
 import org.apache.taverna.mobile.data.DataManager;
+import org.apache.taverna.mobile.data.local.PreferencesHelper;
 import org.apache.taverna.mobile.data.model.User;
 import org.apache.taverna.mobile.utils.ConnectionInfo;
 
@@ -48,7 +49,7 @@ public class LoginFragment extends Fragment implements LoginMvpView, View.OnFocu
         super.onCreate(savedInstanceState);
 
 
-        dataManager = new DataManager();
+        dataManager = new DataManager(new PreferencesHelper(getContext()));
         mLoginPresenter = new LoginPresenter(dataManager);
         mConnectionInfo = new ConnectionInfo(getContext());
     }