add no workflow view for My Workflow
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/61daa077 Tree: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/tree/61daa077 Diff: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/diff/61daa077 Branch: refs/heads/master Commit: 61daa077196f634f5e0ae7a21d0e29380f73d152 Parents: 18a6f95 Author: Sagar <[email protected]> Authored: Tue Aug 16 17:54:48 2016 +0530 Committer: Sagar <[email protected]> Committed: Tue Aug 16 17:54:48 2016 +0530 ---------------------------------------------------------------------- .../ui/myworkflows/MyWorkflowFragment.java | 14 +++++++++ .../ui/myworkflows/MyWorkflowMvpView.java | 1 + .../ui/myworkflows/MyWorkflowPresenter.java | 31 +++++++++++++------- app/src/main/res/layout/fragment_dashboard.xml | 9 ++++++ app/src/main/res/values/strings.xml | 1 + 5 files changed, 46 insertions(+), 10 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/61daa077/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 index 7eb04aa..6f3316b 100644 --- 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 @@ -30,6 +30,7 @@ import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.ProgressBar; +import android.widget.TextView; import org.apache.taverna.mobile.R; import org.apache.taverna.mobile.data.DataManager; @@ -61,6 +62,9 @@ public class MyWorkflowFragment extends Fragment implements MyWorkflowMvpView, @BindView(R.id.swipe_refresh) ScrollChildSwipeRefreshLayout mSwipeRefresh; + @BindView(R.id.tvNoWorkflow) + TextView mTextViewNoWorkflow; + private DataManager dataManager; private MyWorkflowPresenter mWorkflowPresenter; @@ -169,6 +173,16 @@ public class MyWorkflowFragment extends Fragment implements MyWorkflowMvpView, } @Override + public void checkWorkflowSize() { + + if (mWorkflowList.size() == 0) { + mTextViewNoWorkflow.setVisibility(View.VISIBLE); + } else { + mTextViewNoWorkflow.setVisibility(View.GONE); + } + } + + @Override public void onDestroyView() { super.onDestroyView(); mWorkflowPresenter.detachView(); http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/61daa077/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 index fc1e3a0..3f5cb98 100644 --- 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 @@ -30,4 +30,5 @@ public interface MyWorkflowMvpView extends MvpView { void showWorkflow(Workflow workflow); + void checkWorkflowSize(); } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/61daa077/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 index bc39616..3661ea6 100644 --- 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 @@ -61,18 +61,28 @@ public class MyWorkflowPresenter extends BasePresenter<MyWorkflowMvpView> { public void loadMyWorkflows() { getMvpView().showProgressbar(true); if (mSubscriptions != null) mSubscriptions.unsubscribe(); - mSubscriptions = mDataManager.getMyWorkflows(mDataManager.getPreferencesHelper().getUserID(), getQueryOptions()) + + mSubscriptions = mDataManager.getMyWorkflows(mDataManager.getPreferencesHelper() + .getUserID(), getQueryOptions()) .flatMap(new Func1<User, Observable<Workflow>>() { @Override public Observable<Workflow> call(User user) { - return Observable.from(user.getWorkflows().getWorkflowList()) - .concatMap(new Func1<Workflow, Observable<? extends Workflow>>() { - @Override - public Observable<? extends Workflow> call(Workflow workflow) { - return mDataManager.getDetailWorkflow(workflow.getId(), - getWorkflowQueryOptions()); - } - }); + if (user.getWorkflows().getWorkflowList() != null && user.getWorkflows() + .getWorkflowList().size() != 0) { + return Observable.from(user.getWorkflows().getWorkflowList()) + .concatMap(new Func1<Workflow, Observable<? extends + Workflow>>() { + + @Override + public Observable<? extends Workflow> call + (Workflow workflow) { + return mDataManager.getDetailWorkflow(workflow.getId(), + getWorkflowQueryOptions()); + } + }); + } else { + return Observable.empty(); + } } }) .observeOn(AndroidSchedulers.mainThread()) @@ -80,8 +90,9 @@ public class MyWorkflowPresenter extends BasePresenter<MyWorkflowMvpView> { .subscribe(new Observer<Workflow>() { @Override public void onCompleted() { - getMvpView().showProgressbar(false); + getMvpView().showProgressbar(false); + getMvpView().checkWorkflowSize(); } @Override http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/61daa077/app/src/main/res/layout/fragment_dashboard.xml ---------------------------------------------------------------------- diff --git a/app/src/main/res/layout/fragment_dashboard.xml b/app/src/main/res/layout/fragment_dashboard.xml index 06e4781..0f960dc 100644 --- a/app/src/main/res/layout/fragment_dashboard.xml +++ b/app/src/main/res/layout/fragment_dashboard.xml @@ -21,6 +21,15 @@ android:layout_height="match_parent" android:background="@color/grey_background"> + <TextView + android:id="@+id/tvNoWorkflow" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_centerInParent="true" + android:text="@string/no_my_workflow" + android:textSize="20sp" + android:visibility="gone"/> + <org.apache.taverna.mobile.utils.ScrollChildSwipeRefreshLayout android:id="@+id/swipe_refresh" android:layout_width="match_parent" http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/61daa077/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 a19a276..f2a2a20 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -120,4 +120,5 @@ limitations under the License. <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> + <string name="no_my_workflow">You have not created any workflow yet !!!!!</string> </resources>
