add workflow detail fragment

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

Branch: refs/heads/master
Commit: 074b9da266ea84dd07a3556f047153ee0d81587d
Parents: ef54c29
Author: Sagar <[email protected]>
Authored: Fri Jul 1 10:53:57 2016 +0530
Committer: Sagar <[email protected]>
Committed: Fri Jul 1 10:53:57 2016 +0530

----------------------------------------------------------------------
 .../workflowdetail/WorkflowDetailFragment.java  | 122 +++++++++++++++++++
 1 file changed, 122 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/074b9da2/app/src/main/java/org/apache/taverna/mobile/ui/workflowdetail/WorkflowDetailFragment.java
----------------------------------------------------------------------
diff --git 
a/app/src/main/java/org/apache/taverna/mobile/ui/workflowdetail/WorkflowDetailFragment.java
 
b/app/src/main/java/org/apache/taverna/mobile/ui/workflowdetail/WorkflowDetailFragment.java
new file mode 100644
index 0000000..671a14d
--- /dev/null
+++ 
b/app/src/main/java/org/apache/taverna/mobile/ui/workflowdetail/WorkflowDetailFragment.java
@@ -0,0 +1,122 @@
+package org.apache.taverna.mobile.ui.workflowdetail;
+
+
+import com.bumptech.glide.Glide;
+import com.bumptech.glide.load.engine.DiskCacheStrategy;
+
+import org.apache.taverna.mobile.R;
+import org.apache.taverna.mobile.data.DataManager;
+import org.apache.taverna.mobile.data.model.DetailWorkflow;
+import org.apache.taverna.mobile.utils.ConnectionInfo;
+
+import android.os.Bundle;
+import android.support.v4.app.Fragment;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.webkit.WebView;
+import android.widget.ImageView;
+import android.widget.TextView;
+
+import butterknife.BindView;
+import butterknife.ButterKnife;
+
+public class WorkflowDetailFragment extends Fragment implements 
WorkflowDetailMvpView {
+
+    public final String LOG_TAG = getClass().getSimpleName();
+
+    @BindView(R.id.ivWorkflowImage)
+    ImageView workflowImage;
+
+    @BindView(R.id.tvTitle)
+    TextView title;
+
+    @BindView(R.id.ivUploader)
+    ImageView uploaderImage;
+
+    @BindView(R.id.tvUploaderName)
+    TextView uploaderName;
+
+    @BindView(R.id.tvDate)
+    TextView date;
+
+    @BindView(R.id.tvType)
+    TextView type;
+
+    @BindView(R.id.tvDescription)
+    WebView description;
+
+    private DataManager dataManager;
+
+    private WorkflowDetailPresenter mWorkflowDetailPresenter;
+
+    private ConnectionInfo mConnectionInfo;
+
+    private static final String ID="id";
+
+    private String id;
+
+    public static WorkflowDetailFragment newInstance(String id) {
+
+        Bundle args = new Bundle();
+
+        args.putString(ID,id);
+
+        WorkflowDetailFragment fragment = new WorkflowDetailFragment();
+        fragment.setArguments(args);
+        return fragment;
+    }
+
+    @Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        id=getArguments().getString(ID);
+
+        dataManager = new DataManager();
+        mWorkflowDetailPresenter = new WorkflowDetailPresenter(dataManager);
+        mConnectionInfo = new ConnectionInfo(getContext());
+    }
+
+    @Override
+    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
Bundle
+            savedInstanceState) {
+
+        View rootView = inflater.inflate(R.layout.fragment_detail_workflow, 
container, false);
+
+        ButterKnife.bind(this, rootView);
+
+        mWorkflowDetailPresenter.attachView(this);
+        mWorkflowDetailPresenter.loadWorkflowDetail(id);
+
+        return rootView;
+    }
+
+    @Override
+    public void showProgressbar(boolean b) {
+
+    }
+
+    @Override
+    public void showWorkflowDetail(DetailWorkflow detailWorkflow) {
+
+        uploaderName.setText(detailWorkflow.getUploader().getContent());
+        date.setText(detailWorkflow.getUpdatedAt());
+        type.setText(detailWorkflow.getType().getContent());
+        title.setText(detailWorkflow.getTitle());
+        description.loadData(detailWorkflow.getDescription(), "text/html", 
"utf-8");
+
+        Glide.with(getContext())
+                .load(detailWorkflow.getPreviewUri())
+                .diskCacheStrategy(DiskCacheStrategy.SOURCE)
+                .placeholder(R.drawable.placeholder)
+                .error(R.drawable.placeholder)
+                .into(workflowImage);
+    }
+
+    @Override
+    public void onDestroyView() {
+        super.onDestroyView();
+        mWorkflowDetailPresenter.detachView();
+    }
+}

Reply via email to