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 2015/07/27 12:05:39 UTC
[02/18] incubator-taverna-mobile git commit: implemented workflow run
history
implemented workflow run history
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/50706d41
Tree: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/tree/50706d41
Diff: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/diff/50706d41
Branch: refs/heads/master
Commit: 50706d4126c3d74765b4871098604b3588fa44d3
Parents: 10e5e42
Author: larrytech7 <la...@gmail.com>
Authored: Sun Jul 19 12:28:31 2015 +0100
Committer: larrytech7 <la...@gmail.com>
Committed: Sun Jul 19 12:28:31 2015 +0100
----------------------------------------------------------------------
.../activities/WorkflowDetailActivity.java | 3 +-
.../taverna/mobile/adapters/RunAdapter.java | 4 +-
.../mobile/adapters/WorkflowAdapter.java | 3 +-
.../mobile/fragments/WorkflowItemFragment.java | 7 ---
.../WorkflowRunHistoryFragment.java | 32 +++++-------
.../workflowdetails/WorkflowdetailFragment.java | 9 ++--
.../taverna/mobile/utils/DetailsLoader.java | 54 ++++++++++++--------
7 files changed, 57 insertions(+), 55 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/50706d41/app/src/main/java/org/apache/taverna/mobile/activities/WorkflowDetailActivity.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/activities/WorkflowDetailActivity.java b/app/src/main/java/org/apache/taverna/mobile/activities/WorkflowDetailActivity.java
index b0ccb12..b292244 100644
--- a/app/src/main/java/org/apache/taverna/mobile/activities/WorkflowDetailActivity.java
+++ b/app/src/main/java/org/apache/taverna/mobile/activities/WorkflowDetailActivity.java
@@ -108,7 +108,8 @@ public class WorkflowDetailActivity extends ActionBarActivity {
case 1:
return WorkflowdetailFragment.newInstance(position + 1);
case 2:
- return WorkflowRunHistoryFragment.newInstance("workflow",WorkflowdetailFragment.WORKFLO_ID);
+ //System.out.println(""+getIntent().getStringExtra("wtitle"));
+ return WorkflowRunHistoryFragment.newInstance(getIntent().getStringExtra("wtitle"));
case 3:
return WorkflowLicenceFragment.newInstance("","");
case 4:
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/50706d41/app/src/main/java/org/apache/taverna/mobile/adapters/RunAdapter.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/adapters/RunAdapter.java b/app/src/main/java/org/apache/taverna/mobile/adapters/RunAdapter.java
index 74152df..fbc5c30 100644
--- a/app/src/main/java/org/apache/taverna/mobile/adapters/RunAdapter.java
+++ b/app/src/main/java/org/apache/taverna/mobile/adapters/RunAdapter.java
@@ -130,8 +130,8 @@ public class RunAdapter extends RecyclerView.Adapter<RunAdapter.RunHolder> {
*/
@Override
public int getItemCount() {
- return 0;
-/// return runList.size();
+ //return 0;
+ return runList.size();
}
public static class RunHolder extends RecyclerView.ViewHolder {
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/50706d41/app/src/main/java/org/apache/taverna/mobile/adapters/WorkflowAdapter.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/adapters/WorkflowAdapter.java b/app/src/main/java/org/apache/taverna/mobile/adapters/WorkflowAdapter.java
index 4f57766..e89f6f0 100644
--- a/app/src/main/java/org/apache/taverna/mobile/adapters/WorkflowAdapter.java
+++ b/app/src/main/java/org/apache/taverna/mobile/adapters/WorkflowAdapter.java
@@ -127,7 +127,8 @@ public class WorkflowAdapter extends RecyclerView.Adapter<WorkflowAdapter.ViewHo
it.setClass(context, WorkflowDetailActivity.class);
// it.putExtra("workflowid", workflow.get(i).getId());
it.putExtra("uri",uri);
- WorkflowdetailFragment.WORKFLO_ID = workflow.get(i).getId();
+ it.putExtra("wtitle", title); //pass this workflow's title to the detail activity so the corresponding run can be fetched
+ WorkflowdetailFragment.WORKFLO_ID = title;//workflow.get(i).getId();
viewHolder.btn_view_workflow.setOnClickListener(new View.OnClickListener() {
@Override
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/50706d41/app/src/main/java/org/apache/taverna/mobile/fragments/WorkflowItemFragment.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/fragments/WorkflowItemFragment.java b/app/src/main/java/org/apache/taverna/mobile/fragments/WorkflowItemFragment.java
index a2e2a4d..e4ac78b 100644
--- a/app/src/main/java/org/apache/taverna/mobile/fragments/WorkflowItemFragment.java
+++ b/app/src/main/java/org/apache/taverna/mobile/fragments/WorkflowItemFragment.java
@@ -242,13 +242,6 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
super.onDetach();
}
- public void setEmptyText(CharSequence emptyText) {
- View emptyView = mListView.getChildAt(2);
-
- if (emptyView instanceof TextView) {
- ((TextView) emptyView).setText(emptyText);
- }
- }
//handle a request to query for given workflows
private void performSearch(String search){
WorkflowAdapter ladapter = new WorkflowAdapter(getActivity());
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/50706d41/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/WorkflowRunHistoryFragment.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/WorkflowRunHistoryFragment.java b/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/WorkflowRunHistoryFragment.java
index e163c9f..d879105 100644
--- a/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/WorkflowRunHistoryFragment.java
+++ b/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/WorkflowRunHistoryFragment.java
@@ -50,32 +50,27 @@ import java.util.List;
* create an instance of this fragment.
*/
public class WorkflowRunHistoryFragment extends Fragment implements LoaderManager.LoaderCallbacks<Workflow>{
- // TODO: Rename parameter arguments, choose names that match
+
// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER
- private static final String ARG_PARAM1 = "param1";
private static final String ARG_PARAM2 = "param2";
private ProgressDialog progressDialog;
private RecyclerView mRecyclerView;
private RunAdapter runAdapter;
- // TODO: Rename and change types of parameters
- private String mParam1;
- private static long workflowID;
+ private static String workflowID; //represents a run name that matches the given workflow
/**
* Use this factory method to create a new instance of
* this fragment using the provided parameters.
*
- * @param param1 Parameter 1.
* @param param2 Parameter 2.
* @return A new instance of fragment WorkflowRunHistoryFragment.
*/
- // TODO: Rename and change types and number of parameters
- public static WorkflowRunHistoryFragment newInstance(String param1, long param2) {
+ public static WorkflowRunHistoryFragment newInstance(String param2) {
WorkflowRunHistoryFragment fragment = new WorkflowRunHistoryFragment();
Bundle args = new Bundle();
- args.putString(ARG_PARAM1, param1);
- args.putLong(ARG_PARAM2, param2);
+ workflowID = param2;
+ args.putString(ARG_PARAM2, param2);
fragment.setArguments(args);
return fragment;
}
@@ -100,10 +95,7 @@ public class WorkflowRunHistoryFragment extends Fragment implements LoaderManage
progressDialog.setCancelable(true);
runAdapter = new RunAdapter(getActivity(),runsList );
- if (getArguments() != null) {
- mParam1 = getArguments().getString(ARG_PARAM1);
- workflowID = getArguments().getLong(ARG_PARAM2);
- }
+ // System.out.println("WorkflowTitle->Run->"+workflowID);
}
@Override
@@ -114,7 +106,7 @@ public class WorkflowRunHistoryFragment extends Fragment implements LoaderManage
mRecyclerView = (RecyclerView) rootView.findViewById(android.R.id.list);
mRecyclerView.setHasFixedSize(true);
mRecyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));
- // getActivity().getLoaderManager().initLoader(1,savedInstanceState,this);
+ getActivity().getLoaderManager().initLoader(0,savedInstanceState,this).forceLoad();
return rootView;
}
@@ -129,7 +121,7 @@ public class WorkflowRunHistoryFragment extends Fragment implements LoaderManage
super.onResume();
mRecyclerView.setAdapter(runAdapter);
mRecyclerView.setScrollingTouchSlop(RecyclerView.TOUCH_SLOP_PAGING);
-
+ //getActivity().getLoaderManager().initLoader(1,null,this);
}
@Override
@@ -139,17 +131,17 @@ public class WorkflowRunHistoryFragment extends Fragment implements LoaderManage
@Override
public Loader<Workflow> onCreateLoader(int i, Bundle bundle) {
- progressDialog.show();
+ //progressDialog.show();
return new DetailsLoader(getActivity(),
DetailsLoader.LOAD_TYPE.TYPE_RUN_HISTORY,
- ""+workflowID);
+ workflowID);
}
@Override
public void onLoadFinished(Loader<Workflow> workflowLoader, Workflow workflow) {
runAdapter.setRunList(workflow.getWorkflow_runs());
- mRecyclerView.swapAdapter(runAdapter, false);
- progressDialog.dismiss();
+ mRecyclerView.setAdapter(runAdapter);
+ // progressDialog.dismiss();
}
@Override
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/50706d41/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/WorkflowdetailFragment.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/WorkflowdetailFragment.java b/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/WorkflowdetailFragment.java
index bfcce62..d809c85 100644
--- a/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/WorkflowdetailFragment.java
+++ b/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/WorkflowdetailFragment.java
@@ -103,7 +103,7 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
public AlertDialog runDialog;
public AlertDialog.Builder alertDialogBuilder;
private static String download_url;
- public static long WORKFLO_ID;
+ public static String WORKFLO_ID = "";
public static Context cont;
private static boolean LOAD_STATE = false;
private static boolean DROPUPLOAD = false;
@@ -127,6 +127,7 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
fragment.setArguments(args);
return fragment;
}
+
public static WorkflowdetailFragment getInstance(){
return WorkflowdetailFragment.getInstance();
}
@@ -140,12 +141,12 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
AppKeyPair appKeys = new AppKeyPair(BOX_APP_KEY, BOX_APP_SECRET);
AndroidAuthSession session = new AndroidAuthSession(appKeys);
mDBApi = new DropboxAPI<AndroidAuthSession>(session);
- long workflowid = getActivity().getIntent().getLongExtra("workflowid", 0);
+ // long workflowid = getActivity().getIntent().getLongExtra("workflowid", 0);
rootView = inflater.inflate(R.layout.fragment_workflow_detail, container, false);
progressDialog = new ProgressDialog(getActivity());
progressDialog.setMessage(getActivity().getResources().getString(R.string.loading));
progressDialog.setCancelable(false);
- WORKFLO_ID = workflowid;
+ // WORKFLO_ID = workflowid;
zoomin = AnimationUtils.loadAnimation(getActivity(), R.anim.zoomin);
zoomout = AnimationUtils.loadAnimation(getActivity(), R.anim.zoomout);
@@ -277,7 +278,7 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
final TextView desc = (TextView) rootView.findViewById(R.id.wdescription);
final TextView createdat = (TextView) rootView.findViewById(R.id.wcreatedat);
final ImageView preview = (ImageView) rootView.findViewById(R.id.wkf_image);
-
+ WORKFLO_ID = wk.getWorkflow_title();
((Activity)cont).runOnUiThread(new Runnable() {
@Override
public void run() {
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/50706d41/app/src/main/java/org/apache/taverna/mobile/utils/DetailsLoader.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/DetailsLoader.java b/app/src/main/java/org/apache/taverna/mobile/utils/DetailsLoader.java
index 9b36a7f..81fdb68 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/DetailsLoader.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/DetailsLoader.java
@@ -62,29 +62,51 @@ public class DetailsLoader extends AsyncTaskLoader<Workflow> {
private Workflow workflow;
private Context context;
- public DetailsLoader(Context context, LOAD_TYPE load_type, String detailsRUI) {
+ public DetailsLoader(Context context, LOAD_TYPE load_type, String dataParam) {
super(context);
this.context = context;
this.lt = load_type;
- this.uri = detailsRUI;
+ this.uri = dataParam;
this.workflow = new Workflow();
}
@Override
public Workflow loadInBackground() {
+ HttpURLConnection connection = null;
+ InputStream dis = null;
//start a network request to fetch user's workflow details
try {
Log.i("LOADER STARTED", "loading data");
//for password protected urls use the user's credentials
Authenticator.setDefault(new TavernaPlayerAPI.Authenticator("taverna", "taverna"));
+ TavernaPlayerAPI tavernaPlayerAPI = new TavernaPlayerAPI();
URL workflowurl;
switch (this.lt){
case TYPE_WORKFLOW_DETAIL:
workflowurl = new URL(this.uri);
+ connection = (HttpURLConnection) workflowurl.openConnection();
+ connection.setRequestProperty("Accept", "application/json");
+ connection.setRequestMethod("GET");
+ connection.connect(); //send request
+
+ Log.i("RESPONSE CODE", "" + connection.getResponseCode());
+ Log.i("RESPONSE Messsage", ""+connection.getResponseMessage());
+ dis = connection.getInputStream();
break;
case TYPE_RUN_HISTORY:
workflowurl = new URL(new TavernaPlayerAPI(this.context).PLAYER_RUN_URL);
+ connection = (HttpURLConnection) workflowurl.openConnection();
+ String userpass = tavernaPlayerAPI.getPlayerUserName(this.context) + ":" + tavernaPlayerAPI.getPlayerUserPassword(this.context);
+ String basicAuth = "Basic " + Base64.encodeToString(userpass.getBytes(), Base64.DEFAULT);
+
+ connection.setRequestProperty ("Authorization", basicAuth);
+ connection.setRequestProperty("Accept", "application/json");
+ connection.setRequestMethod("GET");
+ connection.connect(); //send request
+ Log.i("RESPONSE CODE", "" + connection.getResponseCode());
+ Log.i("RESPONSE Messsage. Run", ""+connection.getResponseMessage());
+ dis = connection.getInputStream();
break;
case TYPE_POLICY:
workflowurl = new URL(new TavernaPlayerAPI(this.context).SERVER_BASE_URL);
@@ -96,20 +118,6 @@ public class DetailsLoader extends AsyncTaskLoader<Workflow> {
workflowurl = new URL(new TavernaPlayerAPI(this.context).PLAYER_WORKFLOW_URL);
break;
}
- HttpURLConnection connection = (HttpURLConnection) workflowurl.openConnection();
- String userpass = "icep603@gmail.com" + ":" + "creationfox";
- String basicAuth = "Basic " + Base64.encodeToString(userpass.getBytes(), Base64.DEFAULT);
-
- // connection.setRequestProperty ("Authorization", basicAuth);
- // connection.setRequestProperty("Accept", "application/json");
- connection.setRequestMethod("GET");
- // connection.setDoInput(true);
- // connection.setDoOutput(true);
- connection.connect(); //send request
- Log.i("RESPONSE Code", "" + connection.getResponseCode());
- Log.i("RESPONSE Messsage", ""+connection.getResponseMessage());
-
- InputStream dis = connection.getInputStream();
switch(this.lt) {
case TYPE_WORKFLOW_DETAIL: {
@@ -140,6 +148,7 @@ public class DetailsLoader extends AsyncTaskLoader<Workflow> {
//br.close();
return workflow;
case TYPE_RUN_HISTORY:{
+ System.out.println("Downloading run history");
BufferedReader br = new BufferedReader(new InputStreamReader(dis));
StringBuffer sb = new StringBuffer();
String jsonData = "";
@@ -148,7 +157,7 @@ public class DetailsLoader extends AsyncTaskLoader<Workflow> {
}
workflow = new Workflow(this.context);
JSONArray jsonArray = new JSONArray(sb.toString());
- Log.i("JSON ", jsonArray.toString(2));
+ Log.i("RUN JSON ", jsonArray.toString(2));
for(int j=0; j< jsonArray.length();j++){
JSONObject jsonObject = jsonArray.getJSONObject(j);
long id = jsonObject.getLong("id");
@@ -157,7 +166,13 @@ public class DetailsLoader extends AsyncTaskLoader<Workflow> {
String started = jsonObject.getString("start_time");
String ended = jsonObject.getString("finish_time");
String state = jsonObject.getString("state");
- if(workflow_id == Integer.parseInt(this.uri)) {
+ StringBuffer nm = new StringBuffer(), ur = new StringBuffer();
+ for(String n: name.toLowerCase().split(" "))
+ nm.append(n);
+ for (String p: this.uri.toLowerCase().split(" "))
+ ur.append(p);
+
+ if(nm.toString().equals(ur.toString())) {
Runs mrun = new Runs(name,started,ended,state);
mrun.setRun_id(id);
mrun.setRun_workflow_id(workflow_id);
@@ -165,7 +180,6 @@ public class DetailsLoader extends AsyncTaskLoader<Workflow> {
workflow.addWorkflowRun(mrun);
}
}
-
}
return workflow;
case TYPE_POLICY:{
@@ -216,7 +230,7 @@ public class DetailsLoader extends AsyncTaskLoader<Workflow> {
@Override
protected void onStopLoading() {
- Log.i("Loading State","loading stopped");
+ Log.i("Loading detailComponent","loading stopped");
}
@Override