Repository: incubator-taverna-mobile
Updated Branches:
  refs/heads/master d601ba0ab -> c914a0402


Fetch workflows belonging to logged in user


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

Branch: refs/heads/master
Commit: d07525736ceadd441629b9ab044c8512185e3df6
Parents: d601ba0
Author: Ian Dunlop <[email protected]>
Authored: Mon Aug 15 10:57:16 2016 +0100
Committer: Ian Dunlop <[email protected]>
Committed: Mon Aug 15 10:57:16 2016 +0100

----------------------------------------------------------------------
 .../activities/DashboardMainActivity.java       |  14 ++
 .../apache/taverna/mobile/data/DataManager.java |  10 +
 .../apache/taverna/mobile/data/model/User.java  |  30 ++-
 .../taverna/mobile/data/remote/APIEndPoint.java |   2 +-
 .../mobile/data/remote/TavernaService.java      |   2 +
 .../ui/myworkflows/MyWorkflowFragment.java      | 224 +++++++++++++++++++
 .../ui/myworkflows/MyWorkflowMvpView.java       |  33 +++
 .../ui/myworkflows/MyWorkflowPresenter.java     |  86 +++++++
 .../workflowdetail/WorkflowDetailPresenter.java |   7 +
 app/src/main/res/menu/drawer_view.xml           |   7 +-
 app/src/main/res/values/strings.xml             |   1 +
 11 files changed, 404 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/d0752573/app/src/main/java/org/apache/taverna/mobile/activities/DashboardMainActivity.java
----------------------------------------------------------------------
diff --git 
a/app/src/main/java/org/apache/taverna/mobile/activities/DashboardMainActivity.java
 
b/app/src/main/java/org/apache/taverna/mobile/activities/DashboardMainActivity.java
index b31f587..511ab2c 100644
--- 
a/app/src/main/java/org/apache/taverna/mobile/activities/DashboardMainActivity.java
+++ 
b/app/src/main/java/org/apache/taverna/mobile/activities/DashboardMainActivity.java
@@ -55,6 +55,7 @@ import org.apache.taverna.mobile.data.DataManager;
 import org.apache.taverna.mobile.data.local.PreferencesHelper;
 import org.apache.taverna.mobile.ui.anouncements.AnnouncementFragment;
 import 
org.apache.taverna.mobile.ui.favouriteworkflow.FavouriteWorkflowsFragment;
+import org.apache.taverna.mobile.ui.myworkflows.MyWorkflowFragment;
 import org.apache.taverna.mobile.ui.workflow.WorkflowFragment;
 import org.apache.taverna.mobile.utils.ActivityUtils;
 import org.apache.taverna.mobile.utils.WorkflowOpen;
@@ -144,6 +145,19 @@ public class DashboardMainActivity extends 
AppCompatActivity {
                                 mDrawerLayout.closeDrawers();
                                 return true;
 
+                            case R.id.nav_my_workflows:
+
+                                fragment = new MyWorkflowFragment();
+                                ActivityUtils
+                                        .addFragmentToActivity(
+                                                getSupportFragmentManager(),
+                                                fragment,
+                                                R.id.frame_container);
+
+                                menuItem.setChecked(true);
+                                mDrawerLayout.closeDrawers();
+                                return true;
+
                             case R.id.nav_favourite_workflow:
 
                                 fragment = new FavouriteWorkflowsFragment();

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/d0752573/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 b86d89c..7489fb9 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
@@ -154,6 +154,7 @@ public class DataManager {
      */
 
     public Observable<User> getLoginUserDetail(String credentials, final 
boolean flagLogin) {
+
         return mBaseApiManager.getTavernaApi().getLoginUserDetail(credentials)
                 .concatMap(new Func1<User, Observable<? extends User>>() {
                     @Override
@@ -166,4 +167,13 @@ public class DataManager {
     }
 
 
+    public Observable<Workflows> getMyWorkflows(String userID, Map<String, 
String> options) {
+        return mBaseApiManager.getTavernaApi().getMyWorkflows(userID, options)
+                .concatMap(new Func1<Workflows, Observable<? extends 
Workflows>>() {
+                    @Override
+                    public Observable<? extends Workflows> call(Workflows 
workflows) {
+                        return mDBHelper.syncWorkflows(workflows);
+                    }
+                });
+    }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/d0752573/app/src/main/java/org/apache/taverna/mobile/data/model/User.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/data/model/User.java 
b/app/src/main/java/org/apache/taverna/mobile/data/model/User.java
index f45e280..90fbb18 100644
--- a/app/src/main/java/org/apache/taverna/mobile/data/model/User.java
+++ b/app/src/main/java/org/apache/taverna/mobile/data/model/User.java
@@ -18,13 +18,13 @@
  */
 package org.apache.taverna.mobile.data.model;
 
+import android.os.Parcel;
+import android.os.Parcelable;
+
 import org.simpleframework.xml.Attribute;
 import org.simpleframework.xml.Element;
 import org.simpleframework.xml.Root;
 
-import android.os.Parcel;
-import android.os.Parcelable;
-
 @Root(name = "user")
 public class User implements Parcelable {
 
@@ -64,6 +64,9 @@ public class User implements Parcelable {
     @Element(name = "avatar", required = false)
     private Avatar avatar;
 
+    @Element(name="workflows",required = false)
+    private Workflows workflows;
+
     public String getResource() {
         return resource;
     }
@@ -160,6 +163,17 @@ public class User implements Parcelable {
         this.avatar = avatar;
     }
 
+    public User() {
+    }
+
+    public Workflows getWorkflows() {
+        return workflows;
+    }
+
+    public void setWorkflows(Workflows workflows) {
+        this.workflows = workflows;
+    }
+
     @Override
     public int describeContents() {
         return 0;
@@ -179,9 +193,7 @@ public class User implements Parcelable {
         dest.writeString(this.country);
         dest.writeString(this.website);
         dest.writeParcelable(this.avatar, flags);
-    }
-
-    public User() {
+        dest.writeParcelable(this.workflows, flags);
     }
 
     protected User(Parcel in) {
@@ -197,9 +209,10 @@ public class User implements Parcelable {
         this.country = in.readString();
         this.website = in.readString();
         this.avatar = in.readParcelable(Avatar.class.getClassLoader());
+        this.workflows = in.readParcelable(Workflows.class.getClassLoader());
     }
 
-    public static final Parcelable.Creator<User> CREATOR = new 
Parcelable.Creator<User>() {
+    public static final Creator<User> CREATOR = new Creator<User>() {
         @Override
         public User createFromParcel(Parcel source) {
             return new User(source);
@@ -210,5 +223,4 @@ public class User implements Parcelable {
             return new User[size];
         }
     };
-
-}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/d0752573/app/src/main/java/org/apache/taverna/mobile/data/remote/APIEndPoint.java
----------------------------------------------------------------------
diff --git 
a/app/src/main/java/org/apache/taverna/mobile/data/remote/APIEndPoint.java 
b/app/src/main/java/org/apache/taverna/mobile/data/remote/APIEndPoint.java
index 63f9518..86a859b 100644
--- a/app/src/main/java/org/apache/taverna/mobile/data/remote/APIEndPoint.java
+++ b/app/src/main/java/org/apache/taverna/mobile/data/remote/APIEndPoint.java
@@ -28,6 +28,6 @@ public class APIEndPoint {
     public static final String WORKFLOW = "workflow.xml";
     public static final String USER = "user.xml";
     public static final String LICENSE = "license.xml";
-
     public static final String WHOAMI = "whoami.xml";
+    public static final String MY_WORKFLOWS = "user.xml";
 }

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/d0752573/app/src/main/java/org/apache/taverna/mobile/data/remote/TavernaService.java
----------------------------------------------------------------------
diff --git 
a/app/src/main/java/org/apache/taverna/mobile/data/remote/TavernaService.java 
b/app/src/main/java/org/apache/taverna/mobile/data/remote/TavernaService.java
index 825f423..5406cf5 100644
--- 
a/app/src/main/java/org/apache/taverna/mobile/data/remote/TavernaService.java
+++ 
b/app/src/main/java/org/apache/taverna/mobile/data/remote/TavernaService.java
@@ -60,4 +60,6 @@ public interface TavernaService {
     @GET(APIEndPoint.WHOAMI)
     Observable<User> getLoginUserDetail(@Header("Authorization") String 
credentials);
 
+    @GET(APIEndPoint.MY_WORKFLOWS)
+    Observable<Workflows> getMyWorkflows(@Query("id") String id, @QueryMap 
Map<String, String> options);
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/d0752573/app/src/main/java/org/apache/taverna/mobile/ui/myworkflows/MyWorkflowFragment.java
----------------------------------------------------------------------
diff --git 
a/app/src/main/java/org/apache/taverna/mobile/ui/myworkflows/MyWorkflowFragment.java
 
b/app/src/main/java/org/apache/taverna/mobile/ui/myworkflows/MyWorkflowFragment.java
new file mode 100644
index 0000000..a829966
--- /dev/null
+++ 
b/app/src/main/java/org/apache/taverna/mobile/ui/myworkflows/MyWorkflowFragment.java
@@ -0,0 +1,224 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.taverna.mobile.ui.myworkflows;
+
+import android.content.Intent;
+import android.os.Bundle;
+import android.support.design.widget.Snackbar;
+import android.support.v4.app.Fragment;
+import android.support.v4.widget.SwipeRefreshLayout;
+import android.support.v7.widget.DefaultItemAnimator;
+import android.support.v7.widget.LinearLayoutManager;
+import android.support.v7.widget.RecyclerView;
+import android.util.Log;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.ProgressBar;
+
+import org.apache.taverna.mobile.R;
+import org.apache.taverna.mobile.data.DataManager;
+import org.apache.taverna.mobile.data.local.PreferencesHelper;
+import org.apache.taverna.mobile.data.model.Workflow;
+import org.apache.taverna.mobile.data.model.Workflows;
+import org.apache.taverna.mobile.ui.adapter.EndlessRecyclerOnScrollListener;
+import org.apache.taverna.mobile.ui.adapter.RecyclerItemClickListner;
+import org.apache.taverna.mobile.ui.adapter.WorkflowAdapter;
+import org.apache.taverna.mobile.ui.workflow.WorkflowMvpView;
+import org.apache.taverna.mobile.ui.workflow.WorkflowPresenter;
+import org.apache.taverna.mobile.ui.workflowdetail.WorkflowDetailActivity;
+import org.apache.taverna.mobile.utils.ConnectionInfo;
+import org.apache.taverna.mobile.utils.ScrollChildSwipeRefreshLayout;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import butterknife.BindView;
+import butterknife.ButterKnife;
+
+public class MyWorkflowFragment extends Fragment implements WorkflowMvpView,
+        RecyclerItemClickListner.OnItemClickListener {
+
+    public final String LOG_TAG = getClass().getSimpleName();
+
+    @BindView(R.id.rv_workflows)
+    RecyclerView mRecyclerView;
+
+    @BindView(R.id.progress_circular)
+    ProgressBar mProgressBar;
+
+    @BindView(R.id.swipe_refresh)
+    ScrollChildSwipeRefreshLayout mSwipeRefresh;
+
+    private DataManager dataManager;
+
+    private MyWorkflowPresenter mWorkflowPresenter;
+
+    private WorkflowAdapter mWorkflowAdapter;
+
+
+    private int mPageNumber = 1;
+    private List<Workflow> mWorkflowList;
+
+    @Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        mWorkflowList = new ArrayList<>();
+        dataManager = new DataManager(new PreferencesHelper(getContext()));
+        mWorkflowPresenter = new MyWorkflowPresenter(dataManager);
+
+    }
+
+    @Override
+    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
Bundle
+            savedInstanceState) {
+
+        View rootView = inflater.inflate(R.layout.fragment_dashboard, 
container, false);
+        ButterKnife.bind(this, rootView);
+        mWorkflowPresenter.attachView(this);
+
+        final LinearLayoutManager layoutManager = new 
LinearLayoutManager(getActivity());
+
+        mRecyclerView.setLayoutManager(layoutManager);
+        mRecyclerView.setItemAnimator(new DefaultItemAnimator());
+        mRecyclerView.hasFixedSize();
+
+        mWorkflowAdapter = new WorkflowAdapter(mWorkflowList, getContext());
+
+        mRecyclerView.setAdapter(mWorkflowAdapter);
+        mRecyclerView.addOnItemTouchListener(new 
RecyclerItemClickListner(getActivity(), this));
+
+        showProgressbar(true);
+        mWorkflowPresenter.loadMyWorkflows(mPageNumber);
+
+        mRecyclerView.addOnScrollListener(new 
EndlessRecyclerOnScrollListener(layoutManager) {
+            @Override
+            public void onLoadMore(int current_page) {
+
+                if (ConnectionInfo.isConnectingToInternet(getContext())
+                        && mWorkflowList.size() % 10 == 0) {
+                    mWorkflowList.add(null);
+                    mWorkflowAdapter.notifyItemInserted(mWorkflowList.size());
+                    ++mPageNumber;
+                    mWorkflowPresenter.loadMyWorkflows(mPageNumber);
+                    Log.d(LOG_TAG, "Loading more");
+                } else if 
(!ConnectionInfo.isConnectingToInternet(getContext())) {
+                    Log.d(LOG_TAG, "Internet not available. Not loading more 
posts.");
+                    showErrorSnackBar();
+                }
+            }
+        });
+
+        mSwipeRefresh.setColorSchemeResources(R.color.colorAccent, 
R.color.colorAccent, R.color
+                .colorPrimary);
+        mSwipeRefresh.setOnRefreshListener(new 
SwipeRefreshLayout.OnRefreshListener() {
+            @Override
+            public void onRefresh() {
+                if (ConnectionInfo.isConnectingToInternet(getContext())) {
+
+                    mPageNumber = 1;
+                    mWorkflowPresenter.loadMyWorkflows(mPageNumber);
+
+                    mSwipeRefresh.setRefreshing(true);
+
+                    Log.d(LOG_TAG, "Swipe Refresh");
+
+                } else {
+                    Log.d(LOG_TAG, "NO Internet Connection");
+                    showErrorSnackBar();
+                    if (mSwipeRefresh.isRefreshing()) {
+                        mSwipeRefresh.setRefreshing(false);
+                    }
+                }
+
+            }
+        });
+
+
+        return rootView;
+    }
+
+    @Override
+    public void showProgressbar(boolean b) {
+
+        if (b) {
+            mProgressBar.setVisibility(View.VISIBLE);
+        } else {
+            mProgressBar.setVisibility(View.GONE);
+            mRecyclerView.setVisibility(View.VISIBLE);
+        }
+
+    }
+
+    @Override
+    public void showErrorSnackBar() {
+
+        final Snackbar snackbar = Snackbar.make(mRecyclerView, "NO Internet 
Connection", Snackbar
+                .LENGTH_INDEFINITE);
+        snackbar.setAction("OK", new View.OnClickListener() {
+            @Override
+            public void onClick(View view) {
+                snackbar.dismiss();
+            }
+        });
+
+        snackbar.show();
+    }
+
+    @Override
+    public void showWorkflows(Workflows workflows) {
+
+        if (mSwipeRefresh.isRefreshing()) {
+            mSwipeRefresh.setRefreshing(false);
+            mWorkflowList.clear();
+        }
+
+        mWorkflowList.addAll(workflows.getWorkflowList());
+        mWorkflowAdapter.notifyDataSetChanged();
+    }
+
+    @Override
+    public void removeLoadMoreProgressbar() {
+        if (mPageNumber != 1) {
+            mWorkflowList.remove(mWorkflowList.size() - 1);
+            mWorkflowAdapter.notifyDataSetChanged();
+
+        }
+    }
+
+    @Override
+    public void onDestroyView() {
+        super.onDestroyView();
+        mWorkflowPresenter.detachView();
+    }
+
+    @Override
+    public void onItemClick(View childView, int position) {
+        Intent intent = new Intent(getActivity(), 
WorkflowDetailActivity.class);
+        intent.putExtra("id", mWorkflowList.get(position).getId());
+        intent.putExtra("title", mWorkflowList.get(position).getTitle());
+        startActivity(intent);
+    }
+
+    @Override
+    public void onItemLongPress(View childView, int position) {
+
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/d0752573/app/src/main/java/org/apache/taverna/mobile/ui/myworkflows/MyWorkflowMvpView.java
----------------------------------------------------------------------
diff --git 
a/app/src/main/java/org/apache/taverna/mobile/ui/myworkflows/MyWorkflowMvpView.java
 
b/app/src/main/java/org/apache/taverna/mobile/ui/myworkflows/MyWorkflowMvpView.java
new file mode 100644
index 0000000..48142d6
--- /dev/null
+++ 
b/app/src/main/java/org/apache/taverna/mobile/ui/myworkflows/MyWorkflowMvpView.java
@@ -0,0 +1,33 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.taverna.mobile.ui.myworkflows;
+
+import org.apache.taverna.mobile.data.model.Workflows;
+import org.apache.taverna.mobile.ui.base.MvpView;
+
+public interface MyWorkflowMvpView extends MvpView {
+
+    void showProgressbar(boolean b);
+
+    void showErrorSnackBar();
+
+    void showWorkflows(Workflows workflows);
+
+    void removeLoadMoreProgressbar();
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/d0752573/app/src/main/java/org/apache/taverna/mobile/ui/myworkflows/MyWorkflowPresenter.java
----------------------------------------------------------------------
diff --git 
a/app/src/main/java/org/apache/taverna/mobile/ui/myworkflows/MyWorkflowPresenter.java
 
b/app/src/main/java/org/apache/taverna/mobile/ui/myworkflows/MyWorkflowPresenter.java
new file mode 100644
index 0000000..eddc788
--- /dev/null
+++ 
b/app/src/main/java/org/apache/taverna/mobile/ui/myworkflows/MyWorkflowPresenter.java
@@ -0,0 +1,86 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.taverna.mobile.ui.myworkflows;
+
+import org.apache.taverna.mobile.data.DataManager;
+import org.apache.taverna.mobile.data.model.Workflows;
+import org.apache.taverna.mobile.ui.base.BasePresenter;
+import org.apache.taverna.mobile.ui.workflow.WorkflowMvpView;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import rx.Observer;
+import rx.Subscription;
+import rx.android.schedulers.AndroidSchedulers;
+import rx.schedulers.Schedulers;
+
+public class MyWorkflowPresenter extends BasePresenter<WorkflowMvpView> {
+
+    public final String LOG_TAG = getClass().getSimpleName();
+    private DataManager mDataManager;
+    private Subscription mSubscriptions;
+
+    public MyWorkflowPresenter(DataManager dataManager) {
+        mDataManager = dataManager;
+    }
+
+    @Override
+    public void attachView(WorkflowMvpView mvpView) {
+        super.attachView(mvpView);
+    }
+
+    @Override
+    public void detachView() {
+        super.detachView();
+        if (mSubscriptions != null) mSubscriptions.unsubscribe();
+    }
+
+    public void loadMyWorkflows(int pageNumber) {
+        if (mSubscriptions != null) mSubscriptions.unsubscribe();
+        mSubscriptions = 
mDataManager.getMyWorkflows(mDataManager.getPreferencesHelper().getUserID(), 
getQueryOptions(pageNumber))
+                .observeOn(AndroidSchedulers.mainThread())
+                .subscribeOn(Schedulers.io())
+                .subscribe(new Observer<Workflows>() {
+                    @Override
+                    public void onCompleted() {
+                        getMvpView().showProgressbar(false);
+                    }
+
+                    @Override
+                    public void onError(Throwable e) {
+                        getMvpView().showProgressbar(false);
+                    }
+
+                    @Override
+                    public void onNext(Workflows workflows) {
+                        getMvpView().removeLoadMoreProgressbar();
+                        getMvpView().showWorkflows(workflows);
+                    }
+                });
+
+    }
+
+    private Map<String, String> getQueryOptions(int pageNumber) {
+
+        Map<String, String> option = new HashMap<>();
+        option.put("elements", "workflows");
+        return option;
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/d0752573/app/src/main/java/org/apache/taverna/mobile/ui/workflowdetail/WorkflowDetailPresenter.java
----------------------------------------------------------------------
diff --git 
a/app/src/main/java/org/apache/taverna/mobile/ui/workflowdetail/WorkflowDetailPresenter.java
 
b/app/src/main/java/org/apache/taverna/mobile/ui/workflowdetail/WorkflowDetailPresenter.java
index 0850e96..c1a8ee8 100644
--- 
a/app/src/main/java/org/apache/taverna/mobile/ui/workflowdetail/WorkflowDetailPresenter.java
+++ 
b/app/src/main/java/org/apache/taverna/mobile/ui/workflowdetail/WorkflowDetailPresenter.java
@@ -214,5 +214,12 @@ public class WorkflowDetailPresenter extends 
BasePresenter<WorkflowDetailMvpView
         return option;
     }
 
+    private Map<String, String> getUserWorkflowsQueryOptions() {
+
+        Map<String, String> option = new HashMap<>();
+        option.put("elements", "workflow");
+        return option;
+    }
+
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/d0752573/app/src/main/res/menu/drawer_view.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/menu/drawer_view.xml 
b/app/src/main/res/menu/drawer_view.xml
index 4e799ee..9e0c71f 100644
--- a/app/src/main/res/menu/drawer_view.xml
+++ b/app/src/main/res/menu/drawer_view.xml
@@ -21,8 +21,11 @@
                <item
                        android:id="@+id/nav_workflows"
                        android:icon="@drawable/ic_dashboard_home_web"
-                       android:title="Workflows"/>
-
+                       android:title="All Workflows"/>
+               <item
+                       android:id="@+id/nav_my_workflows"
+                       android:icon="@drawable/ic_userprofile"
+                       android:title="@string/my_workflows"/>
                <item
                                android:id="@+id/nav_favourite_workflow"
                                android:icon="@drawable/ic_star_black_24dp"

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/d0752573/app/src/main/res/values/strings.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/values/strings.xml 
b/app/src/main/res/values/strings.xml
index 6297496..a19a276 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -119,4 +119,5 @@ limitations under the License.
     <string name="login_button_description">Login Button</string>
     <string name="err_login_email">Enter valid email</string>
     <string name="err_login_password">Enter valid password</string>
+    <string name="my_workflows">My Workflows</string>
 </resources>

Reply via email to