You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@taverna.apache.org by st...@apache.org on 2016/06/13 12:58:10 UTC
[01/18] incubator-taverna-mobile git commit: add checkstyle config xml
Repository: incubator-taverna-mobile
Updated Branches:
refs/heads/master 17c8bc711 -> 4daa91d3f
add checkstyle config xml
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/4f1f9962
Tree: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/tree/4f1f9962
Diff: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/diff/4f1f9962
Branch: refs/heads/master
Commit: 4f1f996251276da883bd2e63f569457f28f0c294
Parents: 0618a4d
Author: Sagar <ku...@gmail.com>
Authored: Thu Jun 9 22:51:27 2016 +0530
Committer: Sagar <ku...@gmail.com>
Committed: Thu Jun 9 22:51:27 2016 +0530
----------------------------------------------------------------------
config/quality/checkstyle/checkstyle-config.xml | 167 +++++++++++++++++++
1 file changed, 167 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/4f1f9962/config/quality/checkstyle/checkstyle-config.xml
----------------------------------------------------------------------
diff --git a/config/quality/checkstyle/checkstyle-config.xml b/config/quality/checkstyle/checkstyle-config.xml
new file mode 100644
index 0000000..0f451bb
--- /dev/null
+++ b/config/quality/checkstyle/checkstyle-config.xml
@@ -0,0 +1,167 @@
+<?xml version="1.0"?>
+<!DOCTYPE module PUBLIC
+ "-//Puppy Crawl//DTD Check Configuration 1.3//EN"
+ "http://www.puppycrawl.com/dtds/configuration_1_3.dtd">
+
+<module name = "Checker">
+
+ <property name="charset" value="UTF-8"/>
+
+ <property name="severity" value="error"/>
+
+ <module name="FileTabCharacter">
+ <property name="eachLine" value="true"/>
+ </module>
+
+ <module name="TreeWalker">
+
+ <!-- Imports -->
+
+ <module name="RedundantImport">
+ <property name="severity" value="error"/>
+ </module>
+
+ <module name="AvoidStarImport">
+ <property name="severity" value="error"/>
+ </module>
+
+ <!-- General Code Style -->
+
+ <module name="LineLength">
+ <property name="max" value="100"/>
+ <property name="ignorePattern" value="^package.*|^import.*|a href|href|http://|https://|ftp://"/>
+ </module>
+
+ <module name="EmptyBlock">
+ <property name="option" value="TEXT"/>
+ <property name="tokens" value="LITERAL_TRY, LITERAL_FINALLY, LITERAL_IF, LITERAL_ELSE, LITERAL_SWITCH"/>
+ </module>
+
+ <module name="EmptyCatchBlock">
+ <property name="exceptionVariableName" value="expected"/>
+ </module>
+
+ <module name="LeftCurly">
+ <property name="maxLineLength" value="100"/>
+ </module>
+
+ <module name="RightCurly">
+ <property name="option" value="alone"/>
+ <property name="tokens" value="CLASS_DEF, METHOD_DEF, CTOR_DEF, LITERAL_FOR, LITERAL_WHILE, LITERAL_DO, STATIC_INIT, INSTANCE_INIT"/>
+ </module>
+
+ <module name="RightCurly">
+ <property name="option" value="same"/>
+ </module>
+
+ <module name="NoFinalizer"/>
+
+ <module name="ArrayTypeStyle"/>
+
+ <module name="ModifierOrder"/>
+
+ <module name="Indentation">
+ <property name="basicOffset" value="4"/>
+ <property name="braceAdjustment" value="0"/>
+ <property name="caseIndent" value="4"/>
+ <property name="throwsIndent" value="4"/>
+ <property name="lineWrappingIndentation" value="8"/>
+ <property name="arrayInitIndent" value="2"/>
+ </module>
+
+ <!-- White Space -->
+
+ <module name="GenericWhitespace">
+ <message key="ws.followed"
+ value="GenericWhitespace ''{0}'' is followed by whitespace."/>
+ <message key="ws.preceded"
+ value="GenericWhitespace ''{0}'' is preceded with whitespace."/>
+ <message key="ws.illegalFollow"
+ value="GenericWhitespace ''{0}'' should followed by whitespace."/>
+ <message key="ws.notPreceded"
+ value="GenericWhitespace ''{0}'' is not preceded with whitespace."/>
+ </module>
+
+ <module name="WhitespaceAround">
+ <property name="allowEmptyConstructors" value="true"/>
+ <property name="allowEmptyMethods" value="false"/>
+ <property name="allowEmptyTypes" value="false"/>
+ <property name="allowEmptyLoops" value="false"/>
+ <message key="ws.notFollowed"
+ value="WhitespaceAround: ''{0}'' is not followed by whitespace. Empty blocks may only be represented as '{}' when not part of a multi-block statement (4.1.3)"/>
+ <message key="ws.notPreceded"
+ value="WhitespaceAround: ''{0}'' is not preceded with whitespace."/>
+ <property name="severity" value="error"/>
+ </module>
+
+ <module name="WhitespaceAfter">
+ <property name="tokens" value="COMMA, SEMI, TYPECAST"/>
+ </module>
+
+ <module name="NoWhitespaceBefore">
+ <property name="tokens" value="SEMI, DOT, POST_DEC, POST_INC"/>
+ <property name="allowLineBreaks" value="true"/>
+ </module>
+
+ <module name="NoWhitespaceAfter">
+ <property name="tokens" value="BNOT, DEC, DOT, INC, LNOT, UNARY_MINUS, UNARY_PLUS"/>
+ <property name="allowLineBreaks" value="true"/>
+ </module>
+
+ <!-- Naming -->
+
+ <module name="PackageName">
+ <property name="format" value="^[a-z]+(\.[a-z][a-z0-9]*)*$"/>
+ <message key="name.invalidPattern"
+ value="Package name ''{0}'' must match pattern ''{1}''."/>
+ </module>
+
+ <module name="MethodName">
+ <property name="format" value="^[a-z][a-z0-9][a-zA-Z0-9_]*$"/>
+ <message key="name.invalidPattern"
+ value="Method name ''{0}'' must match pattern ''{1}''."/>
+ </module>
+
+ <module name="TypeName">
+ <message key="name.invalidPattern"
+ value="Type name ''{0}'' must match pattern ''{1}''."/>
+ </module>
+
+ <module name="MemberName">
+ <property name="applyToPublic" value="false" />
+ <property name="applyToPackage" value="false" />
+ <property name="applyToProtected" value="false" />
+ <property name="format" value="^m[A-Z][a-z0-9][a-zA-Z0-9]*$"/>
+ <message key="name.invalidPattern"
+ value="Member name ''{0}'' must match pattern ''{1}''."/>
+ </module>
+
+ <module name="ParameterName">
+ <property name="format" value="^[a-z][a-zA-Z0-9]*$"/>
+ <message key="name.invalidPattern"
+ value="Parameter name ''{0}'' must match pattern ''{1}''."/>
+ </module>
+
+ <module name="LocalVariableName">
+ <property name="tokens" value="VARIABLE_DEF"/>
+ <property name="format" value="^[a-z][a-zA-Z0-9]*$"/>
+ <property name="allowOneCharVarInForLoop" value="true"/>
+ <message key="name.invalidPattern"
+ value="Local variable name ''{0}'' must match pattern ''{1}''."/>
+ </module>
+
+ <module name="ClassTypeParameterName">
+ <property name="format" value="(^[A-Z][0-9]?)$|([A-Z][a-zA-Z0-9]*[T]$)"/>
+ <message key="name.invalidPattern"
+ value="Class type name ''{0}'' must match pattern ''{1}''."/>
+ </module>
+
+ <module name="MethodTypeParameterName">
+ <property name="format" value="(^[A-Z][0-9]?)$|([A-Z][a-zA-Z0-9]*[T]$)"/>
+ <message key="name.invalidPattern"
+ value="Method type name ''{0}'' must match pattern ''{1}''."/>
+ </module>
+
+ </module>
+
+</module>
\ No newline at end of file
[10/18] incubator-taverna-mobile git commit: refactor code using pmd
Posted by st...@apache.org.
refactor code using pmd
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/e25d011a
Tree: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/tree/e25d011a
Diff: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/diff/e25d011a
Branch: refs/heads/master
Commit: e25d011a8ef6782ab895967a1acfe59a7874f89f
Parents: 6128a61
Author: Sagar <ku...@gmail.com>
Authored: Mon Jun 13 14:46:39 2016 +0530
Committer: Sagar <ku...@gmail.com>
Committed: Mon Jun 13 14:46:39 2016 +0530
----------------------------------------------------------------------
.../activities/DashboardMainActivity.java | 30 +++---
.../mobile/activities/LoginActivity.java | 25 +++--
.../adapters/FavoriteWorkflowAdapter.java | 7 +-
.../taverna/mobile/adapters/RunAdapter.java | 8 +-
.../mobile/adapters/WorkflowAdapter.java | 34 ++++---
.../customviews/WorkflowPreviewImageView.java | 35 ++++---
.../mobile/data/remote/BaseApiManager.java | 2 +-
.../mobile/fragments/FavoriteFragment.java | 7 +-
.../mobile/fragments/WorkflowItemFragment.java | 45 ++++----
.../fragments/workflowdetails/RunFragment.java | 47 +++++----
.../WorkflowRunHistoryFragment.java | 9 +-
.../workflowdetails/WorkflowdetailFragment.java | 102 ++++++++++---------
.../taverna/mobile/tavernamobile/Runs.java | 31 +++---
.../mobile/tavernamobile/TavernaPlayerAPI.java | 40 ++++----
.../taverna/mobile/tavernamobile/User.java | 14 +--
.../taverna/mobile/tavernamobile/Workflow.java | 80 +++++++--------
.../EndlessRecyclerOnScrollListener.java | 12 +--
.../ui/anouncements/AnnouncementFragment.java | 3 +-
.../taverna/mobile/utils/AvatarLoader.java | 6 +-
.../taverna/mobile/utils/ConnectionInfo.java | 7 +-
.../taverna/mobile/utils/DetailsLoader.java | 36 +++----
.../apache/taverna/mobile/utils/HttpUtil.java | 12 ++-
.../apache/taverna/mobile/utils/RunTask.java | 5 +-
.../apache/taverna/mobile/utils/WorkflowDB.java | 41 ++++----
.../taverna/mobile/utils/WorkflowLoader.java | 11 +-
.../taverna/mobile/utils/WorkflowOpen.java | 32 +++---
.../xmlparsers/MyExperimentXmlParserRules.java | 62 +++++------
.../utils/xmlparsers/WorkflowDetailParser.java | 3 +-
28 files changed, 391 insertions(+), 355 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/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 17b1337..22abada 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
@@ -143,15 +143,15 @@ public class DashboardMainActivity extends AppCompatActivity {
Intent workflowSelectIntent =
new Intent(Intent.ACTION_GET_CONTENT)
- .setDataAndTypeAndNormalize(Uri.parse(String
- .format("%s%s%s",
+ .setDataAndTypeAndNormalize(
+ Uri.parse(String.format("%s%s%s",
Environment.getExternalStorageDirectory(),
File.separator, APP_DIRECTORY_NAME)),
"application/vnd.taverna.t2flow+xml");
Intent loadWorkflowIntent = Intent.createChooser
(workflowSelectIntent,
- "Choose Workflow (t2flow or xml)");
+ "Choose Workflow (t2flow or xml)");
startActivityForResult(loadWorkflowIntent, SELECT_WORKFLOW);
menuItem.setChecked(true);
mDrawerLayout.closeDrawers();
@@ -208,20 +208,18 @@ public class DashboardMainActivity extends AppCompatActivity {
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
- if (resultCode == RESULT_OK) {
- if (requestCode == SELECT_WORKFLOW) {
- String workflowPath = data.getData().getPath();
- // Toast.makeText(getBaseContext(), "Path: "+workflowPath, Toast.LENGTH_LONG)
- // .show();
- String type = getMimeType(data.getData().getPath());
- if (type == "text/xml" || type == "application/vnd.taverna.t2flow+xml") {
-
- new WorkflowOpen(this).execute(workflowPath);
- } else {
- Toast.makeText(getBaseContext(), "Invalid worklow. Please try again", Toast
- .LENGTH_LONG).show();
+ if (resultCode == RESULT_OK && requestCode == SELECT_WORKFLOW) {
+ String workflowPath = data.getData().getPath();
+ // Toast.makeText(getBaseContext(), "Path: "+workflowPath, Toast.LENGTH_LONG)
+ // .show();
+ String type = getMimeType(data.getData().getPath());
+ if (type.equals("text/xml") || type.equals("application/vnd.taverna.t2flow+xml")) {
+
+ new WorkflowOpen(this).execute(workflowPath);
+ } else {
+ Toast.makeText(getBaseContext(), "Invalid worklow. Please try again", Toast
+ .LENGTH_LONG).show();
- }
}
}
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/app/src/main/java/org/apache/taverna/mobile/activities/LoginActivity.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/activities/LoginActivity.java b/app/src/main/java/org/apache/taverna/mobile/activities/LoginActivity.java
index 11ed303..d7b46f9 100644
--- a/app/src/main/java/org/apache/taverna/mobile/activities/LoginActivity.java
+++ b/app/src/main/java/org/apache/taverna/mobile/activities/LoginActivity.java
@@ -36,6 +36,7 @@ import android.preference.PreferenceManager;
import android.support.v4.app.Fragment;
import android.support.v7.app.ActionBarActivity;
import android.util.Base64;
+import android.util.Log;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
@@ -55,6 +56,7 @@ import java.net.URL;
public class LoginActivity extends ActionBarActivity {
+ private static final String TAG = "LoginActivity";
@Override
protected void onCreate(Bundle savedInstanceState) {
@@ -172,15 +174,16 @@ public class LoginActivity extends ActionBarActivity {
con.connect();
int status = con.getResponseCode();
response = String.valueOf(status);
- if (status != HttpURLConnection.HTTP_OK) {
- if (status == HttpURLConnection.HTTP_MOVED_PERM ||
- status == HttpURLConnection.HTTP_MOVED_TEMP ||
- status == HttpURLConnection.HTTP_SEE_OTHER || status == 307) {
- redirect = true;
- }
+ if (status != HttpURLConnection.HTTP_OK
+ && (status == HttpURLConnection.HTTP_MOVED_PERM ||
+ status == HttpURLConnection.HTTP_MOVED_TEMP ||
+ status == HttpURLConnection.HTTP_SEE_OTHER || status == 307)) {
+ redirect = true;
}
- System.out.println("Status code: " + status);
+
+
+ Log.d(TAG, "Status code: " + status);
if (redirect) {
// get redirect url from "location" header field
String newUrl = con.getHeaderField("Location");
@@ -191,7 +194,7 @@ public class LoginActivity extends ActionBarActivity {
// open the new connection again
con = (HttpURLConnection) new URL(newUrl).openConnection();
con.setRequestProperty("Cookie", cookies);
- System.out.println("Redirect to URL : " + newUrl);
+ Log.d(TAG, "Redirect to URL : " + newUrl);
con.connect();
}
BufferedReader br = new BufferedReader(new InputStreamReader(con
@@ -202,16 +205,16 @@ public class LoginActivity extends ActionBarActivity {
sb.append(s);
}
br.close();
- System.out.println("data: " + sb.toString());
+ Log.d(TAG, "data: " + sb.toString());
con.disconnect();
return response;
} catch (MalformedURLException e) {
- e.printStackTrace();
+ Log.e(TAG, "doInBackground: ", e);
} catch (IOException e) {
- e.printStackTrace();
+ Log.e(TAG, "doInBackground: ", e);
}
return response;
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/app/src/main/java/org/apache/taverna/mobile/adapters/FavoriteWorkflowAdapter.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/adapters/FavoriteWorkflowAdapter.java b/app/src/main/java/org/apache/taverna/mobile/adapters/FavoriteWorkflowAdapter.java
index bfe292a..0feb3ce 100644
--- a/app/src/main/java/org/apache/taverna/mobile/adapters/FavoriteWorkflowAdapter.java
+++ b/app/src/main/java/org/apache/taverna/mobile/adapters/FavoriteWorkflowAdapter.java
@@ -35,6 +35,7 @@ import android.graphics.Color;
import android.preference.PreferenceManager;
import android.support.design.widget.FloatingActionButton;
import android.support.v7.widget.RecyclerView;
+import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@@ -51,7 +52,7 @@ import java.util.List;
*/
public class FavoriteWorkflowAdapter extends RecyclerView.Adapter<FavoriteWorkflowAdapter
.FViewHolder> {
-
+ private static final String TAG = "FavoriteWorkflowAdapter";
public WorkflowDB favDB;
private Context context;
private List<ArrayList<Object>> dataSet;
@@ -126,9 +127,9 @@ public class FavoriteWorkflowAdapter extends RecyclerView.Adapter<FavoriteWorkfl
favDB.delete(String.valueOf(data.get(0)));
notifyDataSetChanged();
} catch (JSONException e) {
- e.printStackTrace();
+ Log.e(TAG, "onClick: ", e);
} catch (Exception ex) {
- ex.printStackTrace();
+ Log.e(TAG, "onClick: ", ex);
}
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/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 4a55423..b6a0e23 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
@@ -101,10 +101,10 @@ public class RunAdapter extends RecyclerView.Adapter<RunAdapter.RunHolder> {
@Override
public void onBindViewHolder(RunHolder holder, int position) {
Runs lRun = runList.get(position);
- holder.runtitle.setText(lRun.getRun_name());
- holder.runstarted.setText(lRun.getRun_started_date());
- holder.runfinished.setText(lRun.getRun_ended_date());
- holder.runAuthor.setText("Author->" + lRun.getRun_author());
+ holder.runtitle.setText(lRun.getRunName());
+ holder.runstarted.setText(lRun.getRunStartedDate());
+ holder.runfinished.setText(lRun.getRunEndedDate());
+ holder.runAuthor.setText("Author->" + lRun.getRunAuthor());
switch (lRun.getState()) {
case RUNNING:
holder.runStatus.setImageResource(android.R.drawable.presence_busy);
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/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 19ee4f3..b9c4e86 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
@@ -43,6 +43,7 @@ import android.preference.PreferenceManager;
import android.support.v7.widget.RecyclerView;
import android.text.Html;
import android.text.util.Linkify;
+import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@@ -66,6 +67,7 @@ import java.util.List;
* Created by Larry Akah on 6/8/15.
*/
public class WorkflowAdapter extends RecyclerView.Adapter<WorkflowAdapter.ViewHolder> {
+ private static final String TAG = "WorkflowAdapter";
public static final String WORKFLOW_FAVORITE_KEY = "WORKFLOW_FAVORITES"; //workflow key used
// to save workflows when marked as favorites
public static final String FAVORITE_LIST_DB = "FAVORITE_LIST";
@@ -109,12 +111,12 @@ public class WorkflowAdapter extends RecyclerView.Adapter<WorkflowAdapter.ViewHo
* "something changed"} event if more specific data is not available.</p>
* <p/>
* <p>Components registering observers with an adapter are responsible for
- * {@link #unregisterAdapterDataObserver(android.support.v7.widget.RecyclerView
+ * {@link #registerAdapterDataObserver(android.support.v7.widget.RecyclerView
* .AdapterDataObserver)
* unregistering} those observers when finished.</p>
*
* @param observer Observer to register
- * @see #unregisterAdapterDataObserver(android.support.v7.widget.RecyclerView
+ * @see #registerAdapterDataObserver(android.support.v7.widget.RecyclerView
* .AdapterDataObserver)
*/
@Override
@@ -154,11 +156,11 @@ public class WorkflowAdapter extends RecyclerView.Adapter<WorkflowAdapter.ViewHo
public void onBindViewHolder(final ViewHolder viewHolder, int i) {
final long wid = workflowList.get(i).getId();
- final String author = workflowList.get(i).getWorkflow_author();
+ final String author = workflowList.get(i).getWorkflowAuthor();
// final String author = workflowList.get(i).getUploader().getName();
- final String title = workflowList.get(i).getWorkflow_title();
- String description = workflowList.get(i).getWorkflow_description();
- final String uri = workflowList.get(i).getWorkflow_details_url();
+ final String title = workflowList.get(i).getWorkflowTitle();
+ String description = workflowList.get(i).getWorkflowDescription();
+ final String uri = workflowList.get(i).getWorkflowDetailsUrl();
final String desc_full = description;
if (description.length() > 80) description = description.substring(0, 79) + " ...";
@@ -168,26 +170,27 @@ public class WorkflowAdapter extends RecyclerView.Adapter<WorkflowAdapter.ViewHo
Linkify.addLinks(viewHolder.wk_description, Linkify.WEB_URLS);
final Intent it = new Intent();
- System.out.println("Workflow_uri:" + uri);
+ Log.d(TAG, "Workflow_uri:" + uri);
it.setClass(context, WorkflowDetailActivity.class);
// it.putExtra("workflowid", workflow.get(i).getId()); //workflow_url
it.putExtra("uri", uri); //uri
it.putExtra("wtitle", title); //pass this workflow's title to the detail activity so the
// corresponding run can be fetched
it.putExtra("wid", wid);
- WorkflowdetailFragment.WORKFLO_ID = title; //workflow.get(i).getId();
+ WorkflowdetailFragment.mWorkfloId = title; //workflow.get(i).getId();
//determine whether to mark button as favorited or not
final String favs = PreferenceManager.getDefaultSharedPreferences(context).getString
(FAVORITE_LIST_DB, "");
String[] ids = favs.split(",");
if (ids.length > 0) {
- for (String id : ids)
+ for (String id : ids) {
if (id.equalsIgnoreCase("" + wid)) {
viewHolder.btn_mark_workflow.setBackgroundResource(R.drawable
.abc_list_selector_disabled_holo_light);
break;
}
+ }
}
viewHolder.btn_view_workflow.setOnClickListener(new View.OnClickListener() {
@@ -234,9 +237,9 @@ public class WorkflowAdapter extends RecyclerView.Adapter<WorkflowAdapter.ViewHo
} else if (saved == -1) {
Toast.makeText(context, "Sorry! This workflow has already been marked as a " +
"favourite", Toast.LENGTH_SHORT).show();
- } else
+ } else {
Toast.makeText(context, "Error! Please try again", Toast.LENGTH_SHORT).show();
-
+ }
}
});
viewHolder.wk_showmore.setText(Html.fromHtml(context.getResources().getString(R.string
@@ -244,10 +247,11 @@ public class WorkflowAdapter extends RecyclerView.Adapter<WorkflowAdapter.ViewHo
viewHolder.wk_showmore.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
- if (viewHolder.infolayout.getVisibility() == View.GONE)
+ if (viewHolder.infolayout.getVisibility() == View.GONE) {
viewHolder.infolayout.setVisibility(View.VISIBLE);
- else
+ } else {
viewHolder.infolayout.setVisibility(View.GONE);
+ }
}
});
@@ -333,9 +337,9 @@ public class WorkflowAdapter extends RecyclerView.Adapter<WorkflowAdapter.ViewHo
detailMinParser.parse(input, new User(strings[1], this.mViewHolder));
} catch (MalformedURLException e) {
- e.printStackTrace();
+ Log.e(TAG, "doInBackground: ", e);
} catch (IOException e) {
- e.printStackTrace();
+ Log.e(TAG, "doInBackground: ", e);
}
return null;
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/app/src/main/java/org/apache/taverna/mobile/customviews/WorkflowPreviewImageView.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/customviews/WorkflowPreviewImageView.java b/app/src/main/java/org/apache/taverna/mobile/customviews/WorkflowPreviewImageView.java
index fb0b497..32a9389 100644
--- a/app/src/main/java/org/apache/taverna/mobile/customviews/WorkflowPreviewImageView.java
+++ b/app/src/main/java/org/apache/taverna/mobile/customviews/WorkflowPreviewImageView.java
@@ -128,17 +128,18 @@ public class WorkflowPreviewImageView extends ImageView {
deltaX = -(x + right);
}
} else {
- //if the image doesnt fit in the width or height
- //limit both up and down and left and right
- if (x + deltaX > 0)
+ //if the image doesnt fit in the width or height
+ //limit both up and down and left and right
+ if (x + deltaX > 0) {
deltaX = -x;
- else if (x + deltaX < -right)
+ } else if (x + deltaX < -right) {
deltaX = -(x + right);
-
- if (y + deltaY > 0)
+ }
+ if (y + deltaY > 0) {
deltaY = -y;
- else if (y + deltaY < -bottom)
+ } else if (y + deltaY < -bottom) {
deltaY = -(y + bottom);
+ }
}
//move the image with the matrix
matrix.postTranslate(deltaX, deltaY);
@@ -237,15 +238,17 @@ public class WorkflowPreviewImageView extends ImageView {
float y = m[Matrix.MTRANS_Y];
if (mScaleFactor < 1) {
if (Math.round(origWidth * saveScale) < width) {
- if (y < -bottom)
+ if (y < -bottom) {
matrix.postTranslate(0, -(y + bottom));
- else if (y > 0)
+ } else if (y > 0) {
matrix.postTranslate(0, -y);
+ }
} else {
- if (x < -right)
+ if (x < -right) {
matrix.postTranslate(-(x + right), 0);
- else if (x > 0)
+ } else if (x > 0) {
matrix.postTranslate(-x, 0);
+ }
}
}
}
@@ -256,14 +259,16 @@ public class WorkflowPreviewImageView extends ImageView {
float x = m[Matrix.MTRANS_X];
float y = m[Matrix.MTRANS_Y];
if (mScaleFactor < 1) {
- if (x < -right)
+ if (x < -right) {
matrix.postTranslate(-(x + right), 0);
- else if (x > 0)
+ } else if (x > 0) {
matrix.postTranslate(-x, 0);
- if (y < -bottom)
+ }
+ if (y < -bottom) {
matrix.postTranslate(0, -(y + bottom));
- else if (y > 0)
+ } else if (y > 0) {
matrix.postTranslate(0, -y);
+ }
}
}
return true;
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/app/src/main/java/org/apache/taverna/mobile/data/remote/BaseApiManager.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/data/remote/BaseApiManager.java b/app/src/main/java/org/apache/taverna/mobile/data/remote/BaseApiManager.java
index 4fa690b..5a384e4 100644
--- a/app/src/main/java/org/apache/taverna/mobile/data/remote/BaseApiManager.java
+++ b/app/src/main/java/org/apache/taverna/mobile/data/remote/BaseApiManager.java
@@ -11,7 +11,7 @@ public class BaseApiManager {
public TavernaService mTavernaService;
- String ENDPOINT = "http://www.myexperiment.org/";
+ final String ENDPOINT = "http://www.myexperiment.org/";
public BaseApiManager() {
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/app/src/main/java/org/apache/taverna/mobile/fragments/FavoriteFragment.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/fragments/FavoriteFragment.java b/app/src/main/java/org/apache/taverna/mobile/fragments/FavoriteFragment.java
index 86278a8..3cca379 100644
--- a/app/src/main/java/org/apache/taverna/mobile/fragments/FavoriteFragment.java
+++ b/app/src/main/java/org/apache/taverna/mobile/fragments/FavoriteFragment.java
@@ -35,6 +35,7 @@ import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
+import android.util.Log;
import android.view.ContextMenu;
import android.view.LayoutInflater;
import android.view.MenuItem;
@@ -55,6 +56,7 @@ public class FavoriteFragment extends Fragment implements RecyclerView.OnCreateC
* The fragment argument representing the section number for this
* fragment.
*/
+ private static final String TAG = "FavoriteFragment";
private static final String ARG_SECTION_NUMBER = "SECTION_NUMBER";
public FavoriteWorkflowAdapter favoriteAdapter;
public WorkflowDB myWorkflowDb;
@@ -114,7 +116,7 @@ public class FavoriteFragment extends Fragment implements RecyclerView.OnCreateC
favoriteAdapter = new FavoriteWorkflowAdapter(getActivity(), mfavorites);
favoriteAdapter.registerAdapterDataObserver(dataObserver);
} catch (JSONException e) {
- e.printStackTrace();
+ Log.e(TAG, "setUpFavoriteData: ", e);
favoriteAdapter = new FavoriteWorkflowAdapter(getActivity(), Collections
.<ArrayList<Object>>emptyList());
favoriteAdapter.registerAdapterDataObserver(dataObserver);
@@ -182,8 +184,9 @@ public class FavoriteFragment extends Fragment implements RecyclerView.OnCreateC
} else if (title.equals("Remove")) {
Toast.makeText(getActivity(), "Removing", Toast.LENGTH_SHORT).show();
return true;
- } else
+ } else {
return super.onContextItemSelected(item);
+ }
}
/**
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/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 98523a1..53649a0 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
@@ -47,6 +47,7 @@ import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.SearchView;
import android.text.TextUtils;
+import android.util.Log;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuInflater;
@@ -76,6 +77,7 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
.OnRefreshListener, SearchView.OnQueryTextListener {
// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER
+ private static final String TAG = "WorkflowItemFragment";
private static final String ARG_PARAM1 = "param1";
private static final String ARG_PARAM2 = "param2";
public static Context cx;
@@ -87,7 +89,7 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
*/
private static RecyclerView mListView;
private static View rootView;
- private static boolean STATE_ON = false;
+ private static boolean stateOn = false;
private static TextView noDataText;
private static LruCache<String, Bitmap> avatarCache;
private static WorkflowAdapter workflowAdapter;
@@ -133,9 +135,9 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
isLoadMoreData = false;
isRefreshData = false;
((WorkflowAdapter) mListView.getAdapter()).addItems(data, previousTotal);
- } else
+ } else {
mListView.swapAdapter(workflowAdapter, false);
-
+ }
if (WorkflowItemFragment.workflowAdapter.getItemCount() == 0) {
mListView.setVisibility(View.GONE);
noDataText.setVisibility(View.VISIBLE);
@@ -160,16 +162,16 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
// .getName());
//check whether avatar is already in the cache before trying to download it
// from remote resource
- if (avatarCache.get(author.getDetails_uri()) == null)
+ if (avatarCache.get(author.getDetailsUri()) == null) {
new AvatarLoader(author.getUserViewHolder()).execute(author
- .getDetails_uri(), author.getRow_id());
- else {
+ .getDetailsUri(), author.getRowId());
+ } else {
author.getUserViewHolder().author_profile.setImageBitmap(avatarCache.get
- (author.getDetails_uri()));
+ (author.getDetailsUri()));
// ((ImageView) rootView.findViewById(R.id.author_profile_image))
-// .setImageBitmap(avatarCache.get(author.getDetails_uri()));
+// .setImageBitmap(avatarCache.get(author.getDetailsUri()));
}
- System.out.println("Author cached ID " + author.getDetails_uri() + "\n Name: " +
+ Log.d(TAG, "Author cached ID " + author.getDetailsUri() + "\n Name: " +
"" + author.getName());
}
}
@@ -177,7 +179,8 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
}
/**
- * Called when avatar xml has finished parsing. fetches the avatar remotely and updates the item
+ * Called when avatar xml has finished parsing. fetches the avatar remotely and updates the
+ * item
* in the list view
*
* @param author the author avatar to load
@@ -188,9 +191,9 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
@Override
public void run() {
// new LoadAuthorAvatar((ImageView) rootView.findViewById(R.id
- // .author_profile_image),author.getDetails_uri()).execute(author.getAvatar_url());
+ // .author_profile_image),author.getDetailsUri()).execute(author.getAvatarUrl());
new LoadAuthorAvatar(author.getUserViewHolder().author_profile, author
- .getDetails_uri()).execute(author.getAvatar_url());
+ .getDetailsUri()).execute(author.getAvatarUrl());
}
});
}
@@ -284,7 +287,7 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
@Override
public void onResume() {
super.onResume();
- if (!STATE_ON) {
+ if (!stateOn) {
new WorkflowLoader(getActivity(), swipeRefreshLayout).execute("" + currentPage);
if (mListView.getAdapter().getItemCount() == 0) {
@@ -303,7 +306,7 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
- STATE_ON = true;
+ stateOn = true;
}
@Override
@@ -352,7 +355,7 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
if (null != wk)
for (int i = 0; i < wk.getItemCount(); i++) {
Workflow workflow = wk.getItem(i);
- if (workflow.getWorkflow_title().toLowerCase().contains(search.toLowerCase())) {
+ if (workflow.getWorkflowTitle().toLowerCase().contains(search.toLowerCase())) {
ladapter.addWorkflow(workflow);
}
}
@@ -417,7 +420,7 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
input.close();
} catch (IOException e) {
- e.printStackTrace();
+ Log.e(TAG, "doInBackground: ", e);
}
return myBitmap;
}
@@ -453,11 +456,9 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
visibleItemCount = mListView.getChildCount();
totalItemCount = mLinearLayoutManager.getItemCount();
firstVisibleItem = mLinearLayoutManager.findFirstVisibleItemPosition();
- if (loading) {
- if (totalItemCount > previousTotal) {
- loading = false;
- previousTotal = totalItemCount;
- }
+ if (loading && totalItemCount > previousTotal) {
+ loading = false;
+ previousTotal = totalItemCount;
}
if (!loading && (totalItemCount - visibleItemCount) <= (firstVisibleItem +
visibleThreshold)) {
@@ -466,7 +467,7 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
isLoadMoreData = true;
currentPage++;
new WorkflowLoader(getActivity(), swipeRefreshLayout).execute("" + currentPage);
- System.out.println(currentPage);
+ Log.d(TAG, currentPage + "");
loading = true;
}
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/RunFragment.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/RunFragment.java b/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/RunFragment.java
index c3eb276..400eaaf 100644
--- a/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/RunFragment.java
+++ b/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/RunFragment.java
@@ -13,6 +13,7 @@ import android.os.Bundle;
import android.preference.PreferenceManager;
import android.support.v4.app.Fragment;
import android.text.method.ScrollingMovementMethod;
+import android.util.Log;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuInflater;
@@ -43,6 +44,7 @@ import static org.apache.taverna.mobile.activities.DashboardMainActivity.APP_DIR
*/
public class RunFragment extends Fragment implements View.OnClickListener {
+ private static final String TAG = "RunFragment";
private View rootView;
private TextView runIdTextView, runNameTextView;
private ImageButton status;
@@ -116,16 +118,17 @@ public class RunFragment extends Fragment implements View.OnClickListener {
runIdTextView.setText(runId);
runNameTextView.setText(runName);
- if (runState.contains("Pending"))
+ if (runState.contains("Pending")) {
status.setImageResource(android.R.drawable.presence_busy);
- else if (runState.contains("Running"))
+ } else if (runState.contains("Running")) {
status.setImageResource(android.R.drawable.presence_away);
- else if (runState.contains("Finished"))
+ } else if (runState.contains("Finished")) {
status.setImageResource(android.R.drawable.presence_online);
- else if (runState.contains("Failed"))
+ } else if (runState.contains("Failed")) {
status.setImageResource(android.R.drawable.presence_offline);
- else
+ } else {
status.setImageResource(android.R.drawable.presence_invisible);
+ }
runStateTextView.setText(runState);
runStartTime.setHint(runStarted);
@@ -137,7 +140,7 @@ public class RunFragment extends Fragment implements View.OnClickListener {
downloadLogs.setOnClickListener(this);
reloadRunResult();
} catch (JSONException e) {
- e.printStackTrace();
+ Log.e(TAG, "onResume: ", e);
}
}
@@ -169,7 +172,7 @@ public class RunFragment extends Fragment implements View.OnClickListener {
switch (view.getId()) {
case R.id.buttonWorkflowDownloadOutput:
try {
- System.out.println("output url: " + run_output_url);
+ Log.d(TAG, "output url: " + run_output_url);
if (run_output_url.isEmpty()) {
Toast.makeText(getActivity(), "No run logs available", Toast.LENGTH_LONG)
.show();
@@ -179,18 +182,18 @@ public class RunFragment extends Fragment implements View.OnClickListener {
(getActivity()).getString(
APP_DIRECTORY_NAME + "/Runoutput/outputs",
"/TavernaMobile/Runouput/outputs/")),
- new TavernaPlayerAPI(getActivity()).PLAYER_RUN_URL +
+ new TavernaPlayerAPI(getActivity()).mPlayerRunUrl +
run_output_url.substring(0, 5));
}
} catch (Exception e) {
- e.printStackTrace();
+ Log.e(TAG, "onClick: ", e);
Toast.makeText(getActivity(), "Error downloading run output", Toast
.LENGTH_LONG).show();
}
break;
case R.id.downloadRunLogs:
try {
- System.out.println("run logs: " + run_logs_url);
+ Log.d(TAG, "run logs: " + run_logs_url);
if (run_logs_url.isEmpty()) {
Toast.makeText(getActivity(), "No run logs available", Toast.LENGTH_LONG)
.show();
@@ -200,11 +203,11 @@ public class RunFragment extends Fragment implements View.OnClickListener {
(getActivity()).getString(
APP_DIRECTORY_NAME + "/Runoutput/logs/",
"/TavernaMobile/Runoutput/logs")),
- new TavernaPlayerAPI(getActivity()).PLAYER_RUN_URL + run_logs_url
+ new TavernaPlayerAPI(getActivity()).mPlayerRunUrl + run_logs_url
.substring(0, 5));
}
} catch (Exception e) {
- e.printStackTrace();
+ Log.e(TAG, "onClick: ", e);
Toast.makeText(getActivity(), "Error downloading run logs", Toast
.LENGTH_LONG).show();
}
@@ -222,22 +225,22 @@ public class RunFragment extends Fragment implements View.OnClickListener {
runEndTime.setHint(runInfo.getString("finish_time"));
runStateTextView.setText(runInfo.getString("status_message"));
- if (runInfo.getString("status_message").contains("Pending"))
+ if (runInfo.getString("status_message").contains("Pending")) {
status.setImageResource(android.R.drawable.presence_busy);
- else if (runInfo.getString("status_message").contains("Running"))
+ } else if (runInfo.getString("status_message").contains("Running")) {
status.setImageResource(android.R.drawable.presence_away);
- else if (runInfo.getString("status_message").contains("Finished"))
+ } else if (runInfo.getString("status_message").contains("Finished")) {
status.setImageResource(android.R.drawable.presence_online);
- else if (runInfo.getString("status_message").contains("Failed"))
+ } else if (runInfo.getString("status_message").contains("Failed")) {
status.setImageResource(android.R.drawable.presence_offline);
- else
+ } else {
status.setImageResource(android.R.drawable.presence_invisible);
-
+ }
run_output_url = runInfo.has("outputs_zip") ? runInfo.getString
("outputs_zip") : "";
run_logs_url = runInfo.has("log") ? runInfo.getString("log") : "";
} catch (JSONException e) {
- e.printStackTrace();
+ Log.e(TAG, "run: ", e);
}
}
});
@@ -260,7 +263,7 @@ public class RunFragment extends Fragment implements View.OnClickListener {
StringBuffer sb = new StringBuffer();
try {
- URL workflowurl = new URL(new TavernaPlayerAPI(this.context).PLAYER_RUN_URL +
+ URL workflowurl = new URL(new TavernaPlayerAPI(this.context).mPlayerRunUrl +
this.runid);
HttpURLConnection connection = (HttpURLConnection) workflowurl.openConnection();
@@ -284,9 +287,9 @@ public class RunFragment extends Fragment implements View.OnClickListener {
updateRun(this.context, runInfo);
} catch (IOException ex) {
- ex.printStackTrace();
+ Log.e(TAG, "run: ", ex);
} catch (JSONException e) {
- e.printStackTrace();
+ Log.e(TAG, "run: ", e);
}
}
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/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 edc67f9..70481f3 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
@@ -37,6 +37,7 @@ import android.os.Bundle;
import android.support.v4.app.Fragment;
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;
@@ -52,7 +53,7 @@ import java.util.List;
*/
public class WorkflowRunHistoryFragment extends Fragment implements LoaderManager
.LoaderCallbacks<Workflow> {
-
+ private static final String TAG = "WorkflowRunHistoryFragment";
// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER
private static final String ARG_PARAM2 = "param2";
private static String workflowID; //represents a run name that matches the given workflow
@@ -146,9 +147,9 @@ public class WorkflowRunHistoryFragment extends Fragment implements LoaderManage
public void onLoadFinished(Loader<Workflow> workflowLoader, Workflow workflow) {
try {
- if (workflow.getWorkflow_runs() != null | workflow.getWorkflow_runs().size() != 0) {
+ if (workflow.getWorkflowRuns() != null | workflow.getWorkflowRuns().size() != 0) {
- runAdapter.setRunList(workflow.getWorkflow_runs());
+ runAdapter.setRunList(workflow.getWorkflowRuns());
mRecyclerView.setAdapter(runAdapter);
mRecyclerView.setVisibility(View.VISIBLE);
emptyRunHistoryTextView.setVisibility(View.GONE);
@@ -158,7 +159,7 @@ public class WorkflowRunHistoryFragment extends Fragment implements LoaderManage
emptyRunHistoryTextView.setVisibility(View.VISIBLE);
}
} catch (NullPointerException np) {
- np.printStackTrace();
+ Log.e(TAG, "onLoadFinished: ", np);
}
// progressDialog.dismiss();
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/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 9f45d7f..c5f0cae 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
@@ -99,10 +99,11 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
* The fragment argument representing the section number for this
* fragment.
*/
+ private static final String TAG = "WorkflowdetailFragment";
private static final String ARG_SECTION_NUMBER = "section_number";
private static final String BOX_APP_KEY = "doicbvkfyzligh2";
private static final String BOX_APP_SECRET = "3uuuw36mm7jkflc";
- public static String WORKFLO_ID = "";
+ public static String mWorkfloId = "";
public static Context cont;
public static String workflow_uri;
static View rootView;
@@ -111,8 +112,8 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
static Workflow currentWorkflow = null;
private static ProgressDialog progressDialog;
private static String download_url;
- private static boolean LOAD_STATE = false;
- private static boolean DROPUPLOAD = false;
+ private static boolean mLoadState = false;
+ private static boolean mDropupload = false;
public AlertDialog runDialog;
public AlertDialog.Builder alertDialogBuilder;
public boolean isZoomIn;
@@ -150,7 +151,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();
+ //mWorkfloId = wk.getWorkflowTitle();
((Activity) cont).runOnUiThread(new Runnable() {
@Override
public void run() {
@@ -163,24 +164,24 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
//String uploaderText = String.format(resources.getString(R.string
// .workflow_author), uploader != null ? uploader.getName():"Unknown");
author.setText((uploader != null) ? uploader.getName() : "Unknown");
- title.setText(wk.getWorkflow_title());
- if (wk.getWorkflow_description() != null) {
- desc.setText(wk.getWorkflow_description());
+ title.setText(wk.getWorkflowTitle());
+ if (wk.getWorkflowDescription() != null) {
+ desc.setText(wk.getWorkflowDescription());
} else {
//desc.setVisibility(View.INVISIBLE); //Not sure I trust this! Needs
// investigating.
}
String createdAtText = String.format(resources.getString(R.string.created), wk
- .getWorkflow_datecreated());
+ .getWorkflowDatecreated());
createdat.setText(createdAtText);
//updated.setText("Workflow Description");
String typeText = String.format(resources.getString(R.string.workflow_type_text),
- wk.getWorkflow_Type());
+ wk.getWorkflowType());
type.setText(typeText);
- //preview.setImageURI(Uri.parse(wk.getWorkflow_preview()));
- new LoadImageThread(preview, wk.getWorkflow_preview()).execute();
- download_url = wk.getWorkflow_remote_url();
+ //preview.setImageURI(Uri.parse(wk.getWorkflowPreview()));
+ new LoadImageThread(preview, wk.getWorkflowPreview()).execute();
+ download_url = wk.getWorkflowRemoteUrl();
zoomin.setAnimationListener(new Animation.AnimationListener() {
@Override
@@ -239,7 +240,7 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
progressDialog = new ProgressDialog(getActivity());
progressDialog.setMessage(getActivity().getResources().getString(R.string.loading));
progressDialog.setCancelable(false);
- // WORKFLO_ID = workflowid;
+ // mWorkfloId = workflowid;
zoomin = AnimationUtils.loadAnimation(getActivity(), R.anim.zoomin);
zoomout = AnimationUtils.loadAnimation(getActivity(), R.anim.zoomout);
@@ -255,12 +256,13 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
final String favs = sharedPreferences.getString(WorkflowAdapter.FAVORITE_LIST_DB, "");
String[] ids = favs.split(",");
if (ids.length > 0) {
- for (String id : ids)
+ for (String id : ids) {
if (id.equalsIgnoreCase("" + wid)) {
mark_workflow.setBackgroundResource(R.drawable
.abc_list_selector_disabled_holo_light);
break;
}
+ }
}
rootView.findViewById(R.id.saveToDropboxButton).setOnClickListener(this);
rootView.findViewById(R.id.saveToGoogleDriveButton).setOnClickListener(this);
@@ -297,11 +299,12 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
switch (view.getId()) {
case R.id.run_wk:
if (((TextView) rootView.findViewById(R.id.wtype)).getText().toString().contains
- ("Taverna 2"))
+ ("Taverna 2")) {
new WorkflowProcessTask(getActivity()).execute(download_url);
- else
+ } else {
Toast.makeText(getActivity(), "Sorry! Only Taverna 2 workflows can be run.",
Toast.LENGTH_LONG).show();
+ }
break;
case R.id.download_wk:
// start the android Download manager to start downloading a remote workflow file
@@ -313,7 +316,7 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
DashboardMainActivity.APP_DIRECTORY_NAME, "/")),
download_url);
} catch (Exception e) {
- e.printStackTrace();
+ Log.e(TAG, "onClick: ", e);
}
break;
@@ -323,11 +326,11 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
String favs = sharedPreferences.getString(WorkflowAdapter.FAVORITE_LIST_DB, "");
//save current workflow as favorite
mfav.add(currentWorkflow.getId());
- mfav.add(currentWorkflow.getWorkflow_author());
- mfav.add(currentWorkflow.getWorkflow_title());
- mfav.add(currentWorkflow.getWorkflow_description());
+ mfav.add(currentWorkflow.getWorkflowAuthor());
+ mfav.add(currentWorkflow.getWorkflowTitle());
+ mfav.add(currentWorkflow.getWorkflowDescription());
mfav.add(SimpleDateFormat.getDateTimeInstance().format(new Date()).toString());
- mfav.add(currentWorkflow.getWorkflow_details_url());
+ mfav.add(currentWorkflow.getWorkflowDetailsUrl());
mfav.add(((TextView) rootView.findViewById(R.id.wkf_author)).getText());
int result = new WorkflowDB(getActivity(), WorkflowAdapter
.WORKFLOW_FAVORITE_KEY).insert(mfav);
@@ -341,16 +344,17 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
} else if (result == -1) {
Toast.makeText(getActivity(), "Sorry! This workflow has already been marked " +
"as a favourite", Toast.LENGTH_SHORT).show();
- } else
+ } else {
Toast.makeText(getActivity(), "Error!, please try again", Toast.LENGTH_SHORT)
.show();
+ }
break;
case R.id.saveToDropboxButton:
String authToken = PreferenceManager.getDefaultSharedPreferences(getActivity())
.getString("dropboxauth", "");
- if (authToken.isEmpty())
+ if (authToken.isEmpty()) {
mDBApi.getSession().startOAuth2Authentication(getActivity());
- else {
+ } else {
mDBApi.getSession().setOAuth2AccessToken(authToken);
new WorkflowDriveUpload().execute(download_url);
}
@@ -369,12 +373,12 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
@Override
public void onResume() {
super.onResume();
- if (!LOAD_STATE)
+ if (!mLoadState)
workflow_uri = getActivity().getIntent().getStringExtra("uri");
getActivity().getLoaderManager().initLoader(1, null, this).forceLoad();
- if (mDBApi.getSession().authenticationSuccessful() && !DROPUPLOAD) {
+ if (mDBApi.getSession().authenticationSuccessful() && !mDropupload) {
try {
// Required to complete auth, sets the access token on the session
mDBApi.getSession().finishAuthentication();
@@ -391,7 +395,7 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
- LOAD_STATE = true;
+ mLoadState = true;
}
@Override
@@ -453,7 +457,7 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
myBitmap = BitmapFactory.decodeStream(input);
// imageView.setImageBitmap(myBitmap);
} catch (IOException e) {
- e.printStackTrace();
+ Log.e(TAG, "doInBackground: ", e);
}
return myBitmap;
}
@@ -487,7 +491,7 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
try {
URL workflowurl = new URL(new TavernaPlayerAPI(this.context)
- .PLAYER_RUN_FRAMEWORK_URL + params[0]);
+ .mPlayerRunFrameworkUrl + params[0]);
HttpURLConnection connection = (HttpURLConnection) workflowurl.openConnection();
String userpass = tavernaPlayerAPI.getPlayerUserName(this.context) + ":" +
tavernaPlayerAPI.getPlayerUserPassword(this.context);
@@ -516,7 +520,7 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
return sb.toString();
} catch (IOException ex) {
- ex.printStackTrace();
+ Log.e(TAG, "doInBackground: ", ex);
}
return sb.toString();
}
@@ -566,7 +570,7 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
// name/input json object
} catch (JSONException e) {
- e.printStackTrace();
+ Log.e(TAG, "onClick: ", e);
}
}
@@ -576,9 +580,9 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
//start a run task to execute the run.
new RunTask(ctx).execute(json.toString());
} catch (JSONException e) {
- e.printStackTrace();
+ Log.e(TAG, "onClick: ", e);
} catch (Exception ex) {
- ex.printStackTrace();
+ Log.e(TAG, "onClick: ", ex);
}
}
@@ -595,7 +599,7 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
runDialog = alertDialogBuilder.create();
} catch (JSONException e) {
- e.printStackTrace();
+ Log.e(TAG, "onPostExecute: ", e);
}
progressDialog.dismiss();
@@ -633,12 +637,12 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
@Override
protected String doInBackground(String... params) {
- StringBuffer sb = new StringBuffer();
+ StringBuffer sb = new StringBuffer(53);
try {
//prepare connection requests
URL workflowurl = new URL(params[0]); //the resource xml file representing the
// workflow to be uploaded to the player
- String playerurl = new TavernaPlayerAPI(this.context).PLAYER_BASE_URL +
+ String playerurl = new TavernaPlayerAPI(this.context).mPlayerBaseUrl +
"workflows.json";
TavernaPlayerAPI tavernaPlayerAPI = new TavernaPlayerAPI();
@@ -658,10 +662,11 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(wconn
.getInputStream()));
String str = "";
- while ((str = bufferedReader.readLine()) != null)
+ while ((str = bufferedReader.readLine()) != null) {
sb.append(str); //in this string builder we have read the workflow( as
- // .t2flow or .xml) workflow from remote resource. Now we need to post that to
- // the player.
+ // .t2flow or .xml) workflow from remote resource. Now we need to post that to
+ // the player.
+ }
bufferedReader.close();
wconn.disconnect();
@@ -671,7 +676,7 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
String post = "{\"workflow\":" + data + "}";
//clear sb so that we can use it again to fetch results from this post request
sb.delete(0, sb.length() - 1);
- System.out.println("BODY=>" + post);
+ Log.d(TAG, "BODY=>" + post);
connection.setRequestMethod("POST");
connection.setRequestProperty("Authorization", basicAuth);
connection.setRequestProperty("Accept", "*/*");
@@ -691,11 +696,12 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
InputStream dis = connection.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(dis));
- while ((str = br.readLine()) != null)
+ while ((str = br.readLine()) != null) {
sb.append(str);
+ }
connection.disconnect();
} catch (IOException e) {
- e.printStackTrace();
+ Log.e(TAG, "doInBackground: ", e);
sb.append("Error reading remote workflow. Please try again later");
}
@@ -719,7 +725,7 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
new WorkflowRunTask(getActivity()).execute(workflowJson.getString("id"));
} catch (JSONException e) {
- e.printStackTrace();
+ Log.e(TAG, "onPostExecute: ", e);
}
}
@@ -764,13 +770,13 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
// metaDataEntry = mDBApi.metadata("/"+Uri.parse(files[0]).getLastPathSegment(),
// 1, null, false, null);
} catch (FileNotFoundException e) {
- e.printStackTrace();
+ Log.e(TAG, "doInBackground: ", e);
} catch (DropboxException e) {
- e.printStackTrace();
+ Log.e(TAG, "doInBackground: ", e);
} catch (MalformedURLException e) {
- e.printStackTrace();
+ Log.e(TAG, "doInBackground: ", e);
} catch (IOException e) {
- e.printStackTrace();
+ Log.e(TAG, "doInBackground: ", e);
}
return response.rev;
@@ -781,7 +787,7 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
if (null != s) {
Toast.makeText(getActivity(), "File Saved to dropbox. Reference: " + s, Toast
.LENGTH_LONG).show();
- DROPUPLOAD = true;
+ mDropupload = true;
} else {
Toast.makeText(getActivity(), "Failed to save to dropbox " + s, Toast
.LENGTH_LONG).show();
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/Runs.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/Runs.java b/app/src/main/java/org/apache/taverna/mobile/tavernamobile/Runs.java
index f2755a3..1604206 100644
--- a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/Runs.java
+++ b/app/src/main/java/org/apache/taverna/mobile/tavernamobile/Runs.java
@@ -22,64 +22,65 @@ public class Runs {
;
- public long getRun_id() {
+ public long getRunId() {
return run_id;
}
- public void setRun_id(long run_id) {
+ public void setrunId(long run_id) {
this.run_id = run_id;
}
- public long getRun_workflow_id() {
+ public long getRunWorkflowId() {
return run_workflow_id;
}
- public void setRun_workflow_id(long run_workflow_id) {
+ public void setRunWorkflowId(long run_workflow_id) {
this.run_workflow_id = run_workflow_id;
}
public RunState getState() {
- if (state.equalsIgnoreCase("finished"))
+ if (state.equalsIgnoreCase("finished")) {
return RunState.FINISHED;
- else if (state.equalsIgnoreCase("failed"))
+ } else if (state.equalsIgnoreCase("failed")) {
return RunState.FAILED;
- else
+ } else {
return RunState.RUNNING;
+ }
}
public void setState(String state) {
this.state = state;
}
- public String getRun_name() {
+ public String getRunName() {
return run_name;
}
- public void setRun_name(String run_name) {
+ public void setRunName(String run_name) {
this.run_name = run_name;
}
- public String getRun_started_date() {
+ public String getRunStartedDate() {
return run_started_date;
}
- public void setRun_started_date(String run_started_date) {
+ public void setRunStartedDate(String run_started_date) {
this.run_started_date = run_started_date;
}
- public String getRun_author() {
+ public String getRunAuthor() {
return run_author;
}
- public void setRun_author(String run_author) {
+ public void setRunAuthor(String run_author) {
this.run_author = run_author;
}
- public String getRun_ended_date() {
+ public String getRunEndedDate() {
return run_ended_date;
}
- public void setRun_ended_date(String run_ended_date) {
+ public void setRunEndedDate(String run_ended_date) {
this.run_ended_date = run_ended_date;
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/TavernaPlayerAPI.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/TavernaPlayerAPI.java b/app/src/main/java/org/apache/taverna/mobile/tavernamobile/TavernaPlayerAPI.java
index 41f392a..6e6bcc1 100644
--- a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/TavernaPlayerAPI.java
+++ b/app/src/main/java/org/apache/taverna/mobile/tavernamobile/TavernaPlayerAPI.java
@@ -34,11 +34,11 @@ import java.net.PasswordAuthentication;
*/
public class TavernaPlayerAPI {
- public static String PLAYER_BASE_URL = "http://heater.cs.man.ac.uk:3000/";
- public static String SERVER_BASE_URL = "http://heater.cs.man.ac.uk:8090/taverna-2.5.4/";
- public static String PLAYER_WORKFLOW_URL = PLAYER_BASE_URL + "workflows/";
- public static String PLAYER_RUN_URL = PLAYER_BASE_URL + "runs/";
- public static String PLAYER_RUN_FRAMEWORK_URL = PLAYER_RUN_URL + "new?workflow_id=";
+ public static String mPlayerBaseUrl = "http://heater.cs.man.ac.uk:3000/";
+ public static String mServerBaseUrl = "http://heater.cs.man.ac.uk:8090/taverna-2.5.4/";
+ public static String mPlayerWorkFlowUrl = mPlayerBaseUrl + "workflows/";
+ public static String mPlayerRunUrl = mPlayerBaseUrl + "runs/";
+ public static String mPlayerRunFrameworkUrl = mPlayerRunUrl + "new?workflow_id=";
//returns a json 'framework' used for creating runs for the given workflow
public TavernaPlayerAPI(Context context) {
@@ -50,35 +50,35 @@ public class TavernaPlayerAPI {
("pref_player_url", "/");
String password = PreferenceManager.getDefaultSharedPreferences(context).getString
("pref_player_url", "/");
- PLAYER_BASE_URL = player;
- SERVER_BASE_URL = server;
- PLAYER_WORKFLOW_URL = PLAYER_BASE_URL + "workflows/";
- PLAYER_RUN_URL = PLAYER_BASE_URL + "runs/";
- PLAYER_RUN_FRAMEWORK_URL = PLAYER_RUN_URL + "new?workflow_id=";
+ mPlayerBaseUrl = player;
+ mServerBaseUrl = server;
+ mPlayerWorkFlowUrl = mPlayerBaseUrl + "workflows/";
+ mPlayerRunUrl = mPlayerBaseUrl + "runs/";
+ mPlayerRunFrameworkUrl = mPlayerRunUrl + "new?workflow_id=";
}
public TavernaPlayerAPI() {
}
- public static String getPLAYER_BASE_URL() {
- return PLAYER_BASE_URL;
+ public static String getplayerBaseUrl() {
+ return mPlayerBaseUrl;
}
- public static String getSERVER_BASE_URL() {
- return SERVER_BASE_URL;
+ public static String getserverBaseUrl() {
+ return mServerBaseUrl;
}
- public static String getPLAYER_WORKFLOW_URL() {
- return PLAYER_WORKFLOW_URL;
+ public static String getplayerWorkflowUrl() {
+ return mPlayerWorkFlowUrl;
}
- public static String getPLAYER_RUN_URL(Context ctx) {
- return PLAYER_RUN_URL;
+ public static String getplayerRunUrl(Context ctx) {
+ return mPlayerRunUrl;
}
- public static String getPLAYER_RUN_FRAMEWORK_URL(Context ctx) {
- return PLAYER_RUN_FRAMEWORK_URL;
+ public static String getplayerRunFrameworkUrl(Context ctx) {
+ return mPlayerRunFrameworkUrl;
}
public String getPlayerUserName(Context c) {
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/User.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/User.java b/app/src/main/java/org/apache/taverna/mobile/tavernamobile/User.java
index 9d85682..4c30739 100644
--- a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/User.java
+++ b/app/src/main/java/org/apache/taverna/mobile/tavernamobile/User.java
@@ -76,7 +76,7 @@ public class User {
this.userViewHolder = userViewHolder;
}
- public String getRow_id() {
+ public String getRowId() {
return this.row_id;
}
@@ -84,27 +84,27 @@ public class User {
this.id = id;
}
- public String getCreated_at() {
+ public String getCreatedAt() {
return created_at;
}
- public void setCreated_at(String created_at) {
+ public void setCreatedAt(String created_at) {
this.created_at = created_at;
}
- public String getDetails_uri() {
+ public String getDetailsUri() {
return this.details_uri;
}
- public void setDetails_uri(String details_uri) {
+ public void setDetailsUri(String details_uri) {
this.details_uri = details_uri;
}
- public String getAvatar_url() {
+ public String getAvatarUrl() {
return this.avatar_url;
}
- public void setAvatar_url(String avatar_url) {
+ public void setAvatarUrl(String avatar_url) {
this.avatar_url = avatar_url;
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/Workflow.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/Workflow.java b/app/src/main/java/org/apache/taverna/mobile/tavernamobile/Workflow.java
index 195775e..be92a9c 100644
--- a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/Workflow.java
+++ b/app/src/main/java/org/apache/taverna/mobile/tavernamobile/Workflow.java
@@ -108,27 +108,27 @@ public class Workflow {
this.id = id;
}
- public String getWorkflow_datecreated() {
+ public String getWorkflowDatecreated() {
return this.workflow_datecreated;
}
- public void setWorkflow_datecreated(String workflow_datecreated) {
+ public void setWorkflowDatecreated(String workflow_datecreated) {
this.workflow_datecreated = workflow_datecreated;
}
- public String getWorkflow_remote_url() {
+ public String getWorkflowRemoteUrl() {
return this.workflow_remote_url;
}
- public void setWorkflow_remote_url(String workflow_remote_url) {
+ public void setWorkflowRemoteUrl(String workflow_remote_url) {
this.workflow_remote_url = workflow_remote_url;
}
- public String getWorkflow_details_url() {
+ public String getWorkflowDetailsUrl() {
return this.workflow_details_url;
}
- public void setWorkflow_details_url(String workflow_details_url) {
+ public void setWorkflowDetailsUrl(String workflow_details_url) {
this.workflow_details_url = workflow_details_url;
}
@@ -156,19 +156,19 @@ public class Workflow {
this.about = about;
}
- public String getWorkflow_datemodified() {
+ public String getWorkflowDatemodified() {
return this.workflow_datemodified;
}
- public void setWorkflow_datemodified(String workflow_datemodified) {
+ public void setWorkflowDatemodified(String workflow_datemodified) {
this.workflow_datemodified = workflow_datemodified;
}
- public List<Runs> getWorkflow_runs() {
+ public List<Runs> getWorkflowRuns() {
return this.workflow_runs;
}
- public void setWorkflow_runs(List<Runs> workflow_runs) {
+ public void setWorkflowRuns(List<Runs> workflow_runs) {
this.workflow_runs = workflow_runs;
}
@@ -176,11 +176,11 @@ public class Workflow {
this.workflow_runs.add(runs);
}
- public int getWorkflow_input() {
+ public int getWorkflowInput() {
return this.workflow_input;
}
- public void setWorkflow_input(int workflow_input) {
+ public void setWorkflowInput(int workflow_input) {
this.workflow_input = workflow_input;
}
@@ -188,35 +188,35 @@ public class Workflow {
return WorkflowInputType.TYPE_INT;
}
- public String getWorkflow_author() {
+ public String getWorkflowAuthor() {
return this.workflow_author;
}
- public void setWorkflow_author(String workflow_author) {
+ public void setWorkflowAuthor(String workflow_author) {
this.workflow_author = workflow_author;
}
- public String getWorkflow_description() {
+ public String getWorkflowDescription() {
return this.workflow_description;
}
- public void setWorkflow_description(String workflow_description) {
+ public void setWorkflowDescription(String workflow_description) {
this.workflow_description = workflow_description;
}
- public String getWorkflow_title() {
+ public String getWorkflowTitle() {
return this.workflow_title;
}
- public void setWorkflow_title(String workflow_title) {
+ public void setWorkflowTitle(String workflow_title) {
this.workflow_title = workflow_title;
}
- public Bitmap getWorkflow_author_bitmap() {
+ public Bitmap getWorkflowAuthorBitmap() {
return this.workflow_author_bitmap;
}
- public void setWorkflow_author_bitmap(Bitmap workflow_author_bitmap) {
+ public void setWorkflowAuthorBitmap(Bitmap workflow_author_bitmap) {
this.workflow_author_bitmap = workflow_author_bitmap;
}
@@ -228,83 +228,83 @@ public class Workflow {
this.workflowComponent = workflowComponent;
}
- public String getWorkflow_web_url() {
+ public String getWorkflowWebUrl() {
return workflow_web_url;
}
- public void setWorkflow_web_url(String workflow_web_url) {
+ public void setWorkflowWebUrl(String workflow_web_url) {
this.workflow_web_url = workflow_web_url;
}
- public String getWorkflow_uploader() {
+ public String getWorkflowUploader() {
return workflow_uploader;
}
- public void setWorkflow_uploader(String workflow_uploader) {
+ public void setWorkflowUploader(String workflow_uploader) {
this.workflow_uploader = workflow_uploader;
}
- public String getWorkflow_Type() {
+ public String getWorkflowType() {
return workflow_Type;
}
- public void setWorkflow_Type(String workflow_Type) {
+ public void setWorkflowType(String workflow_Type) {
this.workflow_Type = workflow_Type;
}
- public String getWorkflow_preview() {
+ public String getWorkflowPreview() {
return workflow_preview;
}
- public void setWorkflow_preview(String workflow_preview) {
+ public void setWorkflowPreview(String workflow_preview) {
this.workflow_preview = workflow_preview;
}
- public String getWorkflow_thumb_big() {
+ public String getWorkflowThumbBig() {
return workflow_thumb_big;
}
- public void setWorkflow_thumb_big(String workflow_thumb_big) {
+ public void setWorkflowThumbBig(String workflow_thumb_big) {
this.workflow_thumb_big = workflow_thumb_big;
}
- public String getWorkflow_licence_type() {
+ public String getWorkflowLicenceType() {
return workflow_licence_type;
}
- public void setWorkflow_licence_type(String workflow_licence_type) {
+ public void setWorkflowLicenceType(String workflow_licence_type) {
this.workflow_licence_type = workflow_licence_type;
}
- public String getWorkflow_content_type() {
+ public String getWorkflowContentType() {
return workflow_content_type;
}
- public void setWorkflow_content_type(String workflow_content_type) {
+ public void setWorkflowContentType(String workflow_content_type) {
this.workflow_content_type = workflow_content_type;
}
- public List<String> getWorkflow_tags() {
+ public List<String> getWorkflowTags() {
return workflow_tags;
}
- public void setWorkflow_tags(List<String> workflow_tags) {
+ public void setWorkflowTags(List<String> workflow_tags) {
this.workflow_tags = workflow_tags;
}
- public String getWorkflow_versions() {
+ public String getWorkflowVersions() {
return workflow_versions;
}
- public void setWorkflow_versions(String workflow_versions) {
+ public void setWorkflowVersions(String workflow_versions) {
this.workflow_versions = workflow_versions;
}
- public List<String> getWorkflow_credits() {
+ public List<String> getWorkflowCredits() {
return workflow_credits;
}
- public void setWorkflow_credits(List<String> workflow_credits) {
+ public void setWorkflowCredits(List<String> workflow_credits) {
this.workflow_credits = workflow_credits;
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/app/src/main/java/org/apache/taverna/mobile/ui/adapter/EndlessRecyclerOnScrollListener.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/ui/adapter/EndlessRecyclerOnScrollListener.java b/app/src/main/java/org/apache/taverna/mobile/ui/adapter/EndlessRecyclerOnScrollListener.java
index 24bc319..dd26de4 100644
--- a/app/src/main/java/org/apache/taverna/mobile/ui/adapter/EndlessRecyclerOnScrollListener.java
+++ b/app/src/main/java/org/apache/taverna/mobile/ui/adapter/EndlessRecyclerOnScrollListener.java
@@ -23,7 +23,7 @@ import android.support.v7.widget.RecyclerView;
public abstract class EndlessRecyclerOnScrollListener extends RecyclerView.OnScrollListener {
- public static String TAG = EndlessRecyclerOnScrollListener.class.getSimpleName();
+ public static final String TAG = EndlessRecyclerOnScrollListener.class.getSimpleName();
int firstVisibleItem, visibleItemCount, totalItemCount;
private int previousTotal = 0; // The total number of items in the dataset after the last load
private boolean loading = true; // True if we are still waiting for the last set of data to
@@ -46,11 +46,11 @@ public abstract class EndlessRecyclerOnScrollListener extends RecyclerView.OnScr
totalItemCount = mLinearLayoutManager.getItemCount();
firstVisibleItem = mLinearLayoutManager.findFirstVisibleItemPosition();
- if (loading) {
- if (totalItemCount > previousTotal + 1) {
- loading = false;
- previousTotal = totalItemCount;
- }
+ if (loading && totalItemCount > previousTotal + 1) {
+
+ loading = false;
+ previousTotal = totalItemCount;
+
}
if (!loading && (totalItemCount - visibleItemCount) <= (firstVisibleItem +
visibleThreshold)) {
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/app/src/main/java/org/apache/taverna/mobile/ui/anouncements/AnnouncementFragment.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/ui/anouncements/AnnouncementFragment.java b/app/src/main/java/org/apache/taverna/mobile/ui/anouncements/AnnouncementFragment.java
index 6143df4..a066da7 100644
--- a/app/src/main/java/org/apache/taverna/mobile/ui/anouncements/AnnouncementFragment.java
+++ b/app/src/main/java/org/apache/taverna/mobile/ui/anouncements/AnnouncementFragment.java
@@ -206,8 +206,9 @@ public class AnnouncementFragment extends Fragment implements RecyclerItemClickL
public void showProgressbar(boolean status) {
if (status) {
mProgressBar.setVisibility(View.VISIBLE);
- } else
+ } else {
mProgressBar.setVisibility(View.GONE);
+ }
}
@Override
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/app/src/main/java/org/apache/taverna/mobile/utils/AvatarLoader.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/AvatarLoader.java b/app/src/main/java/org/apache/taverna/mobile/utils/AvatarLoader.java
index e724bfa..984f41b 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/AvatarLoader.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/AvatarLoader.java
@@ -32,6 +32,7 @@ import org.apache.taverna.mobile.utils.xmlparsers.AvatarXMLParser;
import org.apache.taverna.mobile.utils.xmlparsers.MyExperimentXmlParserRules;
import android.os.AsyncTask;
+import android.util.Log;
import java.io.IOException;
import java.io.InputStream;
@@ -45,6 +46,7 @@ import java.net.URL;
* Created by Larry AKah on 6/29/15.
*/
public class AvatarLoader extends AsyncTask<String, Void, Void> {
+ private static final String TAG = "AvatarLoader";
WorkflowAdapter.ViewHolder vh;
public AvatarLoader(WorkflowAdapter.ViewHolder userViewHolder) {
@@ -72,9 +74,9 @@ public class AvatarLoader extends AsyncTask<String, Void, Void> {
avatarXMLParser.parse(input, new User(strings[1], this.vh));
} catch (MalformedURLException e) {
- e.printStackTrace();
+ Log.e(TAG, "doInBackground: ", e);
} catch (IOException e) {
- e.printStackTrace();
+ Log.e(TAG, "doInBackground: ", e);
}
return null;
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/app/src/main/java/org/apache/taverna/mobile/utils/ConnectionInfo.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/ConnectionInfo.java b/app/src/main/java/org/apache/taverna/mobile/utils/ConnectionInfo.java
index 8704071..3dba53d 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/ConnectionInfo.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/ConnectionInfo.java
@@ -25,11 +25,11 @@ import android.util.Log;
public class ConnectionInfo {
- private static String TAG;
+ private static final String TAG = "ConnectionInfo";
private static Context context;
public ConnectionInfo(Context context) {
- TAG = this.getClass().getName();
+
Log.i(TAG, "Utils: ");
ConnectionInfo.context = context;
}
@@ -41,10 +41,11 @@ public class ConnectionInfo {
if (connectivity != null) {
NetworkInfo[] info = connectivity.getAllNetworkInfo();
if (info != null)
- for (int i = 0; i < info.length; i++)
+ for (int i = 0; i < info.length; i++) {
if (info[i].getState() == NetworkInfo.State.CONNECTED) {
return true;
}
+ }
}
return false;
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/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 9152b97..1313e13 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
@@ -57,9 +57,8 @@ import java.net.URL;
*/
public class DetailsLoader extends AsyncTaskLoader<Workflow> {
+ private static final String TAG = "DetailsLoader";
private LoadType lt;
-
- ;
private String uri;
private Workflow workflow;
private Context context;
@@ -97,7 +96,7 @@ public class DetailsLoader extends AsyncTaskLoader<Workflow> {
dis = connection.getInputStream();
break;
case TYPE_RUN_HISTORY:
- workflowurl = new URL(new TavernaPlayerAPI(this.context).PLAYER_RUN_URL);
+ workflowurl = new URL(new TavernaPlayerAPI(this.context).mPlayerRunUrl);
connection = (HttpURLConnection) workflowurl.openConnection();
String userpass = tavernaPlayerAPI.getPlayerUserName(this.context) + ":" +
tavernaPlayerAPI.getPlayerUserPassword(this.context);
@@ -113,10 +112,10 @@ public class DetailsLoader extends AsyncTaskLoader<Workflow> {
dis = connection.getInputStream();
break;
case TYPE_POLICY:
- workflowurl = new URL(new TavernaPlayerAPI(this.context).SERVER_BASE_URL);
+ workflowurl = new URL(new TavernaPlayerAPI(this.context).mServerBaseUrl);
break;
default:
- workflowurl = new URL(new TavernaPlayerAPI(this.context).PLAYER_WORKFLOW_URL);
+ workflowurl = new URL(new TavernaPlayerAPI(this.context).mPlayerWorkFlowUrl);
break;
}
@@ -159,14 +158,14 @@ public class DetailsLoader extends AsyncTaskLoader<Workflow> {
title, description, type,
attrlicetype, attrType, uploader, attrUploader, date, preview,
licetype, contenturi, contentType, tags, attrTags});
- // System.out.println(sb.toString());
+ // Log.e(TAG, sb.toString());
parser.parse(dis, this.workflow);
}
dis.close();
//br.close();
return workflow;
case TYPE_RUN_HISTORY: {
- System.out.println("Downloading run history");
+ Log.e(TAG, "Downloading run history");
BufferedReader br = new BufferedReader(new InputStreamReader(dis));
StringBuffer sb = new StringBuffer();
String jsonData = "";
@@ -187,16 +186,17 @@ public class DetailsLoader extends AsyncTaskLoader<Workflow> {
JSONObject userobj = jsonObject.getJSONObject("user");
String username = userobj.getString("name");
StringBuffer nm = new StringBuffer(), ur = new StringBuffer();
- for (String n : name.toLowerCase().split(" "))
+ for (String n : name.toLowerCase().split(" ")) {
nm.append(n);
- for (String p : uri.toLowerCase().split(" "))
+ }
+ for (String p : 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);
- mrun.setRun_author(username);
+ mrun.setrunId(id);
+ mrun.setRunWorkflowId(workflow_id);
+ mrun.setRunAuthor(username);
workflow.addWorkflowRun(mrun);
}
@@ -220,11 +220,11 @@ public class DetailsLoader extends AsyncTaskLoader<Workflow> {
}
} catch (MalformedURLException e) {
- e.printStackTrace();
+ Log.e(TAG, "loadInBackground: ", e);
} catch (IOException e) {
- e.printStackTrace();
+ Log.e(TAG, "loadInBackground: ", e);
} catch (JSONException e) {
- e.printStackTrace();
+ Log.e(TAG, "loadInBackground: ", e);
}
return workflow;
}
@@ -273,6 +273,6 @@ public class DetailsLoader extends AsyncTaskLoader<Workflow> {
* js.getString("description"),
* js.getInt("id"),
* js.getString("url"));
- * workflow.setWorkflow_datecreated(created_at);
- * workflow.setWorkflow_datemodified(updated_at);
+ * workflow.setWorkflowDatecreated(created_at);
+ * workflow.setWorkflowDatemodified(updated_at);
**/
\ No newline at end of file
[05/18] incubator-taverna-mobile git commit: refactor code using
CheckStyle
Posted by st...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/RunFragment.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/RunFragment.java b/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/RunFragment.java
index 8d1fb52..c3eb276 100644
--- a/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/RunFragment.java
+++ b/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/RunFragment.java
@@ -1,6 +1,12 @@
package org.apache.taverna.mobile.fragments.workflowdetails;
+import org.apache.taverna.mobile.R;
+import org.apache.taverna.mobile.tavernamobile.TavernaPlayerAPI;
+import org.apache.taverna.mobile.utils.WorkflowDownloadManager;
+import org.json.JSONException;
+import org.json.JSONObject;
+
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
@@ -18,12 +24,6 @@ import android.widget.ImageButton;
import android.widget.TextView;
import android.widget.Toast;
-import org.apache.taverna.mobile.R;
-import org.apache.taverna.mobile.tavernamobile.TavernaPlayerAPI;
-import org.apache.taverna.mobile.utils.WorkflowDownloadManager;
-import org.json.JSONException;
-import org.json.JSONObject;
-
import java.io.BufferedReader;
import java.io.File;
import java.io.IOException;
@@ -41,17 +41,21 @@ import static org.apache.taverna.mobile.activities.DashboardMainActivity.APP_DIR
* Use the {@link RunFragment#newInstance} factory method to
* create an instance of this fragment.
*/
-public class RunFragment extends Fragment implements View.OnClickListener{
+public class RunFragment extends Fragment implements View.OnClickListener {
private View rootView;
- private TextView runIdTextView,runNameTextView;
+ private TextView runIdTextView, runNameTextView;
private ImageButton status;
- private TextView runStateTextView, runStartTime,runEndTime, runInputsText;
- private Button downloadOutput,downloadLogs;
+ private TextView runStateTextView, runStartTime, runEndTime, runInputsText;
+ private Button downloadOutput, downloadLogs;
private int run_id;
private String run_output_url = "";
private String run_logs_url = "";
+ public RunFragment() {
+ // Required empty public constructor
+ }
+
/**
* Use this factory method to create a new instance of
* this fragment using the provided parameters.
@@ -65,10 +69,6 @@ public class RunFragment extends Fragment implements View.OnClickListener{
return fragment;
}
- public RunFragment() {
- // Required empty public constructor
- }
-
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@@ -76,23 +76,24 @@ public class RunFragment extends Fragment implements View.OnClickListener{
}
@Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
+ public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle
+ savedInstanceState) {
rootView = inflater.inflate(R.layout.fragment_run_result, container, false);
- runIdTextView = (TextView) rootView.findViewById(R.id.textview_runid);
- runNameTextView = (TextView) rootView.findViewById(R.id.textView_runName);
- status = (ImageButton) rootView.findViewById(R.id.statusButton);
- runStateTextView = (TextView) rootView.findViewById(R.id.statusTextView);
- runStartTime = (TextView) rootView.findViewById(R.id.start_time);
- runEndTime = (TextView) rootView.findViewById(R.id.runfinish);
- runInputsText = (TextView) rootView.findViewById(R.id.runinputsTextView);
- downloadOutput = (Button) rootView.findViewById(R.id.buttonWorkflowDownloadOutput);
- downloadLogs = (Button) rootView.findViewById(R.id.downloadRunLogs);
+ runIdTextView = (TextView) rootView.findViewById(R.id.textview_runid);
+ runNameTextView = (TextView) rootView.findViewById(R.id.textView_runName);
+ status = (ImageButton) rootView.findViewById(R.id.statusButton);
+ runStateTextView = (TextView) rootView.findViewById(R.id.statusTextView);
+ runStartTime = (TextView) rootView.findViewById(R.id.start_time);
+ runEndTime = (TextView) rootView.findViewById(R.id.runfinish);
+ runInputsText = (TextView) rootView.findViewById(R.id.runinputsTextView);
+ downloadOutput = (Button) rootView.findViewById(R.id.buttonWorkflowDownloadOutput);
+ downloadLogs = (Button) rootView.findViewById(R.id.downloadRunLogs);
return rootView;
}
@Override
- public void onCreateOptionsMenu(Menu menu,MenuInflater menuInflater) {
+ public void onCreateOptionsMenu(Menu menu, MenuInflater menuInflater) {
// Inflate the menu; this adds items to the action bar if it is present.
menuInflater.inflate(R.menu.run_result, menu);
return;
@@ -102,38 +103,38 @@ public class RunFragment extends Fragment implements View.OnClickListener{
public void onResume() {
super.onResume();
String runresult = getActivity().getIntent().getStringExtra("runresult");
- try{
+ try {
JSONObject resultObject = new JSONObject(runresult);
String runName = resultObject.getString("name");
run_id = (int) resultObject.get("id");
- String runId = ""+run_id;
+ String runId = "" + run_id;
String runState = resultObject.getString("state");
String runStarted = resultObject.getString("start_time");
String runEnded = resultObject.getString("finish_time");
String runInputs = resultObject.getString("inputs");
- runIdTextView.setText(runId);
- runNameTextView.setText(runName);
+ runIdTextView.setText(runId);
+ runNameTextView.setText(runName);
- if(runState.contains("Pending"))
- status.setImageResource(android.R.drawable.presence_busy);
+ if (runState.contains("Pending"))
+ status.setImageResource(android.R.drawable.presence_busy);
else if (runState.contains("Running"))
- status.setImageResource(android.R.drawable.presence_away);
+ status.setImageResource(android.R.drawable.presence_away);
else if (runState.contains("Finished"))
- status.setImageResource(android.R.drawable.presence_online);
+ status.setImageResource(android.R.drawable.presence_online);
else if (runState.contains("Failed"))
- status.setImageResource(android.R.drawable.presence_offline);
+ status.setImageResource(android.R.drawable.presence_offline);
else
status.setImageResource(android.R.drawable.presence_invisible);
- runStateTextView.setText(runState);
- runStartTime.setHint(runStarted);
- runEndTime.setHint(runEnded);
- runInputsText.setText(runInputs);
- runInputsText.setMovementMethod(new ScrollingMovementMethod());
+ runStateTextView.setText(runState);
+ runStartTime.setHint(runStarted);
+ runEndTime.setHint(runEnded);
+ runInputsText.setText(runInputs);
+ runInputsText.setMovementMethod(new ScrollingMovementMethod());
- downloadOutput.setOnClickListener(this);
- downloadLogs.setOnClickListener(this);
+ downloadOutput.setOnClickListener(this);
+ downloadLogs.setOnClickListener(this);
reloadRunResult();
} catch (JSONException e) {
e.printStackTrace();
@@ -150,85 +151,96 @@ public class RunFragment extends Fragment implements View.OnClickListener{
reloadRunResult();
return true;
}
- if(id == android.R.id.home){
- //getActivity().finish();
+ if (id == android.R.id.home) {
+ //getActivity().finish();
return true;
}
return super.onOptionsItemSelected(item);
}
- private void reloadRunResult(){
+ private void reloadRunResult() {
Timer t = new Timer();
- // t.scheduleAtFixedRate(new RunTimerTask(getActivity(), run_id), 0, 5000);
- t.schedule(new RunTimerTask(getActivity(),run_id),1);
+ // t.scheduleAtFixedRate(new RunTimerTask(getActivity(), run_id), 0, 5000);
+ t.schedule(new RunTimerTask(getActivity(), run_id), 1);
}
@Override
public void onClick(View view) {
- switch(view.getId()){
+ switch (view.getId()) {
case R.id.buttonWorkflowDownloadOutput:
try {
- System.out.println("output url: "+run_output_url);
- if(run_output_url.isEmpty()){
- Toast.makeText(getActivity(), "No run logs available", Toast.LENGTH_LONG).show();
- }else {
+ System.out.println("output url: " + run_output_url);
+ if (run_output_url.isEmpty()) {
+ Toast.makeText(getActivity(), "No run logs available", Toast.LENGTH_LONG)
+ .show();
+ } else {
new WorkflowDownloadManager(getActivity()).downloadWorkflow(
- new File(PreferenceManager.getDefaultSharedPreferences(getActivity()).getString(
- APP_DIRECTORY_NAME + "/Runoutput/outputs", "/TavernaMobile/Runouput/outputs/")),
- new TavernaPlayerAPI(getActivity()).PLAYER_RUN_URL + run_output_url.substring(0, 5));
+ new File(PreferenceManager.getDefaultSharedPreferences
+ (getActivity()).getString(
+ APP_DIRECTORY_NAME + "/Runoutput/outputs",
+ "/TavernaMobile/Runouput/outputs/")),
+ new TavernaPlayerAPI(getActivity()).PLAYER_RUN_URL +
+ run_output_url.substring(0, 5));
}
} catch (Exception e) {
e.printStackTrace();
- Toast.makeText(getActivity(), "Error downloading run output",Toast.LENGTH_LONG).show();
+ Toast.makeText(getActivity(), "Error downloading run output", Toast
+ .LENGTH_LONG).show();
}
break;
case R.id.downloadRunLogs:
try {
- System.out.println("run logs: "+run_logs_url);
- if(run_logs_url.isEmpty()){
- Toast.makeText(getActivity(), "No run logs available", Toast.LENGTH_LONG).show();
- }else {
+ System.out.println("run logs: " + run_logs_url);
+ if (run_logs_url.isEmpty()) {
+ Toast.makeText(getActivity(), "No run logs available", Toast.LENGTH_LONG)
+ .show();
+ } else {
new WorkflowDownloadManager(getActivity()).downloadWorkflow(
- new File(PreferenceManager.getDefaultSharedPreferences(getActivity()).getString(
- APP_DIRECTORY_NAME + "/Runoutput/logs/", "/TavernaMobile/Runoutput/logs")),
- new TavernaPlayerAPI(getActivity()).PLAYER_RUN_URL + run_logs_url.substring(0, 5));
+ new File(PreferenceManager.getDefaultSharedPreferences
+ (getActivity()).getString(
+ APP_DIRECTORY_NAME + "/Runoutput/logs/",
+ "/TavernaMobile/Runoutput/logs")),
+ new TavernaPlayerAPI(getActivity()).PLAYER_RUN_URL + run_logs_url
+ .substring(0, 5));
}
} catch (Exception e) {
e.printStackTrace();
- Toast.makeText(getActivity(), "Error downloading run logs",Toast.LENGTH_LONG).show();
+ Toast.makeText(getActivity(), "Error downloading run logs", Toast
+ .LENGTH_LONG).show();
}
break;
}
}
- public void updateRun(Context context, final JSONObject runInfo){
- if(null != runInfo)
- ((Activity)context).runOnUiThread(new Runnable() {
- @Override
- public void run() {
- try {
- runStartTime.setHint(runInfo.getString("start_time"));
- runEndTime.setHint(runInfo.getString("finish_time"));
- runStateTextView.setText(runInfo.getString("status_message"));
-
- if(runInfo.getString("status_message").contains("Pending"))
- status.setImageResource(android.R.drawable.presence_busy);
- else if (runInfo.getString("status_message").contains("Running"))
- status.setImageResource(android.R.drawable.presence_away);
- else if (runInfo.getString("status_message").contains("Finished"))
- status.setImageResource(android.R.drawable.presence_online);
- else if (runInfo.getString("status_message").contains("Failed"))
- status.setImageResource(android.R.drawable.presence_offline);
- else
- status.setImageResource(android.R.drawable.presence_invisible);
-
- run_output_url = runInfo.has("outputs_zip")? runInfo.getString("outputs_zip"):"";
- run_logs_url = runInfo.has("log")?runInfo.getString("log"):"";
- } catch (JSONException e) {
- e.printStackTrace();
+ public void updateRun(Context context, final JSONObject runInfo) {
+ if (null != runInfo)
+ ((Activity) context).runOnUiThread(new Runnable() {
+ @Override
+ public void run() {
+ try {
+ runStartTime.setHint(runInfo.getString("start_time"));
+ runEndTime.setHint(runInfo.getString("finish_time"));
+ runStateTextView.setText(runInfo.getString("status_message"));
+
+ if (runInfo.getString("status_message").contains("Pending"))
+ status.setImageResource(android.R.drawable.presence_busy);
+ else if (runInfo.getString("status_message").contains("Running"))
+ status.setImageResource(android.R.drawable.presence_away);
+ else if (runInfo.getString("status_message").contains("Finished"))
+ status.setImageResource(android.R.drawable.presence_online);
+ else if (runInfo.getString("status_message").contains("Failed"))
+ status.setImageResource(android.R.drawable.presence_offline);
+ else
+ status.setImageResource(android.R.drawable.presence_invisible);
+
+ run_output_url = runInfo.has("outputs_zip") ? runInfo.getString
+ ("outputs_zip") : "";
+ run_logs_url = runInfo.has("log") ? runInfo.getString("log") : "";
+ } catch (JSONException e) {
+ e.printStackTrace();
+ }
}
- }
- });
+ });
}
private class RunTimerTask extends TimerTask {
@@ -243,11 +255,13 @@ public class RunFragment extends Fragment implements View.OnClickListener{
@Override
public void run() {
- //QUERY player for the continuous status of the workflow run and update the ui with the results
+ //QUERY player for the continuous status of the workflow run and update the ui with
+ // the results
StringBuffer sb = new StringBuffer();
try {
- URL workflowurl = new URL(new TavernaPlayerAPI(this.context).PLAYER_RUN_URL+this.runid);
+ URL workflowurl = new URL(new TavernaPlayerAPI(this.context).PLAYER_RUN_URL +
+ this.runid);
HttpURLConnection connection = (HttpURLConnection) workflowurl.openConnection();
connection.setRequestProperty("Accept", "application/json");
@@ -259,7 +273,7 @@ public class RunFragment extends Fragment implements View.OnClickListener{
String jsonData = "";
while ((jsonData = br.readLine()) != null) {
- //json results of the full workflow details
+ //json results of the full workflow details
sb.append(jsonData);
}
dis.close();
@@ -269,7 +283,7 @@ public class RunFragment extends Fragment implements View.OnClickListener{
JSONObject runInfo = new JSONObject(sb.toString());
updateRun(this.context, runInfo);
- }catch (IOException ex){
+ } catch (IOException ex) {
ex.printStackTrace();
} catch (JSONException e) {
e.printStackTrace();
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/WorkflowAboutFragment.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/WorkflowAboutFragment.java b/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/WorkflowAboutFragment.java
index c8f1e64..1a8192d 100644
--- a/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/WorkflowAboutFragment.java
+++ b/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/WorkflowAboutFragment.java
@@ -2,10 +2,10 @@ package org.apache.taverna.mobile.fragments.workflowdetails;
/**
* Apache Taverna Mobile
* Copyright 2015 The Apache Software Foundation
-
+ *
* This product includes software developed at
* The Apache Software Foundation (http://www.apache.org/).
-
+ *
* 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
@@ -24,14 +24,14 @@ package org.apache.taverna.mobile.fragments.workflowdetails;
* under the License.
*/
+import org.apache.taverna.mobile.R;
+
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
-import org.apache.taverna.mobile.R;
-
/**
* A simple {@link Fragment} subclass.
* Use the {@link WorkflowAboutFragment#newInstance} factory method to
@@ -47,6 +47,9 @@ public class WorkflowAboutFragment extends Fragment {
private String mParam1;
private String mParam2;
+ public WorkflowAboutFragment() {
+ }
+
/**
* Use this factory method to create a new instance of
* this fragment using the provided parameters.
@@ -65,9 +68,6 @@ public class WorkflowAboutFragment extends Fragment {
return fragment;
}
- public WorkflowAboutFragment() {
- }
-
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/WorkflowLicenceFragment.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/WorkflowLicenceFragment.java b/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/WorkflowLicenceFragment.java
index 8226dc3..a4865b7 100644
--- a/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/WorkflowLicenceFragment.java
+++ b/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/WorkflowLicenceFragment.java
@@ -2,10 +2,10 @@ package org.apache.taverna.mobile.fragments.workflowdetails;
/**
* Apache Taverna Mobile
* Copyright 2015 The Apache Software Foundation
-
+ *
* This product includes software developed at
* The Apache Software Foundation (http://www.apache.org/).
-
+ *
* 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
@@ -24,14 +24,14 @@ package org.apache.taverna.mobile.fragments.workflowdetails;
* under the License.
*/
+import org.apache.taverna.mobile.R;
+
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
-import org.apache.taverna.mobile.R;
-
/**
* A simple {@link Fragment} subclass.
* Use the {@link WorkflowLicenceFragment#newInstance} factory method to
@@ -47,6 +47,10 @@ public class WorkflowLicenceFragment extends Fragment {
private String mParam1;
private String mParam2;
+ public WorkflowLicenceFragment() {
+ // Required empty public constructor
+ }
+
/**
* Use this factory method to create a new instance of
* this fragment using the provided parameters.
@@ -65,10 +69,6 @@ public class WorkflowLicenceFragment extends Fragment {
return fragment;
}
- public WorkflowLicenceFragment() {
- // Required empty public constructor
- }
-
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/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 7d9ffda..edc67f9 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
@@ -2,10 +2,10 @@ package org.apache.taverna.mobile.fragments.workflowdetails;
/**
* Apache Taverna Mobile
* Copyright 2015 The Apache Software Foundation
-
+ *
* This product includes software developed at
* The Apache Software Foundation (http://www.apache.org/).
-
+ *
* 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
@@ -24,6 +24,12 @@ package org.apache.taverna.mobile.fragments.workflowdetails;
* under the License.
*/
+import org.apache.taverna.mobile.R;
+import org.apache.taverna.mobile.adapters.RunAdapter;
+import org.apache.taverna.mobile.tavernamobile.Runs;
+import org.apache.taverna.mobile.tavernamobile.Workflow;
+import org.apache.taverna.mobile.utils.DetailsLoader;
+
import android.app.LoaderManager;
import android.app.ProgressDialog;
import android.content.Loader;
@@ -36,12 +42,6 @@ import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
-import org.apache.taverna.mobile.R;
-import org.apache.taverna.mobile.adapters.RunAdapter;
-import org.apache.taverna.mobile.tavernamobile.Runs;
-import org.apache.taverna.mobile.tavernamobile.Workflow;
-import org.apache.taverna.mobile.utils.DetailsLoader;
-
import java.util.ArrayList;
import java.util.List;
@@ -50,17 +50,21 @@ import java.util.List;
* Use the {@link WorkflowRunHistoryFragment#newInstance} factory method to
* create an instance of this fragment.
*/
-public class WorkflowRunHistoryFragment extends Fragment implements LoaderManager.LoaderCallbacks<Workflow>{
+public class WorkflowRunHistoryFragment extends Fragment implements LoaderManager
+ .LoaderCallbacks<Workflow> {
// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER
private static final String ARG_PARAM2 = "param2";
+ private static String workflowID; //represents a run name that matches the given workflow
+ List<Runs> runsList;
private ProgressDialog progressDialog;
private RecyclerView mRecyclerView;
private TextView emptyRunHistoryTextView;
private RunAdapter runAdapter;
- List<Runs> runsList;
- private static String workflowID; //represents a run name that matches the given workflow
+ public WorkflowRunHistoryFragment() {
+ // Required empty public constructor
+ }
/**
* Use this factory method to create a new instance of
@@ -78,14 +82,10 @@ public class WorkflowRunHistoryFragment extends Fragment implements LoaderManage
return fragment;
}
- public WorkflowRunHistoryFragment() {
- // Required empty public constructor
- }
-
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- runsList = new ArrayList<Runs>();
+ runsList = new ArrayList<Runs>();
/* runsList.add(new Runs("Test Run1 ",
SimpleDateFormat.getDateTimeInstance().format(new Date()).toString()
,SimpleDateFormat.getDateTimeInstance().format(new Date()).toString(),"failed"));
@@ -97,21 +97,21 @@ public class WorkflowRunHistoryFragment extends Fragment implements LoaderManage
progressDialog.setMessage(getActivity().getResources().getString(R.string.loading));
progressDialog.setCancelable(true);
- runAdapter = new RunAdapter(getActivity(),runsList );
- // System.out.println("WorkflowTitle->Run->"+workflowID);
+ runAdapter = new RunAdapter(getActivity(), runsList);
+ // System.out.println("WorkflowTitle->Run->"+workflowID);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
- View rootView =inflater.inflate(R.layout.fragment_workflow_run_history, container, false);
+ View rootView = inflater.inflate(R.layout.fragment_workflow_run_history, container, false);
emptyRunHistoryTextView = (TextView) rootView.findViewById(android.R.id.empty);
mRecyclerView = (RecyclerView) rootView.findViewById(android.R.id.list);
mRecyclerView.setHasFixedSize(true);
mRecyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));
- mRecyclerView.setAdapter(runAdapter);
- getActivity().getLoaderManager().initLoader(0,savedInstanceState,this).forceLoad();
+ mRecyclerView.setAdapter(runAdapter);
+ getActivity().getLoaderManager().initLoader(0, savedInstanceState, this).forceLoad();
return rootView;
}
@@ -125,7 +125,7 @@ public class WorkflowRunHistoryFragment extends Fragment implements LoaderManage
public void onResume() {
super.onResume();
- // mRecyclerView.setScrollingTouchSlop(RecyclerView.TOUCH_SLOP_PAGING);
+ // mRecyclerView.setScrollingTouchSlop(RecyclerView.TOUCH_SLOP_PAGING);
//getActivity().getLoaderManager().initLoader(1,null,this);
}
@@ -138,30 +138,30 @@ public class WorkflowRunHistoryFragment extends Fragment implements LoaderManage
public Loader<Workflow> onCreateLoader(int i, Bundle bundle) {
//progressDialog.show();
return new DetailsLoader(getActivity(),
- DetailsLoader.LOAD_TYPE.TYPE_RUN_HISTORY,
+ DetailsLoader.LoadType.TYPE_RUN_HISTORY,
workflowID);
}
@Override
public void onLoadFinished(Loader<Workflow> workflowLoader, Workflow workflow) {
- try {
- if (workflow.getWorkflow_runs() !=null | workflow.getWorkflow_runs().size() !=0) {
+ try {
+ if (workflow.getWorkflow_runs() != null | workflow.getWorkflow_runs().size() != 0) {
- runAdapter.setRunList(workflow.getWorkflow_runs());
- mRecyclerView.setAdapter(runAdapter);
- mRecyclerView.setVisibility(View.VISIBLE);
- emptyRunHistoryTextView.setVisibility(View.GONE);
+ runAdapter.setRunList(workflow.getWorkflow_runs());
+ mRecyclerView.setAdapter(runAdapter);
+ mRecyclerView.setVisibility(View.VISIBLE);
+ emptyRunHistoryTextView.setVisibility(View.GONE);
- } else {
- mRecyclerView.setVisibility(View.GONE);
- emptyRunHistoryTextView.setVisibility(View.VISIBLE);
+ } else {
+ mRecyclerView.setVisibility(View.GONE);
+ emptyRunHistoryTextView.setVisibility(View.VISIBLE);
+ }
+ } catch (NullPointerException np) {
+ np.printStackTrace();
}
- }catch(NullPointerException np){
- np.printStackTrace();
- }
- // progressDialog.dismiss();
+ // progressDialog.dismiss();
}
@Override
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/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 0449dd7..9f45d7f 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
@@ -2,10 +2,10 @@ package org.apache.taverna.mobile.fragments.workflowdetails;
/**
* Apache Taverna Mobile
* Copyright 2015 The Apache Software Foundation
-
+ *
* This product includes software developed at
* The Apache Software Foundation (http://www.apache.org/).
-
+ *
* 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
@@ -24,6 +24,26 @@ package org.apache.taverna.mobile.fragments.workflowdetails;
* under the License.
*/
+import com.dropbox.client2.DropboxAPI;
+import com.dropbox.client2.ProgressListener;
+import com.dropbox.client2.android.AndroidAuthSession;
+import com.dropbox.client2.exception.DropboxException;
+import com.dropbox.client2.session.AppKeyPair;
+
+import org.apache.taverna.mobile.R;
+import org.apache.taverna.mobile.activities.DashboardMainActivity;
+import org.apache.taverna.mobile.adapters.WorkflowAdapter;
+import org.apache.taverna.mobile.tavernamobile.TavernaPlayerAPI;
+import org.apache.taverna.mobile.tavernamobile.User;
+import org.apache.taverna.mobile.tavernamobile.Workflow;
+import org.apache.taverna.mobile.utils.DetailsLoader;
+import org.apache.taverna.mobile.utils.RunTask;
+import org.apache.taverna.mobile.utils.WorkflowDownloadManager;
+import org.apache.taverna.mobile.utils.WorkflowDB;
+import org.json.JSONArray;
+import org.json.JSONException;
+import org.json.JSONObject;
+
import android.app.Activity;
import android.app.AlertDialog;
import android.app.DownloadManager;
@@ -31,7 +51,6 @@ import android.app.LoaderManager;
import android.app.ProgressDialog;
import android.content.Context;
import android.content.DialogInterface;
-import android.content.Intent;
import android.content.Loader;
import android.content.SharedPreferences;
import android.content.res.Resources;
@@ -56,33 +75,10 @@ import android.widget.LinearLayout;
import android.widget.ScrollView;
import android.widget.TextView;
import android.widget.Toast;
-import android.widget.ZoomControls;
-
-import com.dropbox.client2.DropboxAPI;
-import com.dropbox.client2.ProgressListener;
-import com.dropbox.client2.android.AndroidAuthSession;
-import com.dropbox.client2.exception.DropboxException;
-import com.dropbox.client2.session.AppKeyPair;
-
-import org.apache.taverna.mobile.R;
-import org.apache.taverna.mobile.activities.DashboardMainActivity;
-import org.apache.taverna.mobile.activities.RunResult;
-import org.apache.taverna.mobile.adapters.WorkflowAdapter;
-import org.apache.taverna.mobile.tavernamobile.TavernaPlayerAPI;
-import org.apache.taverna.mobile.tavernamobile.User;
-import org.apache.taverna.mobile.tavernamobile.Workflow;
-import org.apache.taverna.mobile.utils.DetailsLoader;
-import org.apache.taverna.mobile.utils.RunTask;
-import org.apache.taverna.mobile.utils.WorkflowDownloadManager;
-import org.apache.taverna.mobile.utils.Workflow_DB;
-import org.json.JSONArray;
-import org.json.JSONException;
-import org.json.JSONObject;
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.File;
-import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
@@ -90,7 +86,6 @@ import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
-import java.nio.charset.CharsetEncoder;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
@@ -98,34 +93,38 @@ import java.util.Date;
/**
* Created by Larry Akah on 6/9/15.
*/
-public class WorkflowdetailFragment extends Fragment implements View.OnClickListener,LoaderManager.LoaderCallbacks<Workflow>{
+public class WorkflowdetailFragment extends Fragment implements View.OnClickListener,
+ LoaderManager.LoaderCallbacks<Workflow> {
/**
* The fragment argument representing the section number for this
* fragment.
*/
private static final String ARG_SECTION_NUMBER = "section_number";
- private DownloadManager downloadManager;
+ private static final String BOX_APP_KEY = "doicbvkfyzligh2";
+ private static final String BOX_APP_SECRET = "3uuuw36mm7jkflc";
+ public static String WORKFLO_ID = "";
+ public static Context cont;
+ public static String workflow_uri;
static View rootView;
+ static Animation zoomin;
+ static Animation zoomout;
+ static Workflow currentWorkflow = null;
private static ProgressDialog progressDialog;
- public AlertDialog runDialog;
- public AlertDialog.Builder alertDialogBuilder;
private static String download_url;
- public static String WORKFLO_ID = "";
- public static Context cont;
- SharedPreferences sharedPreferences;
private static boolean LOAD_STATE = false;
private static boolean DROPUPLOAD = false;
- static Animation zoomin;
- static Animation zoomout;
+ public AlertDialog runDialog;
+ public AlertDialog.Builder alertDialogBuilder;
public boolean isZoomIn;
- public static String workflow_uri ;
- final static private String BOX_APP_KEY = "doicbvkfyzligh2";
- final static private String BOX_APP_SECRET = "3uuuw36mm7jkflc";
- static Workflow currentWorkflow = null;
+ SharedPreferences sharedPreferences;
+ private DownloadManager downloadManager;
private long wid;
private DropboxAPI<AndroidAuthSession> mDBApi;
+ public WorkflowdetailFragment() {
+ }
+
/**
* Returns a new instance of this fragment for the given section
* number.
@@ -138,30 +137,114 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
return fragment;
}
- public static WorkflowdetailFragment getInstance(){
+ public static WorkflowdetailFragment getInstance() {
return WorkflowdetailFragment.getInstance();
}
- public WorkflowdetailFragment() {
+ public static void setWorkflowDetails(final Workflow wk) {
+ currentWorkflow = wk;
+ final TextView author = (TextView) rootView.findViewById(R.id.wkf_author_text);
+ //final TextView updated = (TextView) rootView.findViewById(R.id.wupdatedat);
+ final TextView type = (TextView) rootView.findViewById(R.id.wtype);
+ final TextView title = (TextView) rootView.findViewById(R.id.wtitle);
+ 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() {
+ //load necessary widgets
+
+ //set widget data
+ //Use android resources to insert text into placeholder
+ Resources resources = cont.getResources();
+ User uploader = wk.getUploader();
+ //String uploaderText = String.format(resources.getString(R.string
+ // .workflow_author), uploader != null ? uploader.getName():"Unknown");
+ author.setText((uploader != null) ? uploader.getName() : "Unknown");
+ title.setText(wk.getWorkflow_title());
+ if (wk.getWorkflow_description() != null) {
+ desc.setText(wk.getWorkflow_description());
+ } else {
+ //desc.setVisibility(View.INVISIBLE); //Not sure I trust this! Needs
+ // investigating.
+ }
+ String createdAtText = String.format(resources.getString(R.string.created), wk
+ .getWorkflow_datecreated());
+ createdat.setText(createdAtText);
+ //updated.setText("Workflow Description");
+ String typeText = String.format(resources.getString(R.string.workflow_type_text),
+ wk.getWorkflow_Type());
+ type.setText(typeText);
+
+ //preview.setImageURI(Uri.parse(wk.getWorkflow_preview()));
+ new LoadImageThread(preview, wk.getWorkflow_preview()).execute();
+ download_url = wk.getWorkflow_remote_url();
+ zoomin.setAnimationListener(new Animation.AnimationListener() {
+
+ @Override
+ public void onAnimationStart(Animation arg0) {
+ // TODO Auto-generated method stub
+ preview.startAnimation(zoomout);
+ }
+
+ @Override
+ public void onAnimationRepeat(Animation arg0) {
+ // TODO Auto-generated method stub
+
+ }
+
+ @Override
+ public void onAnimationEnd(Animation arg0) {
+ preview.startAnimation(zoomout);
+
+ }
+ });
+ zoomout.setAnimationListener(new Animation.AnimationListener() {
+
+ @Override
+ public void onAnimationStart(Animation arg0) {
+ // TODO Auto-generated method stub
+ preview.startAnimation(zoomin);
+ }
+
+ @Override
+ public void onAnimationRepeat(Animation arg0) {
+ // TODO Auto-generated method stub
+
+ }
+
+ @Override
+ public void onAnimationEnd(Animation arg0) {
+ preview.startAnimation(zoomin);
+
+ }
+ });
+ progressDialog.dismiss();
+ }
+ });
+ // preview.setOnClickListener(WorkflowdetailFragment.getInstance());
}
@Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
+ public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle
+ savedInstanceState) {
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);
isZoomIn = false;
- sharedPreferences = PreferenceManager.getDefaultSharedPreferences(getActivity());
+ sharedPreferences = PreferenceManager.getDefaultSharedPreferences(getActivity());
wid = getActivity().getIntent().getLongExtra("wid", 0);
Button createRun = (Button) rootView.findViewById(R.id.run_wk);
createRun.setOnClickListener(this);
@@ -171,31 +254,32 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
mark_workflow.setOnClickListener(this);
final String favs = sharedPreferences.getString(WorkflowAdapter.FAVORITE_LIST_DB, "");
String[] ids = favs.split(",");
- if(ids.length > 0) {
+ if (ids.length > 0) {
for (String id : ids)
- if (id.equalsIgnoreCase("" +wid )){
- mark_workflow.setBackgroundResource(R.drawable.abc_list_selector_disabled_holo_light);
+ if (id.equalsIgnoreCase("" + wid)) {
+ mark_workflow.setBackgroundResource(R.drawable
+ .abc_list_selector_disabled_holo_light);
break;
}
}
rootView.findViewById(R.id.saveToDropboxButton).setOnClickListener(this);
rootView.findViewById(R.id.saveToGoogleDriveButton).setOnClickListener(this);
- (rootView.findViewById(R.id.wkf_image)).setOnLongClickListener(new View.OnLongClickListener() {
+ (rootView.findViewById(R.id.wkf_image)).setOnLongClickListener(new View
+ .OnLongClickListener() {
@Override
public boolean onLongClick(View view) {
view.setAnimation(zoomin);
return true;
}
});
- downloadManager = (DownloadManager) getActivity().getSystemService(Context.DOWNLOAD_SERVICE);
+ downloadManager = (DownloadManager) getActivity().getSystemService(Context
+ .DOWNLOAD_SERVICE);
return rootView;
}
/**
* Called when a fragment is first attached to its activity.
* {@link #onCreate(android.os.Bundle)} will be called after this.
- *
- * @param activity
*/
//@Override
//public void onAttach(Activity activity) {
@@ -210,19 +294,23 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
@Override
public void onClick(View view) {
- switch(view.getId()){
+ switch (view.getId()) {
case R.id.run_wk:
- if (((TextView)rootView.findViewById(R.id.wtype)).getText().toString().contains("Taverna 2"))
+ if (((TextView) rootView.findViewById(R.id.wtype)).getText().toString().contains
+ ("Taverna 2"))
new WorkflowProcessTask(getActivity()).execute(download_url);
else
- Toast.makeText(getActivity(), "Sorry! Only Taverna 2 workflows can be run.", Toast.LENGTH_LONG).show();
+ Toast.makeText(getActivity(), "Sorry! Only Taverna 2 workflows can be run.",
+ Toast.LENGTH_LONG).show();
break;
case R.id.download_wk:
// start the android Download manager to start downloading a remote workflow file
- WorkflowDownloadManager dmgr = new WorkflowDownloadManager(getActivity(), downloadManager);
+ WorkflowDownloadManager dmgr = new WorkflowDownloadManager(getActivity(),
+ downloadManager);
try {
- dmgr.downloadWorkflow(new File(PreferenceManager.getDefaultSharedPreferences(getActivity()).getString(
- DashboardMainActivity.APP_DIRECTORY_NAME, "/")),
+ dmgr.downloadWorkflow(new File(PreferenceManager.getDefaultSharedPreferences
+ (getActivity()).getString(
+ DashboardMainActivity.APP_DIRECTORY_NAME, "/")),
download_url);
} catch (Exception e) {
e.printStackTrace();
@@ -241,19 +329,25 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
mfav.add(SimpleDateFormat.getDateTimeInstance().format(new Date()).toString());
mfav.add(currentWorkflow.getWorkflow_details_url());
mfav.add(((TextView) rootView.findViewById(R.id.wkf_author)).getText());
- int result = new Workflow_DB(getActivity(), WorkflowAdapter.WORKFLOW_FAVORITE_KEY).insert(mfav);
- if(result >0) {
- sharedPreferences.edit().putString(WorkflowAdapter.FAVORITE_LIST_DB, favs+wid+",").apply();
- Toast.makeText(getActivity(), "Workflow marked as favorite", Toast.LENGTH_SHORT).show();
- view.setBackgroundResource(R.drawable.abc_list_selector_disabled_holo_light);
-
- }else if(result == -1){
- Toast.makeText(getActivity(),"Sorry! This workflow has already been marked as a favourite",Toast.LENGTH_SHORT).show();
- }else
- Toast.makeText(getActivity(),"Error!, please try again",Toast.LENGTH_SHORT).show();
+ int result = new WorkflowDB(getActivity(), WorkflowAdapter
+ .WORKFLOW_FAVORITE_KEY).insert(mfav);
+ if (result > 0) {
+ sharedPreferences.edit().putString(WorkflowAdapter.FAVORITE_LIST_DB, favs +
+ wid + ",").apply();
+ Toast.makeText(getActivity(), "Workflow marked as favorite", Toast
+ .LENGTH_SHORT).show();
+ view.setBackgroundResource(R.drawable.abc_list_selector_disabled_holo_light);
+
+ } else if (result == -1) {
+ Toast.makeText(getActivity(), "Sorry! This workflow has already been marked " +
+ "as a favourite", Toast.LENGTH_SHORT).show();
+ } else
+ Toast.makeText(getActivity(), "Error!, please try again", Toast.LENGTH_SHORT)
+ .show();
break;
case R.id.saveToDropboxButton:
- String authToken = PreferenceManager.getDefaultSharedPreferences(getActivity()).getString("dropboxauth", "");
+ String authToken = PreferenceManager.getDefaultSharedPreferences(getActivity())
+ .getString("dropboxauth", "");
if (authToken.isEmpty())
mDBApi.getSession().startOAuth2Authentication(getActivity());
else {
@@ -275,8 +369,8 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
@Override
public void onResume() {
super.onResume();
- if(!LOAD_STATE)
- workflow_uri = getActivity().getIntent().getStringExtra("uri");
+ if (!LOAD_STATE)
+ workflow_uri = getActivity().getIntent().getStringExtra("uri");
getActivity().getLoaderManager().initLoader(1, null, this).forceLoad();
@@ -285,7 +379,8 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
// Required to complete auth, sets the access token on the session
mDBApi.getSession().finishAuthentication();
String accessToken = mDBApi.getSession().getOAuth2AccessToken();
- PreferenceManager.getDefaultSharedPreferences(getActivity()).edit().putString("dropboxauth", accessToken).commit();
+ PreferenceManager.getDefaultSharedPreferences(getActivity()).edit().putString
+ ("dropboxauth", accessToken).commit();
new WorkflowDriveUpload().execute(download_url);
} catch (IllegalStateException e) {
Log.i("DbAuthLog", "Error authenticating", e);
@@ -303,7 +398,7 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
public Loader<Workflow> onCreateLoader(int i, Bundle bundle) {
progressDialog.show();
return new DetailsLoader(getActivity(),
- DetailsLoader.LOAD_TYPE.TYPE_WORKFLOW_DETAIL,
+ DetailsLoader.LoadType.TYPE_WORKFLOW_DETAIL,
workflow_uri);
}
@@ -317,91 +412,29 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
workflowLoader.reset();
}
- public static void setWorkflowDetails(final Workflow wk){
- currentWorkflow = wk;
- final TextView author = (TextView) rootView.findViewById(R.id.wkf_author_text);
- //final TextView updated = (TextView) rootView.findViewById(R.id.wupdatedat);
- final TextView type = (TextView) rootView.findViewById(R.id.wtype);
- final TextView title = (TextView) rootView.findViewById(R.id.wtitle);
- 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() {
- //load necessary widgets
-
- //set widget data
- //Use android resources to insert text into placeholder
- Resources resources = cont.getResources();
- User uploader = wk.getUploader();
- //String uploaderText = String.format(resources.getString(R.string.workflow_author), uploader != null ? uploader.getName():"Unknown");
- author.setText((uploader != null) ? uploader.getName() : "Unknown");
- title.setText(wk.getWorkflow_title());
- if (wk.getWorkflow_description() != null) {
- desc.setText(wk.getWorkflow_description());
- } else {
- //desc.setVisibility(View.INVISIBLE); //Not sure I trust this! Needs investigating.
- }
- String createdAtText = String.format(resources.getString(R.string.created), wk.getWorkflow_datecreated());
- createdat.setText(createdAtText);
- //updated.setText("Workflow Description");
- String typeText = String.format(resources.getString(R.string.workflow_type_text), wk.getWorkflow_Type());
- type.setText(typeText);
-
- //preview.setImageURI(Uri.parse(wk.getWorkflow_preview()));
- new LoadImageThread(preview, wk.getWorkflow_preview()).execute();
- download_url =wk.getWorkflow_remote_url();
- zoomin.setAnimationListener(new Animation.AnimationListener() {
-
- @Override
- public void onAnimationStart(Animation arg0) {
- // TODO Auto-generated method stub
- preview.startAnimation(zoomout);
- }
-
- @Override
- public void onAnimationRepeat(Animation arg0) {
- // TODO Auto-generated method stub
-
- }
-
- @Override
- public void onAnimationEnd(Animation arg0) {
- preview.startAnimation(zoomout);
-
- }
- });
- zoomout.setAnimationListener(new Animation.AnimationListener() {
-
- @Override
- public void onAnimationStart(Animation arg0) {
- // TODO Auto-generated method stub
- preview.startAnimation(zoomin);
- }
-
- @Override
- public void onAnimationRepeat(Animation arg0) {
- // TODO Auto-generated method stub
-
- }
+ //create and return a new TextView
+ public TextView createTextView(Context mcontext, String placeholder) {
+ TextView tv = new TextView(mcontext);
+ tv.setText(placeholder);
+ tv.setMinLines(2);
- @Override
- public void onAnimationEnd(Animation arg0) {
- preview.startAnimation(zoomin);
+ return tv;
+ }
- }
- });
- progressDialog.dismiss();
- }
- });
- // preview.setOnClickListener(WorkflowdetailFragment.getInstance());
+ //create and return a new EdiText view
+ public EditText createEditText(Context ctx, int i) {
+ EditText edt;
+ edt = new EditText(ctx);
+ edt.setHint("Enter Value");
+ edt.setMinLines(1);
+ edt.setId(i);
+ return edt;
}
- private static class LoadImageThread extends AsyncTask<String, Void, Bitmap>{
- ImageView imageView;
- String src ;
+ private static class LoadImageThread extends AsyncTask<String, Void, Bitmap> {
+ ImageView imageView;
+ String src;
+
public LoadImageThread(ImageView image, String source) {
imageView = image;
src = source;
@@ -417,7 +450,7 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
connection.setDoInput(true);
connection.connect();
InputStream input = connection.getInputStream();
- myBitmap = BitmapFactory.decodeStream(input);
+ myBitmap = BitmapFactory.decodeStream(input);
// imageView.setImageBitmap(myBitmap);
} catch (IOException e) {
e.printStackTrace();
@@ -431,29 +464,11 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
}
}
- //create and return a new TextView
- public TextView createTextView(Context mcontext, String placeholder){
- TextView tv = new TextView(mcontext);
- tv.setText(placeholder);
- tv.setMinLines(2);
-
- return tv;
- }
-
- //create and return a new EdiText view
- public EditText createEditText(Context ctx, int i){
- EditText edt;
- edt = new EditText(ctx);
- edt.setHint("Enter Value");
- edt.setMinLines(1);
- edt.setId(i);
- return edt;
- }
//fetch and compute the framework on which the run inputs are to be built and entered
- private class WorkflowRunTask extends AsyncTask<String, Void, String>{
+ private class WorkflowRunTask extends AsyncTask<String, Void, String> {
- private Context context;
TavernaPlayerAPI tavernaPlayerAPI = new TavernaPlayerAPI();
+ private Context context;
private WorkflowRunTask(Context context) {
this.context = context;
@@ -471,10 +486,13 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
StringBuffer sb = new StringBuffer();
try {
- URL workflowurl = new URL(new TavernaPlayerAPI(this.context).PLAYER_RUN_FRAMEWORK_URL+params[0]);
+ URL workflowurl = new URL(new TavernaPlayerAPI(this.context)
+ .PLAYER_RUN_FRAMEWORK_URL + params[0]);
HttpURLConnection connection = (HttpURLConnection) workflowurl.openConnection();
- String userpass = tavernaPlayerAPI.getPlayerUserName(this.context) + ":" + tavernaPlayerAPI.getPlayerUserPassword(this.context);
- String basicAuth = "Basic " + Base64.encodeToString(userpass.getBytes(), Base64.DEFAULT);
+ 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");
@@ -497,7 +515,7 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
br.close();
return sb.toString();
- }catch (IOException ex){
+ } catch (IOException ex) {
ex.printStackTrace();
}
return sb.toString();
@@ -515,10 +533,11 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
try {
final JSONObject json = new JSONObject(result); //main server response json
JSONObject mjson = json.getJSONObject("run"); //main framework response json
- String name = mjson.getString("name"); //a name that can be configured or edited for the new run to be created
+ String name = mjson.getString("name"); //a name that can be configured or edited
+ // for the new run to be created
ll.addView(createTextView(ctx, name));
final JSONArray attr_array = mjson.getJSONArray("inputs_attributes");
- for(int i=0; i<attr_array.length(); i++){
+ for (int i = 0; i < attr_array.length(); i++) {
JSONObject obj = attr_array.getJSONObject(i);
ll.addView(createTextView(ctx, obj.getString("name")));
ll.addView(createEditText(ctx, i));
@@ -526,20 +545,25 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
alertDialogBuilder = new AlertDialog.Builder(ctx);
alertDialogBuilder.setView(sv);
- // alertDialogBuilder.setMessage(result);
+ // alertDialogBuilder.setMessage(result);
alertDialogBuilder.setIcon(ctx.getResources().getDrawable(R.mipmap.ic_launcher));
alertDialogBuilder.setTitle("New Workflow Run");
- alertDialogBuilder.setPositiveButton("Execute", new DialogInterface.OnClickListener() {
+ alertDialogBuilder.setPositiveButton("Execute", new DialogInterface
+ .OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
int n = attr_array.length();
- for(int j=0; j<n; j++){
+ for (int j = 0; j < n; j++) {
try {
EditText inputText = (EditText) ll.findViewById(j);
- String value = inputText.getText().toString();//get input entry entered by the user
- JSONObject jojb = attr_array.getJSONObject(j); //get the input attributes provided by the skeleton
- jojb.put("value", value); //replace value field in object with the entry provided by the user
- attr_array.put(j, jojb); //replace the input entry with the new name/input json object
+ String value = inputText.getText().toString(); //get input entry
+ // entered by the user
+ JSONObject jojb = attr_array.getJSONObject(j); //get the input
+ // attributes provided by the skeleton
+ jojb.put("value", value); //replace value field in object with
+ // the entry provided by the user
+ attr_array.put(j, jojb); //replace the input entry with the new
+ // name/input json object
} catch (JSONException e) {
e.printStackTrace();
@@ -553,13 +577,14 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
new RunTask(ctx).execute(json.toString());
} catch (JSONException e) {
e.printStackTrace();
- }catch (Exception ex){
+ } catch (Exception ex) {
ex.printStackTrace();
}
}
});
- alertDialogBuilder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
+ alertDialogBuilder.setNegativeButton("Cancel", new DialogInterface
+ .OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
@@ -579,16 +604,20 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
}
/**
- * Send request for the execution of a run on a Taverna server through the Taverna player using the Player API
- * This process passes through several steps,\n
- * 1- Downloading and caching a local version of the workflow whose run we need \n
- * 2- uploading the workflow through the portal to register it so a run can be generated from it. The request requires some authentication
- * 3- Retrieving the results and extracting data required to create a run (the workflow_id) as provided by the results
- * 4- Posting a run request to the player so that a new run can be created and started
- * 5- retrieving a run framework so that users can know what types of input is expected for a successful run
- * 6- retrieving and displaying run results
+ * Send request for the execution of a run on a Taverna server through the Taverna player using
+ * the Player API
+ * This process passes through several steps,\n
+ * 1- Downloading and caching a local version of the workflow whose run we need \n
+ * 2- uploading the workflow through the portal to register it so a run can be generated from
+ * it. The request requires some authentication
+ * 3- Retrieving the results and extracting data required to create a run (the workflow_id) as
+ * provided by the results
+ * 4- Posting a run request to the player so that a new run can be created and started
+ * 5- retrieving a run framework so that users can know what types of input is expected for a
+ * successful run
+ * 6- retrieving and displaying run results
*/
- private class WorkflowProcessTask extends AsyncTask<String, Void, String>{
+ private class WorkflowProcessTask extends AsyncTask<String, Void, String> {
private Context context;
@@ -607,56 +636,65 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
StringBuffer sb = new StringBuffer();
try {
//prepare connection requests
- URL workflowurl = new URL(params[0]); //the resource xml file representing the workflow to be uploaded to the player
- String playerurl = new TavernaPlayerAPI(this.context).PLAYER_BASE_URL+"workflows.json";
+ URL workflowurl = new URL(params[0]); //the resource xml file representing the
+ // workflow to be uploaded to the player
+ String playerurl = new TavernaPlayerAPI(this.context).PLAYER_BASE_URL +
+ "workflows.json";
TavernaPlayerAPI tavernaPlayerAPI = new TavernaPlayerAPI();
URL posturl = new URL(playerurl);
HttpURLConnection connection = (HttpURLConnection) posturl.openConnection();
HttpURLConnection wconn = (HttpURLConnection) workflowurl.openConnection();
- wconn.setRequestMethod("GET");
- wconn.setDoOutput(true);
- wconn.setRequestProperty("Accept", "application/xml");
- wconn.connect();
-
- String user = tavernaPlayerAPI.getPlayerUserName(this.context) + ":" + tavernaPlayerAPI.getPlayerUserPassword(this.context);
- String basicAuth = "Basic " + Base64.encodeToString(user.getBytes(), Base64.DEFAULT);
+ wconn.setRequestMethod("GET");
+ wconn.setDoOutput(true);
+ wconn.setRequestProperty("Accept", "application/xml");
+ wconn.connect();
+
+ String user = tavernaPlayerAPI.getPlayerUserName(this.context) + ":" +
+ tavernaPlayerAPI.getPlayerUserPassword(this.context);
+ String basicAuth = "Basic " + Base64.encodeToString(user.getBytes(), Base64
+ .DEFAULT);
//read the file from remote resource and encode the stream with a base64 algorithm
- BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(wconn.getInputStream()));
+ BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(wconn
+ .getInputStream()));
String str = "";
while ((str = bufferedReader.readLine()) != null)
- sb.append(str); //in this string builder we have read the workflow( as .t2flow or .xml) workflow from remote resource. Now we need to post that to the player.
+ sb.append(str); //in this string builder we have read the workflow( as
+ // .t2flow or .xml) workflow from remote resource. Now we need to post that to
+ // the player.
bufferedReader.close();
wconn.disconnect();
String data = "{\"document\":\"data:application/octet-stream;base64," +
- Base64.encodeToString(sb.toString().getBytes("UTF-8"), Base64.URL_SAFE|Base64.NO_WRAP).replace('-','+')+"\"}";
- String post = "{\"workflow\":"+data+"}";
+ Base64.encodeToString(sb.toString().getBytes("UTF-8"), Base64.URL_SAFE |
+ Base64.NO_WRAP).replace('-', '+') + "\"}";
+ String post = "{\"workflow\":" + data + "}";
//clear sb so that we can use it again to fetch results from this post request
- sb.delete(0,sb.length()-1);
- System.out.println("BODY=>"+post);
+ sb.delete(0, sb.length() - 1);
+ System.out.println("BODY=>" + post);
connection.setRequestMethod("POST");
connection.setRequestProperty("Authorization", basicAuth);
connection.setRequestProperty("Accept", "*/*");
connection.setRequestProperty("Content-Type", "application/json");
connection.setRequestProperty("Content-Encoding", "UTF-8");
- connection.setUseCaches (false);
+ connection.setUseCaches(false);
connection.setDoOutput(true);
connection.connect(); //send request
DataOutputStream dos = new DataOutputStream(connection.getOutputStream());
- dos.writeBytes(post);//write post data which is a formatted json data representing body of workflow
+ dos.writeBytes(post); //write post data which is a formatted json data
+ // representing body of workflow
dos.flush();
dos.close();
InputStream dis = connection.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(dis));
- while ((str = br.readLine())!= null)
+ while ((str = br.readLine()) != null)
sb.append(str);
connection.disconnect();
- }catch (IOException e){
+ } catch (IOException e) {
e.printStackTrace();
sb.append("Error reading remote workflow. Please try again later");
}
@@ -665,8 +703,11 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
}
/**
- * Receives a result from the player as a json describing the workflow that has just been uploaded along with key components that
- * can be used to generate a run from thw workflow. A run is started that would fetch and build a sample UI for a workflow run to be executed
+ * Receives a result from the player as a json describing the workflow that has just been
+ * uploaded along with key components that
+ * can be used to generate a run from thw workflow. A run is started that would fetch and
+ * build a sample UI for a workflow run to be executed
+ *
* @param s the json result that describes the uploaded workflow
*/
@Override
@@ -687,7 +728,7 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
/**
* Upload workflow from myexperiment to DropBox
*/
- private class WorkflowDriveUpload extends AsyncTask<String, Void, String>{
+ private class WorkflowDriveUpload extends AsyncTask<String, Void, String> {
@Override
protected void onPreExecute() {
Toast.makeText(getActivity(), "Saving workflow to dropBox", Toast.LENGTH_LONG).show();
@@ -695,9 +736,9 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
@Override
protected String doInBackground(String... files) {
- // File file = new File(files[0]);
- HttpURLConnection mconn ;
- // FileInputStream inputStream = null;
+ // File file = new File(files[0]);
+ HttpURLConnection mconn;
+ // FileInputStream inputStream = null;
DropboxAPI.Entry response = null;
DropboxAPI.Entry metaDataEntry = null;
try {
@@ -705,20 +746,23 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
mconn.setRequestMethod("GET");
mconn.connect();
- // inputStream = new FileInputStream(file);
+ // inputStream = new FileInputStream(file);
- response = mDBApi.putFile("/"+ Uri.parse(files[0]).getLastPathSegment(), mconn.getInputStream(),
+ response = mDBApi.putFile("/" + Uri.parse(files[0]).getLastPathSegment(), mconn
+ .getInputStream(),
mconn.getContentLength(), null, new ProgressListener() {
- @Override
- public void onProgress(long l, long l2) {
- if (l==l2){
- Toast.makeText(getActivity(), "Upload complete", Toast.LENGTH_LONG).show();
- }
- }
- });
+ @Override
+ public void onProgress(long l, long l2) {
+ if (l == l2) {
+ Toast.makeText(getActivity(), "Upload complete", Toast
+ .LENGTH_LONG).show();
+ }
+ }
+ });
Log.i("DbExampleLog", "The uploaded file's rev is: " + response.rev);
- // metaDataEntry = mDBApi.metadata("/"+Uri.parse(files[0]).getLastPathSegment(), 1, null, false, null);
+ // metaDataEntry = mDBApi.metadata("/"+Uri.parse(files[0]).getLastPathSegment(),
+ // 1, null, false, null);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (DropboxException e) {
@@ -734,12 +778,13 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
@Override
protected void onPostExecute(String s) {
- if(null != s) {
- Toast.makeText(getActivity(), "File Saved to dropbox. Reference: " + s, Toast.LENGTH_LONG).show();
+ if (null != s) {
+ Toast.makeText(getActivity(), "File Saved to dropbox. Reference: " + s, Toast
+ .LENGTH_LONG).show();
DROPUPLOAD = true;
- }
- else{
- Toast.makeText(getActivity(), "Failed to save to dropbox "+s, Toast.LENGTH_LONG).show();
+ } else {
+ Toast.makeText(getActivity(), "Failed to save to dropbox " + s, Toast
+ .LENGTH_LONG).show();
}
}
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/tavernamobile/Runs.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/Runs.java b/app/src/main/java/org/apache/taverna/mobile/tavernamobile/Runs.java
index 8eeba06..f2755a3 100644
--- a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/Runs.java
+++ b/app/src/main/java/org/apache/taverna/mobile/tavernamobile/Runs.java
@@ -12,16 +12,16 @@ public class Runs {
private String run_ended_date;
private String state;
private String run_author;
- public static enum RUN_STATE { FAILED,FINISHED,RUNNING};
-
public Runs(String run_name, String run_started_date, String run_ended_date, String state) {
this.run_name = run_name;
this.run_started_date = run_started_date;
this.run_ended_date = run_ended_date;
- this.state=state;
+ this.state = state;
}
+ ;
+
public long getRun_id() {
return run_id;
}
@@ -38,13 +38,13 @@ public class Runs {
this.run_workflow_id = run_workflow_id;
}
- public RUN_STATE getState() {
- if(state.equalsIgnoreCase("finished"))
- return RUN_STATE.FINISHED;
+ public RunState getState() {
+ if (state.equalsIgnoreCase("finished"))
+ return RunState.FINISHED;
else if (state.equalsIgnoreCase("failed"))
- return RUN_STATE.FAILED;
+ return RunState.FAILED;
else
- return RUN_STATE.RUNNING;
+ return RunState.RUNNING;
}
public void setState(String state) {
@@ -82,4 +82,6 @@ public class Runs {
public void setRun_ended_date(String run_ended_date) {
this.run_ended_date = run_ended_date;
}
+
+ public static enum RunState { FAILED, FINISHED, RUNNING }
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/tavernamobile/TavernaPlayerAPI.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/TavernaPlayerAPI.java b/app/src/main/java/org/apache/taverna/mobile/tavernamobile/TavernaPlayerAPI.java
index 638094b..41f392a 100644
--- a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/TavernaPlayerAPI.java
+++ b/app/src/main/java/org/apache/taverna/mobile/tavernamobile/TavernaPlayerAPI.java
@@ -2,10 +2,10 @@ package org.apache.taverna.mobile.tavernamobile;
/**
* Apache Taverna Mobile
* Copyright 2015 The Apache Software Foundation
-
+ *
* This product includes software developed at
* The Apache Software Foundation (http://www.apache.org/).
-
+ *
* 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
@@ -23,6 +23,7 @@ package org.apache.taverna.mobile.tavernamobile;
* specific language governing permissions and limitations
* under the License.
*/
+
import android.content.Context;
import android.preference.PreferenceManager;
@@ -35,23 +36,28 @@ public class TavernaPlayerAPI {
public static String PLAYER_BASE_URL = "http://heater.cs.man.ac.uk:3000/";
public static String SERVER_BASE_URL = "http://heater.cs.man.ac.uk:8090/taverna-2.5.4/";
- public static String PLAYER_WORKFLOW_URL = PLAYER_BASE_URL+"workflows/";
- public static String PLAYER_RUN_URL = PLAYER_BASE_URL+"runs/";
- public static String PLAYER_RUN_FRAMEWORK_URL = PLAYER_RUN_URL+"new?workflow_id="; //returns a json 'framework' used for creating runs for the given workflow
+ public static String PLAYER_WORKFLOW_URL = PLAYER_BASE_URL + "workflows/";
+ public static String PLAYER_RUN_URL = PLAYER_BASE_URL + "runs/";
+ public static String PLAYER_RUN_FRAMEWORK_URL = PLAYER_RUN_URL + "new?workflow_id=";
+ //returns a json 'framework' used for creating runs for the given workflow
public TavernaPlayerAPI(Context context) {
- String server = PreferenceManager.getDefaultSharedPreferences(context).getString("pref_server_url","/");
- String player = PreferenceManager.getDefaultSharedPreferences(context).getString("pref_player_url","/");
- String user = PreferenceManager.getDefaultSharedPreferences(context).getString("pref_player_url","/");
- String password = PreferenceManager.getDefaultSharedPreferences(context).getString("pref_player_url","/");
+ String server = PreferenceManager.getDefaultSharedPreferences(context).getString
+ ("pref_server_url", "/");
+ String player = PreferenceManager.getDefaultSharedPreferences(context).getString
+ ("pref_player_url", "/");
+ String user = PreferenceManager.getDefaultSharedPreferences(context).getString
+ ("pref_player_url", "/");
+ String password = PreferenceManager.getDefaultSharedPreferences(context).getString
+ ("pref_player_url", "/");
PLAYER_BASE_URL = player;
SERVER_BASE_URL = server;
- PLAYER_WORKFLOW_URL = PLAYER_BASE_URL+"workflows/";
- PLAYER_RUN_URL = PLAYER_BASE_URL+"runs/";
- PLAYER_RUN_FRAMEWORK_URL = PLAYER_RUN_URL+"new?workflow_id=";
+ PLAYER_WORKFLOW_URL = PLAYER_BASE_URL + "workflows/";
+ PLAYER_RUN_URL = PLAYER_BASE_URL + "runs/";
+ PLAYER_RUN_FRAMEWORK_URL = PLAYER_RUN_URL + "new?workflow_id=";
}
- public TavernaPlayerAPI(){
+ public TavernaPlayerAPI() {
}
@@ -75,15 +81,16 @@ public class TavernaPlayerAPI {
return PLAYER_RUN_FRAMEWORK_URL;
}
- public String getPlayerUserName(Context c){
- return PreferenceManager.getDefaultSharedPreferences(c).getString("pref_user","default");
+ public String getPlayerUserName(Context c) {
+ return PreferenceManager.getDefaultSharedPreferences(c).getString("pref_user", "default");
}
- public String getPlayerUserPassword(Context c){
- return PreferenceManager.getDefaultSharedPreferences(c).getString("pref_password","default");
+ public String getPlayerUserPassword(Context c) {
+ return PreferenceManager.getDefaultSharedPreferences(c).getString("pref_password",
+ "default");
}
- public static class Authenticator extends java.net.Authenticator{
+ public static class Authenticator extends java.net.Authenticator {
private String username, password;
public Authenticator(String username, String password) {
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/tavernamobile/User.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/User.java b/app/src/main/java/org/apache/taverna/mobile/tavernamobile/User.java
index 09ca6e5..9d85682 100644
--- a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/User.java
+++ b/app/src/main/java/org/apache/taverna/mobile/tavernamobile/User.java
@@ -2,10 +2,10 @@ package org.apache.taverna.mobile.tavernamobile;
/**
* Apache Taverna Mobile
* Copyright 2015 The Apache Software Foundation
-
+ *
* This product includes software developed at
* The Apache Software Foundation (http://www.apache.org/).
-
+ *
* 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
@@ -24,11 +24,11 @@ package org.apache.taverna.mobile.tavernamobile;
* under the License.
*/
-import android.graphics.Bitmap;
-
import org.apache.taverna.mobile.adapters.WorkflowAdapter;
import org.simpleframework.xml.Element;
+import android.graphics.Bitmap;
+
import java.util.List;
/**
@@ -56,11 +56,13 @@ public class User {
@Element(required = false)
protected String website;
protected String details_uri;
+ protected List<Workflow> user_workflows; //a list of workflows owned by this user
private String avatar_url;
- private String row_id; //identifies the row to which this user is being loaded in, in the workflow listview
+ private String row_id; //identifies the row to which this user is being loaded in, in the
+ // workflow listview
private WorkflowAdapter.ViewHolder userViewHolder;
- public User(String rid, WorkflowAdapter.ViewHolder vh){
+ public User(String rid, WorkflowAdapter.ViewHolder vh) {
super();
row_id = rid;
this.userViewHolder = vh;
@@ -78,8 +80,6 @@ public class User {
return this.row_id;
}
- protected List<Workflow> user_workflows; //a list of workflows owned by this user
-
public void setId(String id) {
this.id = id;
}
@@ -165,7 +165,7 @@ public class User {
}
@Override
- public String toString(){
+ public String toString() {
return "This is the user object";
}
}
[03/18] incubator-taverna-mobile git commit: refactor code using
CheckStyle
Posted by st...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowLoader.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowLoader.java b/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowLoader.java
index d4957de..c98f0f5 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowLoader.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowLoader.java
@@ -2,10 +2,10 @@ package org.apache.taverna.mobile.utils;
/**
* Apache Taverna Mobile
* Copyright 2015 The Apache Software Foundation
-
+ *
* This product includes software developed at
* The Apache Software Foundation (http://www.apache.org/).
-
+ *
* 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
@@ -23,10 +23,6 @@ package org.apache.taverna.mobile.utils;
* specific language governing permissions and limitations
* under the License.
*/
-import android.content.Context;
-import android.os.AsyncTask;
-import android.support.v4.widget.SwipeRefreshLayout;
-import android.util.Log;
import com.thebuzzmedia.sjxp.rule.IRule;
@@ -34,6 +30,11 @@ import org.apache.taverna.mobile.tavernamobile.Workflow;
import org.apache.taverna.mobile.utils.xmlparsers.MyExperimentXmlParserRules;
import org.apache.taverna.mobile.utils.xmlparsers.WorkflowParser;
+import android.content.Context;
+import android.os.AsyncTask;
+import android.support.v4.widget.SwipeRefreshLayout;
+import android.util.Log;
+
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
@@ -46,7 +47,7 @@ import java.util.List;
/**
* Created by Larry Akah on 6/13/15.
*/
-public class WorkflowLoader extends AsyncTask<String, Object, Object>{ //WorkflowLoaderMain {
+public class WorkflowLoader extends AsyncTask<String, Object, Object> { //WorkflowLoaderMain {
private Context ctx;
private List<Workflow> userWorkflows;
@@ -68,26 +69,29 @@ public class WorkflowLoader extends AsyncTask<String, Object, Object>{ //Workflo
public List<Workflow> doInBackground(String[] pages) {
//start a network request to fetch user's workflows
- IRule wkflowRule = new MyExperimentXmlParserRules.WorkflowRule(IRule.Type.ATTRIBUTE, "/workflows/workflow", "resource", "uri","id", "version");
- IRule workflowNameRule = new MyExperimentXmlParserRules.WorkflowRule(IRule.Type.CHARACTER, "/workflows/workflow");
+ IRule wkflowRule = new MyExperimentXmlParserRules.WorkflowRule(IRule.Type.ATTRIBUTE,
+ "/workflows/workflow", "resource", "uri", "id", "version");
+ IRule workflowNameRule = new MyExperimentXmlParserRules.WorkflowRule(IRule.Type
+ .CHARACTER, "/workflows/workflow");
WorkflowParser xmlParser = new WorkflowParser(new IRule[]{wkflowRule, workflowNameRule});
try {
- URL workflowurl = new URL("http://www.myexperiment.org/workflows.xml?page="+Integer.parseInt((pages[0])));
+ URL workflowurl = new URL("http://www.myexperiment.org/workflows.xml?page=" + Integer
+ .parseInt((pages[0])));
HttpURLConnection connection = (HttpURLConnection) workflowurl.openConnection();
connection.setRequestMethod("GET");
connection.connect(); //send request
- Log.i("WorkflowLoader","Loading workflows page = "+pages[0]);
+ Log.i("WorkflowLoader", "Loading workflows page = " + pages[0]);
InputStream dis = connection.getInputStream();
xmlParser.parse(dis, this.userWorkflows);
- }catch (MalformedURLException e) {
+ } catch (MalformedURLException e) {
e.printStackTrace();
} catch (ProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
- }catch (Exception ex){
+ } catch (Exception ex) {
ex.printStackTrace();
}
return this.userWorkflows;
@@ -96,6 +100,6 @@ public class WorkflowLoader extends AsyncTask<String, Object, Object>{ //Workflo
@Override
protected void onPostExecute(Object o) {
refreshLayout.setRefreshing(false);
- System.out.println("Workflow Count: "+this.userWorkflows.size());
+ System.out.println("Workflow Count: " + this.userWorkflows.size());
}
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowLoaderMain.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowLoaderMain.java b/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowLoaderMain.java
index 41c650d..bb56ec9 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowLoaderMain.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowLoaderMain.java
@@ -2,10 +2,10 @@ package org.apache.taverna.mobile.utils;
/**
* Apache Taverna Mobile
* Copyright 2015 The Apache Software Foundation
-
+ *
* This product includes software developed at
* The Apache Software Foundation (http://www.apache.org/).
-
+ *
* 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
@@ -23,11 +23,12 @@ package org.apache.taverna.mobile.utils;
* specific language governing permissions and limitations
* under the License.
*/
-import android.content.AsyncTaskLoader;
-import android.content.Context;
import org.apache.taverna.mobile.tavernamobile.Workflow;
+import android.content.AsyncTaskLoader;
+import android.content.Context;
+
import java.util.List;
/**
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowOpen.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowOpen.java b/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowOpen.java
index eae8479..b54124b 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowOpen.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowOpen.java
@@ -4,6 +4,12 @@ package org.apache.taverna.mobile.utils;
* Created by Larry Akah on 7/11/15.
*/
+import org.apache.taverna.mobile.R;
+import org.apache.taverna.mobile.tavernamobile.TavernaPlayerAPI;
+import org.json.JSONArray;
+import org.json.JSONException;
+import org.json.JSONObject;
+
import android.app.AlertDialog;
import android.app.ProgressDialog;
import android.content.Context;
@@ -16,12 +22,6 @@ import android.widget.LinearLayout;
import android.widget.ScrollView;
import android.widget.TextView;
-import org.apache.taverna.mobile.R;
-import org.apache.taverna.mobile.tavernamobile.TavernaPlayerAPI;
-import org.json.JSONArray;
-import org.json.JSONException;
-import org.json.JSONObject;
-
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.File;
@@ -33,27 +33,27 @@ import java.net.HttpURLConnection;
import java.net.URL;
/**
- *Read the selected xml file from storage and upload to player to generate workflowRun
+ * Read the selected xml file from storage and upload to player to generate workflowRun
*/
public class WorkflowOpen extends AsyncTask<String, Void, String> {
+ TavernaPlayerAPI tavernaPlayerAPI = new TavernaPlayerAPI();
private Context context;
private ProgressDialog progressDialog;
- TavernaPlayerAPI tavernaPlayerAPI = new TavernaPlayerAPI();
public WorkflowOpen(Context context) {
this.context = context;
progressDialog = new ProgressDialog(this.context);
}
- @Override
- protected void onPreExecute() {
- progressDialog.setMessage("Uploading Workflow ... ");
- progressDialog.show();
- }
+ @Override
+ protected void onPreExecute() {
+
+ progressDialog.setMessage("Uploading Workflow ... ");
+ progressDialog.show();
+ }
/**
- *
* @param params path to workflow file to upload to player
* @return run framework used to create a new workflow run
*/
@@ -63,13 +63,16 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
String str = "";
try {
- //prepare connection requests
- File objectFile = new File(params[0]); //the resource xml file representing the workflow to be uploaded to the player
- String playerurl = new TavernaPlayerAPI(this.context).PLAYER_BASE_URL+"workflows.json";
+ //prepare connection requests
+ File objectFile = new File(params[0]); //the resource xml file representing the
+ // workflow to be uploaded to the player
+ String playerurl = new TavernaPlayerAPI(this.context).PLAYER_BASE_URL + "workflows" +
+ ".json";
URL posturl = new URL(playerurl);
HttpURLConnection connection = (HttpURLConnection) posturl.openConnection();
- String user = tavernaPlayerAPI.getPlayerUserName(this.context) + ":" + tavernaPlayerAPI.getPlayerUserPassword(this.context);
+ String user = tavernaPlayerAPI.getPlayerUserName(this.context) + ":" +
+ tavernaPlayerAPI.getPlayerUserPassword(this.context);
String basicAuth = "Basic " + Base64.encodeToString(user.getBytes(), Base64.DEFAULT);
//read the file from remote resource and encode the stream with a base64 algorithm
@@ -81,41 +84,42 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
sb.append('\n');
}
br.close();
- }
- catch (IOException e) {
+ } catch (IOException e) {
e.printStackTrace();
}
String data = "{\"document\":\"data:application/octet-stream;base64," +
- Base64.encodeToString(sb.toString().getBytes("UTF-8"), Base64.URL_SAFE|Base64.NO_WRAP).replace('-','+')+"\"}";
- String post = "{\"workflow\":"+data+"}";
+ Base64.encodeToString(sb.toString().getBytes("UTF-8"), Base64.URL_SAFE |
+ Base64.NO_WRAP).replace('-', '+') + "\"}";
+ String post = "{\"workflow\":" + data + "}";
//clear sb so that we can use it again to fetch results from this post request
- sb.delete(0,sb.length()-1);
- System.out.println("BODY=>"+post);
+ sb.delete(0, sb.length() - 1);
+ System.out.println("BODY=>" + post);
connection.setRequestMethod("POST");
connection.setRequestProperty("Authorization", basicAuth);
connection.setRequestProperty("Accept", "*/*");
connection.setRequestProperty("Content-Type", "application/json");
connection.setRequestProperty("Content-Encoding", "UTF-8");
- connection.setUseCaches (false);
+ connection.setUseCaches(false);
connection.setDoOutput(true);
connection.connect(); //send request
DataOutputStream dos = new DataOutputStream(connection.getOutputStream());
- dos.writeBytes(post);//write post data which is a formatted json data representing body of workflow
+ dos.writeBytes(post); //write post data which is a formatted json data representing
+ // body of workflow
dos.flush();
dos.close();
InputStream dis = connection.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(dis));
- while ((str = br.readLine())!= null)
+ while ((str = br.readLine()) != null)
sb.append(str);
- System.out.println("Post Response Code: "+connection.getResponseCode());
- System.out.println("Post response message: "+connection.getResponseMessage());
+ System.out.println("Post Response Code: " + connection.getResponseCode());
+ System.out.println("Post response message: " + connection.getResponseMessage());
connection.disconnect();
- }catch (IOException e){
+ } catch (IOException e) {
e.printStackTrace();
sb.append("Error reading remote workflow. Please try again later");
}
@@ -124,13 +128,16 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
}
/**
- * Receives a result from the player as a json describing the workflow that has just been uploaded along with key components that
- * can be used to generate a run from thw workflow. A run is started that would fetch and build a sample UI for a workflow run to be executed
+ * Receives a result from the player as a json describing the workflow that has just been
+ * uploaded along with key components that
+ * can be used to generate a run from thw workflow. A run is started that would fetch and build
+ * a sample UI for a workflow run to be executed
+ *
* @param s the json result that describes the uploaded workflow
*/
@Override
protected void onPostExecute(String s) {
- progressDialog.dismiss();
+ progressDialog.dismiss();
System.out.println(s);
s = s.substring(1, s.length());
try {
@@ -144,7 +151,7 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
}
//create and return a new TextView
- public TextView createTextView(Context mcontext, String placeholder){
+ public TextView createTextView(Context mcontext, String placeholder) {
TextView tv = new TextView(mcontext);
tv.setText(placeholder);
tv.setMinLines(2);
@@ -153,7 +160,7 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
}
//create and return a new EdiText view
- public EditText createEditText(Context ctx, int i){
+ public EditText createEditText(Context ctx, int i) {
EditText edt;
edt = new EditText(ctx);
edt.setHint("Enter Value");
@@ -162,7 +169,7 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
return edt;
}
- private class WorkflowRunTask extends AsyncTask<String, Void, String>{
+ private class WorkflowRunTask extends AsyncTask<String, Void, String> {
private Context context;
private AlertDialog.Builder alertDialogBuilder;
@@ -184,10 +191,13 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
StringBuffer sb = new StringBuffer();
try {
- URL workflowurl = new URL(new TavernaPlayerAPI(this.context).PLAYER_RUN_FRAMEWORK_URL+params[0]);
+ URL workflowurl = new URL(new TavernaPlayerAPI(this.context)
+ .PLAYER_RUN_FRAMEWORK_URL + params[0]);
HttpURLConnection connection = (HttpURLConnection) workflowurl.openConnection();
- String userpass = tavernaPlayerAPI.getPlayerUserName(this.context) + ":" + tavernaPlayerAPI.getPlayerUserPassword(this.context);
- String basicAuth = "Basic " + Base64.encodeToString(userpass.getBytes(), Base64.DEFAULT);
+ 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");
@@ -208,7 +218,7 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
br.close();
return sb.toString();
- }catch (IOException ex){
+ } catch (IOException ex) {
ex.printStackTrace();
}
return sb.toString();
@@ -226,10 +236,11 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
try {
final JSONObject json = new JSONObject(result); //main server response json
JSONObject mjson = json.getJSONObject("run"); //main framework response json
- String name = mjson.getString("name"); //a name that can be configured or edited for the new run to be created
+ String name = mjson.getString("name"); //a name that can be configured or edited
+ // for the new run to be created
ll.addView(createTextView(ctx, name));
final JSONArray attr_array = mjson.getJSONArray("inputs_attributes");
- for(int i=0; i<attr_array.length(); i++){
+ for (int i = 0; i < attr_array.length(); i++) {
JSONObject obj = attr_array.getJSONObject(i);
ll.addView(createTextView(ctx, obj.getString("name")));
ll.addView(createEditText(ctx, i));
@@ -240,17 +251,22 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
// alertDialogBuilder.setMessage(result);
alertDialogBuilder.setIcon(ctx.getResources().getDrawable(R.mipmap.ic_launcher));
alertDialogBuilder.setTitle("New Workflow Run");
- alertDialogBuilder.setPositiveButton("Execute", new DialogInterface.OnClickListener() {
+ alertDialogBuilder.setPositiveButton("Execute", new DialogInterface
+ .OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
int n = attr_array.length();
- for(int j=0; j<n; j++){
+ for (int j = 0; j < n; j++) {
try {
EditText inputText = (EditText) ll.findViewById(j);
- String value = inputText.getText().toString();//get input entry entered by the user
- JSONObject jojb = attr_array.getJSONObject(j); //get the input attributes provided by the skeleton
- jojb.put("value", value); //replace value field in object with the entry provided by the user
- attr_array.put(j, jojb); //replace the input entry with the new name/input json object
+ String value = inputText.getText().toString(); //get input entry
+ // entered by the user
+ JSONObject jojb = attr_array.getJSONObject(j); //get the input
+ // attributes provided by the skeleton
+ jojb.put("value", value); //replace value field in object with
+ // the entry provided by the user
+ attr_array.put(j, jojb); //replace the input entry with the new
+ // name/input json object
} catch (JSONException e) {
e.printStackTrace();
@@ -268,7 +284,8 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
}
});
- alertDialogBuilder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
+ alertDialogBuilder.setNegativeButton("Cancel", new DialogInterface
+ .OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/utils/Workflow_DB.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/Workflow_DB.java b/app/src/main/java/org/apache/taverna/mobile/utils/Workflow_DB.java
deleted file mode 100644
index 0394841..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/utils/Workflow_DB.java
+++ /dev/null
@@ -1,307 +0,0 @@
-package org.apache.taverna.mobile.utils;
-/**
- * Apache Taverna Mobile
- * Copyright 2015 The Apache Software Foundation
-
- * This product includes software developed at
- * The Apache Software Foundation (http://www.apache.org/).
-
- * 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.
- */
-import java.util.ArrayList;
-import java.util.List;
-import java.util.UUID;
-
-import org.json.JSONArray;
-import org.json.JSONException;
-import org.json.JSONObject;
-
-import android.content.Context;
-import android.content.SharedPreferences;
-import android.preference.PreferenceManager;
-import android.util.Log;
-
-/**
- * @author Larry Akah
- * @version 1.0.0
- * This class is developed as a means to simplify the code base of the initial json_db implementation.
- * It aims at using fully the java JSON API available to implement the CRUD functionality of the json_db library.
- * This class is much more scalable and light-weight than the first implementation
- */
-public class Workflow_DB {
-
- private String ENTITY_KEY;
- private Context context;
- private SharedPreferences msharedpreference;
- private ArrayList<String> ITEM_IDS;
- private final String LIBTAG = getClass().getName();
- private JSONObject DBJSON;
- private JSONObject dataobj; //hold all entries for a given ENTITY_KEY
-
- /**
- * Constructor initializes a basic data store environment
- * @param ctx a reference to the application's context or sand box
- * @param entityKey The main data store key for each entity space/schema
- */
- public Workflow_DB(Context ctx, String entityKey){
- context = ctx;
- ENTITY_KEY = entityKey;
- DBJSON = new JSONObject();
- ITEM_IDS = new ArrayList<String>();
- dataobj = DBJSON;
- }
-
- /**
- * Inserts an entity set('row') into the data store
- * @param items values for each 'column' in the entity
- * @return the same instance for chaining multiple calls to this method.
- * @throws org.json.JSONException
- */
- public Workflow_DB put(ArrayList<Object> items) throws JSONException{
-
- String item_id = this.generateRandomId();
- ITEM_IDS.add(item_id);
- JSONArray jarray = new JSONArray();
- for(Object item: items){
- jarray.put(item);
- }
- dataobj.put(item_id, jarray);
- return this;
- }
-
- /**
- * Returns all entity entries from the data store. Each item of an entity is accompanied with the key or unique id of the items.
- * @author Larry Akah
- * @throws org.json.JSONException for errors during construction of a JSON data string.
- * @throws NullPointerException for any null accessed variable
- */
- public List<ArrayList<Object>> get() throws JSONException , NullPointerException{
- msharedpreference = PreferenceManager.getDefaultSharedPreferences(context);
- //read key and get existing data
- List<ArrayList<Object>> results = new ArrayList<ArrayList<Object>>();
- JSONObject mainJson = new JSONObject(msharedpreference.getString(ENTITY_KEY, "{"+ENTITY_KEY+":{}}"));
-
- Log.i(ENTITY_KEY, mainJson.toString(2));
-
- JSONArray keysJson = mainJson.getJSONArray("ids"); //retrieve a json array of ids for every entity entry
- Log.i(ENTITY_KEY, keysJson.toString(2));
-
- if(null != keysJson)
- for(int i=0; i<keysJson.length(); i++){
- //for each key, get the associated data
- try {
- JSONArray resultArray = mainJson.getJSONArray(keysJson.getString(i));
- ArrayList<Object> mlist = new ArrayList<Object>();
- if(null != resultArray)
- for(int j=0; j<resultArray.length(); j++){
- mlist.add(resultArray.getString(j));
-
- }
- mlist.add(keysJson.getString(i)); // adds the entry key as last value of the data returned
- results.add(mlist);
- } catch (Exception e) {
- e.printStackTrace();
- continue;
- }
- }
- return results;
- }
-
- /**
- * updates a single item entry of an entity
- * @param itemId provides the id of the item to be updated
- * @param newItem the new set of data to be used to update the entry
- * @return boolean indicating whether the item was successfully updated or not. True means item was updated, false means otherwise.
- */
- public boolean update(String itemId, ArrayList<Object> newItem){
- boolean operationSucceeded = false;
-
- JSONArray jarray = new JSONArray();
- for(Object item: newItem){
- jarray.put(item);
- }
- try {
- dataobj.put(itemId, jarray); //replace the current entry at the given ID.
- Log.d(LIBTAG, ""+dataobj.toString(2));
- operationSucceeded = true;
- } catch (JSONException e) {
- e.printStackTrace();
- operationSucceeded = false;
- }finally{
- return operationSucceeded;
- }
- }
-
- /**
- * Updates all the items of a given entity
- * @return the number of items successfully updated.
- */
- public int updateAll(List<ArrayList<String>> items){
- return 0;
- }
-
- /**
- * Gets an entry of an entity from the data store
- * @author Larry Akah
- * @param id The id of the item('row') in question to return
- * @throws org.json.JSONException for errors during construction of a JSON data string.
- * @throws NullPointerException for any null accessed variable
- */
- public ArrayList<Object> get(String id) throws JSONException , NullPointerException{
- msharedpreference = PreferenceManager.getDefaultSharedPreferences(context);
- //read key and get existing data
- ArrayList<Object> results = new ArrayList<Object>();
- JSONObject mainJson = new JSONObject(msharedpreference.getString(ENTITY_KEY, ENTITY_KEY+":{}"));
-
- Log.i(ENTITY_KEY, mainJson.toString(2));
-
- JSONArray keysJson = mainJson.getJSONArray("ids"); //retrieve a json array of ids for every entity entry
- Log.i(ENTITY_KEY, keysJson.toString(2));
-
- if(null != keysJson)
- for(int i=0; i<keysJson.length(); i++){
- //for each key, get the associated data
- try {
- JSONArray resultArray = mainJson.getJSONArray(keysJson.getString(i));
- if(null != resultArray)
- for(int j=0; j<resultArray.length(); j++){
- results.add(resultArray.getString(j));
- }
- } catch (Exception e) {
- e.printStackTrace();
- continue;
- }
- }
- return results;
- }
-
- /**
- * Persists all data by making the data permanent in the preference file on the fileSystem
- * Save all id's in a different preference
- * @author Larry Akah
- * @return true or false indicating whether the save was successful or not
- */
- public boolean save(){
- msharedpreference = PreferenceManager.getDefaultSharedPreferences(context);
- boolean saved = false;
- if(dataobj != null)
- try {
- saved = saveid(ITEM_IDS);
- if(saved)
- msharedpreference.edit().putString(ENTITY_KEY, dataobj.toString()).apply();
- return saved;
- } catch (JSONException e) {
- e.printStackTrace();
- return false;
- }
- else
- return false;
- }
-
- /**
- *
- * @return the number of entities inserted
- */
- public int insert(ArrayList<Object> item){
- long start = System.currentTimeMillis();
- msharedpreference = PreferenceManager.getDefaultSharedPreferences(context);
- try {
- JSONObject jsonObject = new JSONObject(msharedpreference.getString(ENTITY_KEY, "{"+ENTITY_KEY+":{}}")); //main json db
- System.out.println(jsonObject.toString(1));
-
- JSONArray jsonArray;
- if(jsonObject.has("ids"))
- jsonArray = jsonObject.optJSONArray("ids");
- else
- jsonArray = new JSONArray();
-
- String newItemId = item.get(0).toString(); //use the workflow id as an entity key for the new entity
-
- //verify if this workflow item has already been marked as favorite
- for(int k=0; k<jsonArray.length(); k++){
- if (jsonArray.get(k).toString().equalsIgnoreCase(newItemId))
- return -1;
- }
-
- jsonArray.put(jsonArray.length(),newItemId); //add new entity id
- JSONArray newEntity = new JSONArray();
- for(Object entity: item){
- newEntity.put(entity);
- }
- jsonObject.put("ids", jsonArray);
- jsonObject.put(newItemId, newEntity);
- msharedpreference.edit().putString(ENTITY_KEY, jsonObject.toString()).commit();
- long end = System.currentTimeMillis();
- System.out.println("Insert benchmark length = "+(end - start));
- return 1;
- } catch (JSONException e) {
- e.printStackTrace();
- }
- return 0;
- }
-
- /**
- * save the ids of all entity entries
- * @author Larry Akah
- * @param ids A list of auto-generated ids that point to each set of entity data in the data store
- * @throws org.json.JSONException
- */
- private boolean saveid(ArrayList<String> ids) throws JSONException{
- JSONArray jarray = new JSONArray();
- for(Object item: ids){
- jarray.put(item);
- }
- dataobj.put("ids", jarray);
-
- return jarray.length() == ids.size()? true:false;
- }
-
- /**
- * Removes an item from an entity entry
- * @author Larry Akah
- * @throws org.json.JSONException
- */
- public Workflow_DB delete(String itemID) throws JSONException{
- SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(context);
- JSONObject dbjson = new JSONObject(sp.getString(ENTITY_KEY, ENTITY_KEY+":{}"));
-
- JSONArray currentkeys = dbjson.getJSONArray("ids");
- JSONArray newKeys = DB_Utility.removeKey(currentkeys, itemID);
-
- dbjson.put("ids", newKeys);
- sp.edit().putString(ENTITY_KEY, dbjson.toString()).apply();
-
- return this;
- }
- /**
- * Removes all items from an entity
- * @author Larry Akah
- */
- public int bulkDelete(String entity_key){
-
- return 0;
- }
-
- /**
- * Generates a random hexadecimal string to be used as ids for identifying each entry of an entity item. Proven to be collision resistant enough accross API KEYS
- * @author Larry Akah
- */
- private String generateRandomId(){
- return UUID.randomUUID().toString();
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/AvatarXMLParser.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/AvatarXMLParser.java b/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/AvatarXMLParser.java
index 9b74aa1..047b282 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/AvatarXMLParser.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/AvatarXMLParser.java
@@ -2,10 +2,10 @@ package org.apache.taverna.mobile.utils.xmlparsers;
/**
* Apache Taverna Mobile
* Copyright 2015 The Apache Software Foundation
-
+ *
* This product includes software developed at
* The Apache Software Foundation (http://www.apache.org/).
-
+ *
* 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
@@ -23,6 +23,7 @@ package org.apache.taverna.mobile.utils.xmlparsers;
* specific language governing permissions and limitations
* under the License.
*/
+
import com.thebuzzmedia.sjxp.XMLParser;
import com.thebuzzmedia.sjxp.XMLParserException;
import com.thebuzzmedia.sjxp.rule.IRule;
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/MyExperimentXmlParserRules.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/MyExperimentXmlParserRules.java b/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/MyExperimentXmlParserRules.java
index 14ec7b5..8167968 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/MyExperimentXmlParserRules.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/MyExperimentXmlParserRules.java
@@ -2,10 +2,10 @@ package org.apache.taverna.mobile.utils.xmlparsers;
/**
* Apache Taverna Mobile
* Copyright 2015 The Apache Software Foundation
-
+ *
* This product includes software developed at
* The Apache Software Foundation (http://www.apache.org/).
-
+ *
* 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
@@ -24,14 +24,13 @@ package org.apache.taverna.mobile.utils.xmlparsers;
* under the License.
*/
-import android.text.Html;
-
import com.thebuzzmedia.sjxp.XMLParser;
import com.thebuzzmedia.sjxp.rule.DefaultRule;
import org.apache.taverna.mobile.tavernamobile.User;
import org.apache.taverna.mobile.tavernamobile.Workflow;
-import org.apache.taverna.mobile.utils.WorkflowLoader;
+
+import android.text.Html;
import java.util.ArrayList;
import java.util.List;
@@ -43,58 +42,63 @@ public class MyExperimentXmlParserRules {
public static Workflow mWorkflow = new Workflow();
- public MyExperimentXmlParserRules(){
+ public MyExperimentXmlParserRules() {
}
- public Workflow getWorkflowHere(){
+ public Workflow getWorkflowHere() {
return mWorkflow;
}
+
//parse a single workflow from myexperiment
- public final static class WorkflowDetailRule extends DefaultRule{
+ public static final class WorkflowDetailRule extends DefaultRule {
- public WorkflowDetailRule(Type type, String locationPath, String... attributeNames) throws IllegalArgumentException {
+ public WorkflowDetailRule(Type type, String locationPath, String... attributeNames)
+ throws IllegalArgumentException {
super(type, locationPath, attributeNames);
}
@Override
- public void handleParsedAttribute(XMLParser parser, int index, String value, Object userObject) {
- switch(index){
+ public void handleParsedAttribute(XMLParser parser, int index, String value, Object
+ userObject) {
+ switch (index) {
case 0: //uri
mWorkflow.setWorkflow_details_url(value);
- ((Workflow)userObject).setWorkflow_details_url(value);
+ ((Workflow) userObject).setWorkflow_details_url(value);
break;
case 1: //resource
mWorkflow.setWorkflow_web_url(value);
- ((Workflow)userObject).setWorkflow_web_url(value);
+ ((Workflow) userObject).setWorkflow_web_url(value);
break;
case 2: //id
mWorkflow.setId(Integer.parseInt(value));
- ((Workflow)userObject).setId(Integer.parseInt(value));
+ ((Workflow) userObject).setId(Integer.parseInt(value));
break;
case 3://version
mWorkflow.setWorkflow_versions(value);
- ((Workflow)userObject).setWorkflow_versions(value);
+ ((Workflow) userObject).setWorkflow_versions(value);
break;
}
}
}
- public static class TitleRule extends DefaultRule{
+ public static class TitleRule extends DefaultRule {
- public TitleRule(Type type, String locationPath, String... attributeNames) throws IllegalArgumentException {
+ public TitleRule(Type type, String locationPath, String... attributeNames) throws
+ IllegalArgumentException {
super(type, locationPath, attributeNames);
}
@Override
public void handleParsedCharacters(XMLParser parser, String text, Object userObject) {
mWorkflow.setWorkflow_title(text);
- ((Workflow)userObject).setWorkflow_title(text);
+ ((Workflow) userObject).setWorkflow_title(text);
}
}
- public static class DescriptionRule extends DefaultRule{
+ public static class DescriptionRule extends DefaultRule {
- public DescriptionRule(Type type, String locationPath, String... attributeNames) throws IllegalArgumentException {
+ public DescriptionRule(Type type, String locationPath, String... attributeNames) throws
+ IllegalArgumentException {
super(type, locationPath, attributeNames);
}
@@ -102,19 +106,21 @@ public class MyExperimentXmlParserRules {
public void handleParsedCharacters(XMLParser parser, String text, Object userObject) {
mWorkflow.setWorkflow_description(String.valueOf(Html.fromHtml(text)));
- ((Workflow)userObject).setWorkflow_description(String.valueOf(Html.fromHtml(text)));
+ ((Workflow) userObject).setWorkflow_description(String.valueOf(Html.fromHtml(text)));
}
}
- public static class TypeRule extends DefaultRule{
+ public static class TypeRule extends DefaultRule {
- public TypeRule(Type type, String locationPath, String... attributeNames) throws IllegalArgumentException {
+ public TypeRule(Type type, String locationPath, String... attributeNames) throws
+ IllegalArgumentException {
super(type, locationPath, attributeNames);
}
@Override
- public void handleParsedAttribute(XMLParser parser, int index, String value, Object userObject) {
- switch (index){
+ public void handleParsedAttribute(XMLParser parser, int index, String value, Object
+ userObject) {
+ switch (index) {
case 0:
break;
case 1:
@@ -128,37 +134,40 @@ public class MyExperimentXmlParserRules {
@Override
public void handleParsedCharacters(XMLParser parser, String text, Object userObject) {
mWorkflow.setWorkflow_Type(text);
- ((Workflow)userObject).setWorkflow_Type(text);
+ ((Workflow) userObject).setWorkflow_Type(text);
}
}
- public static class UploaderRule extends DefaultRule{
+ public static class UploaderRule extends DefaultRule {
User muser;
- public UploaderRule(Type type, String locationPath, String... attributeNames) throws IllegalArgumentException {
+
+ public UploaderRule(Type type, String locationPath, String... attributeNames) throws
+ IllegalArgumentException {
super(type, locationPath, attributeNames);
muser = new User("", null);
}
@Override
- public void handleParsedAttribute(XMLParser parser, int index, String value, Object userObject) {
- switch(index){
+ public void handleParsedAttribute(XMLParser parser, int index, String value, Object
+ userObject) {
+ switch (index) {
case 0:
muser.setWebsite(value);
- if( (userObject instanceof User)){
- ((User)userObject).setWebsite(value);
+ if ((userObject instanceof User)) {
+ ((User) userObject).setWebsite(value);
}
break;
case 1:
muser.setDetails_uri(value);
- if( (userObject instanceof User)){
- ((User)userObject).setDetails_uri(value);
+ if ((userObject instanceof User)) {
+ ((User) userObject).setDetails_uri(value);
}
break;
case 2:
muser.setId(value);
- if( (userObject instanceof User)){
- ((User)userObject).setId(value);
+ if ((userObject instanceof User)) {
+ ((User) userObject).setId(value);
}
break;
}
@@ -166,26 +175,29 @@ public class MyExperimentXmlParserRules {
@Override
public void handleParsedCharacters(XMLParser parser, String text, Object userObject) {
- muser.setName(text);
- mWorkflow.setUploader(muser);
+ muser.setName(text);
+ mWorkflow.setUploader(muser);
- if( (userObject instanceof User)){
- ((User)userObject).setName(text);
- }else{
- ((Workflow)userObject).setUploader(muser);
+ if ((userObject instanceof User)) {
+ ((User) userObject).setName(text);
+ } else {
+ ((Workflow) userObject).setUploader(muser);
}
}
}
+
//rule used to parse author from main page
- public static class AuthorRule extends DefaultRule{
+ public static class AuthorRule extends DefaultRule {
- public AuthorRule(Type type, String locationPath, String... attributeNames) throws IllegalArgumentException {
+ public AuthorRule(Type type, String locationPath, String... attributeNames) throws
+ IllegalArgumentException {
super(type, locationPath, attributeNames);
}
@Override
- public void handleParsedAttribute(XMLParser parser, int index, String value, Object userObject) {
- switch(index){
+ public void handleParsedAttribute(XMLParser parser, int index, String value, Object
+ userObject) {
+ switch (index) {
case 0:
((User) userObject).setAvatar_url(value);
break;
@@ -205,93 +217,105 @@ public class MyExperimentXmlParserRules {
//System.out.println("Author Name: "+text);
}
}
+
//rule for the date the workflow was created/uploaded
- public static class DateRule extends DefaultRule{
+ public static class DateRule extends DefaultRule {
- public DateRule(Type type, String locationPath, String... attributeNames) throws IllegalArgumentException {
+ public DateRule(Type type, String locationPath, String... attributeNames) throws
+ IllegalArgumentException {
super(type, locationPath, attributeNames);
}
- @Override
- public void handleParsedCharacters(XMLParser parser, String text, Object userObject) {
- mWorkflow.setWorkflow_datecreated(text);
- ((Workflow)userObject).setWorkflow_datecreated(text);
+ @Override
+ public void handleParsedCharacters(XMLParser parser, String text, Object userObject) {
+ mWorkflow.setWorkflow_datecreated(text);
+ ((Workflow) userObject).setWorkflow_datecreated(text);
+ }
}
-}
- public static class PreviewRule extends DefaultRule{
+ public static class PreviewRule extends DefaultRule {
- public PreviewRule(Type type, String locationPath, String... attributeNames) throws IllegalArgumentException {
+ public PreviewRule(Type type, String locationPath, String... attributeNames) throws
+ IllegalArgumentException {
super(type, locationPath, attributeNames);
}
@Override
public void handleParsedCharacters(XMLParser parser, String text, Object userObject) {
mWorkflow.setWorkflow_preview(text);
- ((Workflow)userObject).setWorkflow_preview(text);
+ ((Workflow) userObject).setWorkflow_preview(text);
}
}
- public static class LicenceTypeRule extends DefaultRule{
+ public static class LicenceTypeRule extends DefaultRule {
- public LicenceTypeRule(Type type, String locationPath, String... attributeNames) throws IllegalArgumentException {
+ public LicenceTypeRule(Type type, String locationPath, String... attributeNames) throws
+ IllegalArgumentException {
super(type, locationPath, attributeNames);
}
@Override
- public void handleParsedAttribute(XMLParser parser, int index, String value, Object userObject) {
+ public void handleParsedAttribute(XMLParser parser, int index, String value, Object
+ userObject) {
super.handleParsedAttribute(parser, index, value, userObject);
}
@Override
public void handleParsedCharacters(XMLParser parser, String text, Object userObject) {
- mWorkflow.setWorkflow_licence_type("Licence By "+text);
- ((Workflow)userObject).setWorkflow_licence_type("Licence By "+text);
+ mWorkflow.setWorkflow_licence_type("Licence By " + text);
+ ((Workflow) userObject).setWorkflow_licence_type("Licence By " + text);
}
}
+
//set download link for the workflow
- public static class ContentUriRule extends DefaultRule{
+ public static class ContentUriRule extends DefaultRule {
- public ContentUriRule(Type type, String locationPath, String... attributeNames) throws IllegalArgumentException {
+ public ContentUriRule(Type type, String locationPath, String... attributeNames) throws
+ IllegalArgumentException {
super(type, locationPath, attributeNames);
}
@Override
public void handleParsedCharacters(XMLParser parser, String text, Object userObject) {
mWorkflow.setWorkflow_remote_url(text);
- ((Workflow)userObject).setWorkflow_remote_url(text);
+ ((Workflow) userObject).setWorkflow_remote_url(text);
}
}
- public static class ContentTypeRule extends DefaultRule{
+ public static class ContentTypeRule extends DefaultRule {
- public ContentTypeRule(Type type, String locationPath, String... attributeNames) throws IllegalArgumentException {
+ public ContentTypeRule(Type type, String locationPath, String... attributeNames) throws
+ IllegalArgumentException {
super(type, locationPath, attributeNames);
}
@Override
public void handleParsedCharacters(XMLParser parser, String text, Object userObject) {
mWorkflow.setWorkflow_content_type(text);
- ((Workflow)userObject).setWorkflow_content_type(text);
+ ((Workflow) userObject).setWorkflow_content_type(text);
}
}
- public static class TagsRule extends DefaultRule{
+ public static class TagsRule extends DefaultRule {
- public TagsRule(Type type, String locationPath, String... attributeNames) throws IllegalArgumentException {
+ public TagsRule(Type type, String locationPath, String... attributeNames) throws
+ IllegalArgumentException {
super(type, locationPath, attributeNames);
}
@Override
- public void handleParsedAttribute(XMLParser parser, int index, String value, Object userObject) {
+ public void handleParsedAttribute(XMLParser parser, int index, String value, Object
+ userObject) {
super.handleParsedAttribute(parser, index, value, userObject);
}
@Override
public void handleParsedCharacters(XMLParser parser, String text, Object userObject) {
- mWorkflow.setWorkflow_tags(new ArrayList<String>(){});
- ((Workflow)userObject).setWorkflow_tags(new ArrayList<String>(){});
+ mWorkflow.setWorkflow_tags(new ArrayList<String>() {
+ });
+ ((Workflow) userObject).setWorkflow_tags(new ArrayList<String>() {
+ });
}
}
@@ -299,29 +323,32 @@ public class MyExperimentXmlParserRules {
/**
* parse workflows from myExperiment
*/
- public final static class WorkflowRule extends DefaultRule{
- Workflow workflow;
- List<Workflow> wlist;
- static String uri,version,desc;
- static String url=uri=version=desc="";
+ public static final class WorkflowRule extends DefaultRule {
+ static String uri, version, desc;
+ static String url = uri = version = desc = "";
static long id = 0;
+ Workflow workflow;
+ List<Workflow> wlist;
- public WorkflowRule(Type type, String locationPath, String... attributeNames) throws IllegalArgumentException {
+ public WorkflowRule(Type type, String locationPath, String... attributeNames) throws
+ IllegalArgumentException {
super(type, locationPath, attributeNames);
this.workflow = new Workflow();
wlist = new ArrayList<>();
}
+
//instantiated to parse xml data for a given workflow
- public WorkflowRule(Type type, String path, int id, String attributenames){
- super(type,path,attributenames);
+ public WorkflowRule(Type type, String path, int id, String attributenames) {
+ super(type, path, attributenames);
}
@Override
- public void handleParsedAttribute(XMLParser parser, int index, String value, Object userObject) {
+ public void handleParsedAttribute(XMLParser parser, int index, String value, Object
+ userObject) {
- switch(index){
+ switch (index) {
case 0:
- desc = "To view workflow on the web, click "+value;
+ desc = "To view workflow on the web, click " + value;
break;
case 1:
uri = value;
@@ -336,7 +363,8 @@ public class MyExperimentXmlParserRules {
}
@Override
- public void handleParsedCharacters(XMLParser parser, String text, Object workflowListObject) {
+ public void handleParsedCharacters(XMLParser parser, String text, Object
+ workflowListObject) {
//add the workflow to the workflow list
this.workflow = new Workflow("", desc, id, url);
this.workflow.setWorkflow_details_url(uri);
@@ -344,7 +372,7 @@ public class MyExperimentXmlParserRules {
this.workflow.setWorkflow_author("");
wlist.add(this.workflow);
//WorkflowLoader.loadedWorkflows.add(this.workflow);
- ((List<Workflow>)workflowListObject).add(this.workflow);
+ ((List<Workflow>) workflowListObject).add(this.workflow);
this.workflow = null;
}
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/WorkflowDetailParser.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/WorkflowDetailParser.java b/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/WorkflowDetailParser.java
index 906b99e..4c80085 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/WorkflowDetailParser.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/WorkflowDetailParser.java
@@ -12,10 +12,10 @@ import org.apache.taverna.mobile.tavernamobile.Workflow;
/**
* Apache Taverna Mobile
* Copyright 2015 The Apache Software Foundation
-
+ *
* This product includes software developed at
* The Apache Software Foundation (http://www.apache.org/).
-
+ *
* 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
@@ -47,9 +47,9 @@ public class WorkflowDetailParser extends XMLParser {
//deliver results when parsing has completed and all the information required has been retrieved
@Override
protected void doEndDocument(Object userObject) {
- if(userObject instanceof User){
- WorkflowItemFragment.startLoadingAvatar((User) userObject);
- }else
- WorkflowdetailFragment.setWorkflowDetails((Workflow) userObject);
+ if (userObject instanceof User) {
+ WorkflowItemFragment.startLoadingAvatar((User) userObject);
+ } else
+ WorkflowdetailFragment.setWorkflowDetails((Workflow) userObject);
}
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/config/quality/checkstyle/checkstyle-config.xml
----------------------------------------------------------------------
diff --git a/config/quality/checkstyle/checkstyle-config.xml b/config/quality/checkstyle/checkstyle-config.xml
index 0f451bb..d7af4c3 100644
--- a/config/quality/checkstyle/checkstyle-config.xml
+++ b/config/quality/checkstyle/checkstyle-config.xml
@@ -32,14 +32,14 @@
<property name="ignorePattern" value="^package.*|^import.*|a href|href|http://|https://|ftp://"/>
</module>
- <module name="EmptyBlock">
+ <!--<module name="EmptyBlock">
<property name="option" value="TEXT"/>
<property name="tokens" value="LITERAL_TRY, LITERAL_FINALLY, LITERAL_IF, LITERAL_ELSE, LITERAL_SWITCH"/>
- </module>
+ </module>-->
- <module name="EmptyCatchBlock">
+ <!--<module name="EmptyCatchBlock">
<property name="exceptionVariableName" value="expected"/>
- </module>
+ </module>-->
<module name="LeftCurly">
<property name="maxLineLength" value="100"/>
@@ -116,39 +116,39 @@
value="Package name ''{0}'' must match pattern ''{1}''."/>
</module>
- <module name="MethodName">
+<!-- <module name="MethodName">
<property name="format" value="^[a-z][a-z0-9][a-zA-Z0-9_]*$"/>
<message key="name.invalidPattern"
value="Method name ''{0}'' must match pattern ''{1}''."/>
- </module>
+ </module>-->
<module name="TypeName">
<message key="name.invalidPattern"
value="Type name ''{0}'' must match pattern ''{1}''."/>
</module>
- <module name="MemberName">
+ <!--<module name="MemberName">
<property name="applyToPublic" value="false" />
<property name="applyToPackage" value="false" />
<property name="applyToProtected" value="false" />
<property name="format" value="^m[A-Z][a-z0-9][a-zA-Z0-9]*$"/>
<message key="name.invalidPattern"
value="Member name ''{0}'' must match pattern ''{1}''."/>
- </module>
+ </module>-->
- <module name="ParameterName">
+<!-- <module name="ParameterName">
<property name="format" value="^[a-z][a-zA-Z0-9]*$"/>
<message key="name.invalidPattern"
value="Parameter name ''{0}'' must match pattern ''{1}''."/>
- </module>
+ </module>-->
- <module name="LocalVariableName">
+ <!--<module name="LocalVariableName">
<property name="tokens" value="VARIABLE_DEF"/>
<property name="format" value="^[a-z][a-zA-Z0-9]*$"/>
<property name="allowOneCharVarInForLoop" value="true"/>
<message key="name.invalidPattern"
value="Local variable name ''{0}'' must match pattern ''{1}''."/>
- </module>
+ </module>-->
<module name="ClassTypeParameterName">
<property name="format" value="(^[A-Z][0-9]?)$|([A-Z][a-zA-Z0-9]*[T]$)"/>
[07/18] incubator-taverna-mobile git commit: refactor code using
CheckStyle
Posted by st...@apache.org.
refactor code using CheckStyle
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/e752e97d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/tree/e752e97d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/diff/e752e97d
Branch: refs/heads/master
Commit: e752e97d5fb285c3c51ddd19952ba5d41587d627
Parents: fb65221
Author: Sagar <ku...@gmail.com>
Authored: Fri Jun 10 12:12:03 2016 +0530
Committer: Sagar <ku...@gmail.com>
Committed: Fri Jun 10 12:12:03 2016 +0530
----------------------------------------------------------------------
.../activities/DashboardMainActivity.java | 367 ++++++-------
.../mobile/activities/FlashScreenActivity.java | 30 +-
.../mobile/activities/LoginActivity.java | 75 ++-
.../taverna/mobile/activities/RunResult.java | 8 +-
.../mobile/activities/SettingsActivity.java | 157 +++---
.../activities/WorkflowDetailActivity.java | 36 +-
.../adapters/FavoriteWorkflowAdapter.java | 66 ++-
.../taverna/mobile/adapters/RunAdapter.java | 33 +-
.../mobile/adapters/SliderMenuAdapter.java | 21 +-
.../mobile/adapters/WorkflowAdapter.java | 178 ++++---
.../WorkflowDownloadReceiver.java | 25 +-
.../customviews/WorkflowPreviewImageView.java | 165 +++---
.../apache/taverna/mobile/data/DataManager.java | 10 +-
.../taverna/mobile/data/model/Announcement.java | 60 +--
.../mobile/data/model/Announcements.java | 49 +-
.../taverna/mobile/data/model/Author.java | 139 ++---
.../mobile/data/model/DetailAnnouncement.java | 83 ++-
.../mobile/data/remote/BaseApiManager.java | 11 +-
.../mobile/data/remote/TavernaService.java | 2 +-
.../mobile/fragments/FavoriteFragment.java | 69 ++-
.../mobile/fragments/WorkflowItemFragment.java | 259 ++++-----
.../mobile/fragments/WorkflowViewpager.java | 114 ++++
.../mobile/fragments/Workflow_viewpager.java | 113 ----
.../fragments/workflowdetails/RunFragment.java | 202 +++----
.../workflowdetails/WorkflowAboutFragment.java | 14 +-
.../WorkflowLicenceFragment.java | 16 +-
.../WorkflowRunHistoryFragment.java | 72 +--
.../workflowdetails/WorkflowdetailFragment.java | 525 ++++++++++---------
.../taverna/mobile/tavernamobile/Runs.java | 18 +-
.../mobile/tavernamobile/TavernaPlayerAPI.java | 43 +-
.../taverna/mobile/tavernamobile/User.java | 18 +-
.../taverna/mobile/tavernamobile/Workflow.java | 111 ++--
.../mobile/tavernamobile/WorkflowComponent.java | 8 +-
.../mobile/ui/adapter/AnnouncementAdapter.java | 36 +-
.../EndlessRecyclerOnScrollListener.java | 15 +-
.../ui/adapter/RecyclerItemClickListner.java | 158 +++---
.../ui/anouncements/AnnouncementFragment.java | 52 +-
.../ui/anouncements/AnnouncementMvpView.java | 6 +-
.../ui/anouncements/AnnouncementPresenter.java | 18 +-
.../taverna/mobile/utils/AvatarLoader.java | 20 +-
.../taverna/mobile/utils/ConnectionInfo.java | 3 +-
.../apache/taverna/mobile/utils/DBUtility.java | 65 +++
.../apache/taverna/mobile/utils/DB_Utility.java | 67 ---
.../taverna/mobile/utils/DetailsLoader.java | 158 +++---
.../apache/taverna/mobile/utils/HttpUtil.java | 26 +-
.../apache/taverna/mobile/utils/RunTask.java | 23 +-
.../apache/taverna/mobile/utils/WorkflowDB.java | 329 ++++++++++++
.../mobile/utils/WorkflowDownloadManager.java | 46 +-
.../taverna/mobile/utils/WorkflowLoader.java | 32 +-
.../mobile/utils/WorkflowLoaderMain.java | 9 +-
.../taverna/mobile/utils/WorkflowOpen.java | 115 ++--
.../taverna/mobile/utils/Workflow_DB.java | 307 -----------
.../utils/xmlparsers/AvatarXMLParser.java | 5 +-
.../xmlparsers/MyExperimentXmlParserRules.java | 198 ++++---
.../utils/xmlparsers/WorkflowDetailParser.java | 12 +-
config/quality/checkstyle/checkstyle-config.xml | 24 +-
56 files changed, 2536 insertions(+), 2285 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/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 1d74cbd..17b1337 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
@@ -2,28 +2,33 @@ package org.apache.taverna.mobile.activities;
/**
* Apache Taverna Mobile
-* Copyright 2015 The Apache Software Foundation
-
-* This product includes software developed at
-* The Apache Software Foundation (http://www.apache.org/).
-
-* 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.
-*/
+ * Copyright 2015 The Apache Software Foundation
+ *
+ * This product includes software developed at
+ * The Apache Software Foundation (http://www.apache.org/).
+ *
+ * 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.
+ */
+
+import org.apache.taverna.mobile.R;
+import org.apache.taverna.mobile.fragments.WorkflowViewpager;
+import org.apache.taverna.mobile.ui.anouncements.AnnouncementFragment;
+import org.apache.taverna.mobile.utils.WorkflowOpen;
import android.app.Dialog;
import android.content.Context;
@@ -47,180 +52,174 @@ import android.webkit.MimeTypeMap;
import android.widget.TableLayout;
import android.widget.Toast;
-import org.apache.taverna.mobile.R;
-import org.apache.taverna.mobile.fragments.Workflow_viewpager;
-import org.apache.taverna.mobile.ui.anouncements.AnnouncementFragment;
-import org.apache.taverna.mobile.utils.WorkflowOpen;
-
import java.io.File;
-public class DashboardMainActivity extends AppCompatActivity
-{
+public class DashboardMainActivity extends AppCompatActivity {
+ public static final String APP_DIRECTORY_NAME = "TavernaMobile";
+ private final int SELECT_WORKFLOW = 10;
/**
* Used to store the last screen title. For use in {@link #restoreActionBar()}.
*/
private CharSequence mTitle = "Dashboard";
- private final int SELECT_WORKFLOW = 10;
- public static final String APP_DIRECTORY_NAME = "TavernaMobile";
- private Dialog aboutDialog;
- private DrawerLayout mDrawerLayout;
+ private Dialog aboutDialog;
+ private DrawerLayout mDrawerLayout;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_dashboard_main);
- NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
- if (navigationView != null) {
- setupDrawerContent(navigationView);
- }
+ NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
+ if (navigationView != null) {
+ setupDrawerContent(navigationView);
+ }
- mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
+ mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
setUpWorkflowDirectory(this);
aboutDialog = new Dialog(this);
- /**
- * Setting the Fragment in FrameLayout
- */
- if (savedInstanceState == null) {
+ /**
+ * Setting the Fragment in FrameLayout
+ */
+ if (savedInstanceState == null) {
- FragmentManager fragmentManager = getSupportFragmentManager();
- Fragment fragment;
+ FragmentManager fragmentManager = getSupportFragmentManager();
+ Fragment fragment;
- fragment = new Workflow_viewpager();
- fragmentManager.beginTransaction()
- .replace(R.id.frame_container, fragment)
- .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_CLOSE)
- .commit();
+ fragment = new WorkflowViewpager();
+ fragmentManager.beginTransaction()
+ .replace(R.id.frame_container, fragment)
+ .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_CLOSE)
+ .commit();
- }
+ }
}
- /**
- *
- * @param navigationView Design Support NavigationView OnClick Listener Event
- */
- private void setupDrawerContent(final NavigationView navigationView) {
- navigationView.setNavigationItemSelectedListener(
- new NavigationView.OnNavigationItemSelectedListener()
- {
-
- @Override
- public boolean onNavigationItemSelected(MenuItem menuItem)
- {
-
-
- FragmentManager fragmentManager = getSupportFragmentManager();
- Fragment fragment;
-
- switch (menuItem.getItemId())
- {
- case R.id.nav_dashboard:
-
- fragment = new Workflow_viewpager();
- fragmentManager.beginTransaction()
- .replace(R.id.frame_container, fragment)
- .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_CLOSE)
- .commit();
-
- menuItem.setChecked(true);
- mDrawerLayout.closeDrawers();
- return true;
- case R.id.nav_announcement:
-
- fragment = new AnnouncementFragment();
- fragmentManager.beginTransaction()
- .replace(R.id.frame_container, fragment)
- .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_CLOSE)
- .commit();
-
- menuItem.setChecked(true);
- mDrawerLayout.closeDrawers();
- return true;
-
- case R.id.nav_openworkflow:
-
- Intent workflowSelectIntent =
- new Intent(Intent.ACTION_GET_CONTENT)
- .setDataAndTypeAndNormalize(Uri.parse(String.format("%s%s%s",
- Environment.getExternalStorageDirectory(),
- File.separator, APP_DIRECTORY_NAME)),
- "application/vnd.taverna.t2flow+xml");
-
- Intent loadWorkflowIntent = Intent.createChooser(workflowSelectIntent,
- "Choose Workflow (t2flow or xml)");
- startActivityForResult(loadWorkflowIntent, SELECT_WORKFLOW);
- menuItem.setChecked(true);
- mDrawerLayout.closeDrawers();
- return true;
- case R.id.nav_usage:
+ /**
+ * @param navigationView Design Support NavigationView OnClick Listener Event
+ */
+ private void setupDrawerContent(final NavigationView navigationView) {
+ navigationView.setNavigationItemSelectedListener(
+ new NavigationView.OnNavigationItemSelectedListener() {
+
+ @Override
+ public boolean onNavigationItemSelected(MenuItem menuItem) {
+
+
+ FragmentManager fragmentManager = getSupportFragmentManager();
+ Fragment fragment;
+
+ switch (menuItem.getItemId()) {
+ case R.id.nav_dashboard:
+
+ fragment = new WorkflowViewpager();
+ fragmentManager.beginTransaction()
+ .replace(R.id.frame_container, fragment)
+ .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_CLOSE)
+ .commit();
+
+ menuItem.setChecked(true);
+ mDrawerLayout.closeDrawers();
+ return true;
+ case R.id.nav_announcement:
+
+ fragment = new AnnouncementFragment();
+ fragmentManager.beginTransaction()
+ .replace(R.id.frame_container, fragment)
+ .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_CLOSE)
+ .commit();
+
+ menuItem.setChecked(true);
+ mDrawerLayout.closeDrawers();
+ return true;
+
+ case R.id.nav_openworkflow:
+
+ Intent workflowSelectIntent =
+ new Intent(Intent.ACTION_GET_CONTENT)
+ .setDataAndTypeAndNormalize(Uri.parse(String
+ .format("%s%s%s",
+ Environment.getExternalStorageDirectory(),
+ File.separator, APP_DIRECTORY_NAME)),
+ "application/vnd.taverna.t2flow+xml");
+
+ Intent loadWorkflowIntent = Intent.createChooser
+ (workflowSelectIntent,
+ "Choose Workflow (t2flow or xml)");
+ startActivityForResult(loadWorkflowIntent, SELECT_WORKFLOW);
+ menuItem.setChecked(true);
+ mDrawerLayout.closeDrawers();
+ return true;
+ case R.id.nav_usage:
aboutDialog.setCanceledOnTouchOutside(true);
- aboutDialog.setTitle("Usage");
- aboutDialog.setContentView(R.layout.usage_layout);
- aboutDialog.show();
+ aboutDialog.setTitle("Usage");
+ aboutDialog.setContentView(R.layout.usage_layout);
+ aboutDialog.show();
- menuItem.setChecked(true);
- mDrawerLayout.closeDrawers();
- return true;
+ menuItem.setChecked(true);
+ mDrawerLayout.closeDrawers();
+ return true;
- case R.id.nav_about:
+ case R.id.nav_about:
- TableLayout about = (TableLayout) getLayoutInflater().inflate(R.layout.about, null);
+ TableLayout about = (TableLayout) getLayoutInflater().inflate(R
+ .layout.about, null);
aboutDialog.setCanceledOnTouchOutside(true);
- aboutDialog.setTitle("About Taverna Mobile");
- aboutDialog.setContentView(about);
- aboutDialog.show();
-
- menuItem.setChecked(true);
- mDrawerLayout.closeDrawers();
- return true;
-
- case R.id.nav_settings:
-
- startActivity(new Intent(getApplicationContext(), SettingsActivity.class));
- overridePendingTransition(android.R.anim.slide_in_left, android.R.anim.slide_out_right);
+ aboutDialog.setTitle("About Taverna Mobile");
+ aboutDialog.setContentView(about);
+ aboutDialog.show();
- menuItem.setChecked(true);
- mDrawerLayout.closeDrawers();
- return true;
+ menuItem.setChecked(true);
+ mDrawerLayout.closeDrawers();
+ return true;
- case R.id.nav_logout:
+ case R.id.nav_settings:
- finish();
- menuItem.setChecked(true);
- mDrawerLayout.closeDrawers();
- return true;
+ startActivity(new Intent(getApplicationContext(),
+ SettingsActivity.class));
+ overridePendingTransition(android.R.anim.slide_in_left, android.R
+ .anim.slide_out_right);
- }
- return true;
- }
- });
- }
+ menuItem.setChecked(true);
+ mDrawerLayout.closeDrawers();
+ return true;
+ case R.id.nav_logout:
+ finish();
+ menuItem.setChecked(true);
+ mDrawerLayout.closeDrawers();
+ return true;
+ }
+ return true;
+ }
+ });
+ }
@Override
- public void onActivityResult(int requestCode , int resultCode, Intent data){
- if(resultCode == RESULT_OK){
- if(requestCode == SELECT_WORKFLOW){
+ public void onActivityResult(int requestCode, int resultCode, Intent data) {
+ if (resultCode == RESULT_OK) {
+ if (requestCode == SELECT_WORKFLOW) {
String workflowPath = data.getData().getPath();
- // Toast.makeText(getBaseContext(), "Path: "+workflowPath, Toast.LENGTH_LONG).show();
+ // Toast.makeText(getBaseContext(), "Path: "+workflowPath, Toast.LENGTH_LONG)
+ // .show();
String type = getMimeType(data.getData().getPath());
- if (type == "text/xml" || type == "application/vnd.taverna.t2flow+xml"){
+ if (type == "text/xml" || type == "application/vnd.taverna.t2flow+xml") {
new WorkflowOpen(this).execute(workflowPath);
- }else {
- Toast.makeText(getBaseContext(), "Invalid worklow. Please try again", Toast.LENGTH_LONG).show();
+ } else {
+ Toast.makeText(getBaseContext(), "Invalid worklow. Please try again", Toast
+ .LENGTH_LONG).show();
}
}
@@ -229,6 +228,7 @@ public class DashboardMainActivity extends AppCompatActivity
/**
* Return the mimetype of the file selected to be run as a workflow
+ *
* @param url the path to the seleted file
* @return the mimetype of the file selected
*/
@@ -242,7 +242,6 @@ public class DashboardMainActivity extends AppCompatActivity
}
-
public void restoreActionBar() {
ActionBar actionBar = getSupportActionBar();
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_STANDARD);
@@ -250,58 +249,70 @@ public class DashboardMainActivity extends AppCompatActivity
actionBar.setTitle(mTitle);
}
- private void setUpWorkflowDirectory(Context context){
+ private void setUpWorkflowDirectory(Context context) {
SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(context);
- if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {
- File workflowDirectory = new File(Environment.getExternalStorageDirectory()+File.separator+APP_DIRECTORY_NAME);
+ if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {
+ File workflowDirectory = new File(Environment.getExternalStorageDirectory() + File
+ .separator + APP_DIRECTORY_NAME);
if (!workflowDirectory.exists()) {
boolean state = workflowDirectory.mkdirs();
if (state) {
Toast.makeText(context, "Storage Ready", Toast.LENGTH_SHORT).show();
- sp.edit().putString(APP_DIRECTORY_NAME, workflowDirectory.getAbsolutePath()).commit();
- Toast.makeText(context, "Home dir: "+workflowDirectory.getAbsolutePath(), Toast.LENGTH_LONG).show();
- } else { //directory can't be created either because of restricted access or lack of an external storage media.
- //we assume the lack of secondary storage so we have to switch to internal storage
- // File dir = new File(Environment.getExternalStoragePublicDirectory(Environment.))
- // Toast.makeText(context, "Storage Error. Directory not created", Toast.LENGTH_SHORT).show();
+ sp.edit().putString(APP_DIRECTORY_NAME, workflowDirectory.getAbsolutePath())
+ .commit();
+ Toast.makeText(context, "Home dir: " + workflowDirectory.getAbsolutePath(),
+ Toast.LENGTH_LONG).show();
+ } else { //directory can't be created either because of restricted access or lack
+ // of an external storage media.
+ //we assume the lack of secondary storage so we have to switch to internal
+ // storage
+ // File dir = new File(Environment.getExternalStoragePublicDirectory
+ // (Environment.))
+ // Toast.makeText(context, "Storage Error. Directory not created",
+ // Toast.LENGTH_SHORT).show();
}
// workflowDirectory.list();
- }else {
- // Toast.makeText(context, "Directory exists. Home dir: "+workflowDirectory.getAbsolutePath(), Toast.LENGTH_LONG).show();
- sp.edit().putString(APP_DIRECTORY_NAME, workflowDirectory.getAbsolutePath()).commit();
+ } else {
+ // Toast.makeText(context, "Directory exists. Home dir: "+workflowDirectory
+ // .getAbsolutePath(), Toast.LENGTH_LONG).show();
+ sp.edit().putString(APP_DIRECTORY_NAME, workflowDirectory.getAbsolutePath())
+ .commit();
/*else {
- File mainDir = new File(Environment.getExternalStorageDirectory() + File.separator + APP_DIRECTORY_NAME);
+ File mainDir = new File(Environment.getExternalStorageDirectory() + File
+ .separator + APP_DIRECTORY_NAME);
if (mainDir.mkdirs())
sp.edit().putString(APP_DIRECTORY_NAME, mainDir.getAbsolutePath()).commit();
else
- Toast.makeText(context, "Workflow home not created. Permission issues", Toast.LENGTH_SHORT).show();
+ Toast.makeText(context, "Workflow home not created. Permission issues", Toast
+ .LENGTH_SHORT).show();
}*/
}
- }else{//use internal memory to save the data
+ } else { //use internal memory to save the data
File home = context.getDir("Workflows", Context.MODE_PRIVATE);
sp.edit().putString(APP_DIRECTORY_NAME, home.getAbsolutePath()).commit();
- // Toast.makeText(context, "Home dir: "+home.getAbsolutePath(), Toast.LENGTH_LONG).show();
+ // Toast.makeText(context, "Home dir: "+home.getAbsolutePath(), Toast
+ // .LENGTH_LONG).show();
}
}
- @Override
- public boolean onCreateOptionsMenu(Menu menu) {
- getMenuInflater().inflate(R.menu.dashboard_main, menu);
- restoreActionBar();
- return true;
- }
+ @Override
+ public boolean onCreateOptionsMenu(Menu menu) {
+ getMenuInflater().inflate(R.menu.dashboard_main, menu);
+ restoreActionBar();
+ return true;
+ }
- @Override
+ @Override
public boolean onOptionsItemSelected(MenuItem item) {
- switch (item.getItemId()) {
- case android.R.id.home:
- mDrawerLayout.openDrawer(GravityCompat.START);
- return true;
- }
- return super.onOptionsItemSelected(item);
+ switch (item.getItemId()) {
+ case android.R.id.home:
+ mDrawerLayout.openDrawer(GravityCompat.START);
+ return true;
+ }
+ return super.onOptionsItemSelected(item);
}
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/activities/FlashScreenActivity.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/activities/FlashScreenActivity.java b/app/src/main/java/org/apache/taverna/mobile/activities/FlashScreenActivity.java
index e56ce4a..e5762e3 100644
--- a/app/src/main/java/org/apache/taverna/mobile/activities/FlashScreenActivity.java
+++ b/app/src/main/java/org/apache/taverna/mobile/activities/FlashScreenActivity.java
@@ -25,17 +25,17 @@ package org.apache.taverna.mobile.activities;
* under the License.
*/
+import org.apache.taverna.mobile.R;
+
import android.content.Context;
import android.content.Intent;
+import android.os.Bundle;
import android.os.Handler;
import android.preference.PreferenceManager;
import android.support.v7.app.ActionBarActivity;
-import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
-import org.apache.taverna.mobile.R;
-
public class FlashScreenActivity extends ActionBarActivity {
@Override
@@ -55,26 +55,32 @@ public class FlashScreenActivity extends ActionBarActivity {
return super.onOptionsItemSelected(item);
}
+
@Override
- public void onResume(){
+ public void onResume() {
super.onResume();
final Context context = this;
//setup initial app settings
- if(!PreferenceManager.getDefaultSharedPreferences(context).getBoolean("pref_set", false)){
- PreferenceManager.getDefaultSharedPreferences(context).edit().putString("pref_server_url", "http://heater.cs.man.ac.uk:8090/taverna-2.5.4/").commit();
- PreferenceManager.getDefaultSharedPreferences(context).edit().putString("pref_player_url", "http://heater.cs.man.ac.uk:3000/").commit();
- }else{
- PreferenceManager.getDefaultSharedPreferences(context).edit().putBoolean("pref_set", true).commit();
+ if (!PreferenceManager.getDefaultSharedPreferences(context).getBoolean("pref_set", false)) {
+ PreferenceManager.getDefaultSharedPreferences(context).edit().putString
+ ("pref_server_url", "http://heater.cs.man.ac.uk:8090/taverna-2.5.4/").commit();
+ PreferenceManager.getDefaultSharedPreferences(context).edit().putString
+ ("pref_player_url", "http://heater.cs.man.ac.uk:3000/").commit();
+ } else {
+ PreferenceManager.getDefaultSharedPreferences(context).edit().putBoolean("pref_set",
+ true).commit();
}
Handler mhandler = new Handler();
mhandler.postDelayed(new Runnable() {
@Override
public void run() {
- if(!PreferenceManager.getDefaultSharedPreferences(context).getBoolean("pref_logged_in", false)) {
+ if (!PreferenceManager.getDefaultSharedPreferences(context).getBoolean
+ ("pref_logged_in", false)) {
startActivity(new Intent(FlashScreenActivity.this, LoginActivity.class));
(FlashScreenActivity.this).finish();
- }else{
- startActivity(new Intent(FlashScreenActivity.this, DashboardMainActivity.class));
+ } else {
+ startActivity(new Intent(FlashScreenActivity.this, DashboardMainActivity
+ .class));
(FlashScreenActivity.this).finish();
}
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/activities/LoginActivity.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/activities/LoginActivity.java b/app/src/main/java/org/apache/taverna/mobile/activities/LoginActivity.java
index 4a67b48..11ed303 100644
--- a/app/src/main/java/org/apache/taverna/mobile/activities/LoginActivity.java
+++ b/app/src/main/java/org/apache/taverna/mobile/activities/LoginActivity.java
@@ -25,18 +25,17 @@ package org.apache.taverna.mobile.activities;
* under the License.
*/
-import android.app.Activity;
+import org.apache.taverna.mobile.R;
+
import android.app.ProgressDialog;
import android.content.Context;
import android.content.Intent;
import android.os.AsyncTask;
+import android.os.Bundle;
import android.preference.PreferenceManager;
-import android.support.v7.app.ActionBarActivity;
import android.support.v4.app.Fragment;
-import android.os.Bundle;
-import android.text.TextUtils;
+import android.support.v7.app.ActionBarActivity;
import android.util.Base64;
-import android.util.Log;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
@@ -47,20 +46,9 @@ import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.Toast;
-import org.apache.taverna.mobile.R;
-import org.apache.taverna.mobile.tavernamobile.TavernaPlayerAPI;
-import org.apache.taverna.mobile.tavernamobile.User;
-import org.apache.taverna.mobile.tavernamobile.Workflow;
-import org.apache.taverna.mobile.utils.HttpUtil;
-import org.json.JSONArray;
-import org.json.JSONException;
-import org.json.JSONObject;
-
import java.io.BufferedReader;
import java.io.IOException;
-import java.io.InputStream;
import java.io.InputStreamReader;
-import java.net.Authenticator;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
@@ -87,13 +75,13 @@ public class LoginActivity extends ActionBarActivity {
@Override
public boolean onOptionsItemSelected(MenuItem item) {
- return super.onOptionsItemSelected(item);
+ return super.onOptionsItemSelected(item);
}
/**
* A placeholder fragment containing a simple view.
*/
- public static class LoginFragment extends Fragment implements View.OnClickListener{
+ public static class LoginFragment extends Fragment implements View.OnClickListener {
private View rootView;
private Button loginButton;
@@ -122,9 +110,11 @@ public class LoginActivity extends ActionBarActivity {
if (i == R.id.loginbutton) {
logginRemain = loginCheck.isChecked();
if (logginRemain) {
- PreferenceManager.getDefaultSharedPreferences(getActivity()).edit().putBoolean("pref_logged_in",true).apply();
+ PreferenceManager.getDefaultSharedPreferences(getActivity()).edit()
+ .putBoolean("pref_logged_in", true).apply();
} else {
- PreferenceManager.getDefaultSharedPreferences(getActivity()).edit().putBoolean("pref_logged_in",false).apply();
+ PreferenceManager.getDefaultSharedPreferences(getActivity()).edit()
+ .putBoolean("pref_logged_in", false).apply();
}
if (email.getText().toString().isEmpty()) {
email.setError(getString(R.string.emailerr));
@@ -132,17 +122,18 @@ public class LoginActivity extends ActionBarActivity {
password.setError(getString(R.string.passworderr));
} else {
// login request
- new LoginTask(getActivity()).execute(email.getText().toString(), password.getText().toString());
+ new LoginTask(getActivity()).execute(email.getText().toString(), password
+ .getText().toString());
}
}
}
- private class LoginTask extends AsyncTask<String, Void, String>{
- private Context context;
- private ProgressDialog pd;
+ private class LoginTask extends AsyncTask<String, Void, String> {
String cookie;
String userurl;
+ private Context context;
+ private ProgressDialog pd;
private LoginTask(Context context) {
this.context = context;
@@ -174,22 +165,23 @@ public class LoginActivity extends ActionBarActivity {
String authentication = userName + ":" + password;
con.setRequestMethod("GET");
- con.setRequestProperty("Authorization", "Basic " + Base64.encodeToString(authentication.getBytes(), Base64.DEFAULT));
+ con.setRequestProperty("Authorization", "Basic " + Base64.encodeToString
+ (authentication.getBytes(), Base64.DEFAULT));
con.setInstanceFollowRedirects(true);
HttpURLConnection.setFollowRedirects(true);
con.connect();
int status = con.getResponseCode();
response = String.valueOf(status);
- if(status != HttpURLConnection.HTTP_OK){
+ if (status != HttpURLConnection.HTTP_OK) {
if (status == HttpURLConnection.HTTP_MOVED_PERM ||
status == HttpURLConnection.HTTP_MOVED_TEMP ||
- status == HttpURLConnection.HTTP_SEE_OTHER || status == 307){
+ status == HttpURLConnection.HTTP_SEE_OTHER || status == 307) {
redirect = true;
}
}
- System.out.println("Status code: "+status);
- if(redirect) {
+ System.out.println("Status code: " + status);
+ if (redirect) {
// get redirect url from "location" header field
String newUrl = con.getHeaderField("Location");
this.userurl = newUrl;
@@ -202,14 +194,15 @@ public class LoginActivity extends ActionBarActivity {
System.out.println("Redirect to URL : " + newUrl);
con.connect();
}
- BufferedReader br = new BufferedReader(new InputStreamReader(con.getInputStream()));
+ BufferedReader br = new BufferedReader(new InputStreamReader(con
+ .getInputStream()));
StringBuilder sb = new StringBuilder();
String s = "";
- while((s = br.readLine())!= null ){
+ while ((s = br.readLine()) != null) {
sb.append(s);
}
br.close();
- System.out.println("data: "+sb.toString());
+ System.out.println("data: " + sb.toString());
con.disconnect();
@@ -227,20 +220,24 @@ public class LoginActivity extends ActionBarActivity {
@Override
protected void onPostExecute(String response) {
pd.dismiss();
- if(response != null) {
- switch(Integer.parseInt(response)){
+ if (response != null) {
+ switch (Integer.parseInt(response)) {
case 401:
- Toast.makeText(getActivity(), getActivity().getString(R.string.auth_err), Toast.LENGTH_LONG).show();
+ Toast.makeText(getActivity(), getActivity().getString(R.string
+ .auth_err), Toast.LENGTH_LONG).show();
break;
case 200:
case 307:
- this.context.startActivity(new Intent(this.context, DashboardMainActivity.class));
- getActivity().overridePendingTransition(R.anim.abc_slide_in_bottom, R.anim.abc_slide_out_top);
+ this.context.startActivity(new Intent(this.context,
+ DashboardMainActivity.class));
+ getActivity().overridePendingTransition(R.anim.abc_slide_in_bottom, R
+ .anim.abc_slide_out_top);
getActivity().finish();
break;
}
- }else{
- Toast.makeText(getActivity(), getActivity().getString(R.string.servererr), Toast.LENGTH_LONG).show();
+ } else {
+ Toast.makeText(getActivity(), getActivity().getString(R.string.servererr),
+ Toast.LENGTH_LONG).show();
}
}
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/activities/RunResult.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/activities/RunResult.java b/app/src/main/java/org/apache/taverna/mobile/activities/RunResult.java
index 5459344..df91731 100644
--- a/app/src/main/java/org/apache/taverna/mobile/activities/RunResult.java
+++ b/app/src/main/java/org/apache/taverna/mobile/activities/RunResult.java
@@ -1,13 +1,13 @@
package org.apache.taverna.mobile.activities;
+import org.apache.taverna.mobile.R;
+import org.apache.taverna.mobile.fragments.workflowdetails.RunFragment;
+
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.view.Menu;
import android.view.MenuItem;
-import org.apache.taverna.mobile.R;
-import org.apache.taverna.mobile.fragments.workflowdetails.RunFragment;
-
public class RunResult extends ActionBarActivity {
@Override
@@ -30,7 +30,7 @@ public class RunResult extends ActionBarActivity {
@Override
public boolean onOptionsItemSelected(MenuItem item) {
- this.finish();
+ this.finish();
return super.onOptionsItemSelected(item);
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/activities/SettingsActivity.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/activities/SettingsActivity.java b/app/src/main/java/org/apache/taverna/mobile/activities/SettingsActivity.java
index 4a5048d..3dd2e5d 100644
--- a/app/src/main/java/org/apache/taverna/mobile/activities/SettingsActivity.java
+++ b/app/src/main/java/org/apache/taverna/mobile/activities/SettingsActivity.java
@@ -2,10 +2,10 @@ package org.apache.taverna.mobile.activities;
/**
* Apache Taverna Mobile
* Copyright 2015 The Apache Software Foundation
-
+ *
* This product includes software developed at
* The Apache Software Foundation (http://www.apache.org/).
-
+ *
* 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
@@ -24,6 +24,8 @@ package org.apache.taverna.mobile.activities;
* under the License.
*/
+import org.apache.taverna.mobile.R;
+
import android.annotation.TargetApi;
import android.content.Context;
import android.content.res.Configuration;
@@ -34,12 +36,9 @@ import android.preference.Preference;
import android.preference.PreferenceActivity;
import android.preference.PreferenceFragment;
import android.preference.PreferenceManager;
-import android.support.annotation.NonNull;
import android.support.v4.app.NavUtils;
import android.view.MenuItem;
-import org.apache.taverna.mobile.R;
-
import java.util.List;
/**
@@ -61,11 +60,84 @@ public class SettingsActivity extends PreferenceActivity {
* shown on tablets.
*/
private static final boolean ALWAYS_SIMPLE_PREFS = false;
+ /**
+ * A preference value change listener that updates the preference's summary
+ * to reflect its new value.
+ */
+ private static Preference.OnPreferenceChangeListener sBindPreferenceSummaryToValueListener =
+ new Preference.OnPreferenceChangeListener() {
+ @Override
+ public boolean onPreferenceChange(Preference preference, Object value) {
+ String stringValue = value.toString();
+
+ if (preference instanceof ListPreference) {
+ // For list preferences, look up the correct display value in
+ // the preference's 'entries' list.
+ ListPreference listPreference = (ListPreference) preference;
+ int index = listPreference.findIndexOfValue(stringValue);
+
+ // Set the summary to reflect the new value.
+ preference.setSummary(
+ index >= 0
+ ? listPreference.getEntries()[index]
+ : null);
+
+ } else {
+ // For all other preferences, set the summary to the value's
+ // simple string representation.
+ preference.setSummary(stringValue);
+ }
+ return true;
+ }
+ };
+
+ /**
+ * Helper method to determine if the device has an extra-large screen. For
+ * example, 10" tablets are extra-large.
+ */
+ private static boolean isXLargeTablet(Context context) {
+ return (context.getResources().getConfiguration().screenLayout
+ & Configuration.SCREENLAYOUT_SIZE_MASK) >= Configuration.SCREENLAYOUT_SIZE_XLARGE;
+ }
+
+ /**
+ * Determines whether the simplified settings UI should be shown. This is
+ * true if this is forced via {@link #ALWAYS_SIMPLE_PREFS}, or the device
+ * doesn't have newer APIs like {@link PreferenceFragment}, or the device
+ * doesn't have an extra-large screen. In these cases, a single-pane
+ * "simplified" settings UI should be shown.
+ */
+ private static boolean isSimplePreferences(Context context) {
+ return ALWAYS_SIMPLE_PREFS
+ || Build.VERSION.SDK_INT < Build.VERSION_CODES.HONEYCOMB
+ || !isXLargeTablet(context);
+ }
+
+ /**
+ * Binds a preference's summary to its value. More specifically, when the
+ * preference's value is changed, its summary (line of text below the
+ * preference title) is updated to reflect the value. The summary is also
+ * immediately updated upon calling this method. The exact display format is
+ * dependent on the type of preference.
+ *
+ * @see #sBindPreferenceSummaryToValueListener
+ */
+ private static void bindPreferenceSummaryToValue(Preference preference) {
+ // Set the listener to watch for value changes.
+ preference.setOnPreferenceChangeListener(sBindPreferenceSummaryToValueListener);
+
+ // Trigger the listener immediately with the preference's
+ // current value.
+ sBindPreferenceSummaryToValueListener.onPreferenceChange(preference,
+ PreferenceManager
+ .getDefaultSharedPreferences(preference.getContext())
+ .getString(preference.getKey(), ""));
+ }
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- // setupActionBar();
+ // setupActionBar();
}
/**
@@ -138,28 +210,6 @@ public class SettingsActivity extends PreferenceActivity {
}
/**
- * Helper method to determine if the device has an extra-large screen. For
- * example, 10" tablets are extra-large.
- */
- private static boolean isXLargeTablet(Context context) {
- return (context.getResources().getConfiguration().screenLayout
- & Configuration.SCREENLAYOUT_SIZE_MASK) >= Configuration.SCREENLAYOUT_SIZE_XLARGE;
- }
-
- /**
- * Determines whether the simplified settings UI should be shown. This is
- * true if this is forced via {@link #ALWAYS_SIMPLE_PREFS}, or the device
- * doesn't have newer APIs like {@link PreferenceFragment}, or the device
- * doesn't have an extra-large screen. In these cases, a single-pane
- * "simplified" settings UI should be shown.
- */
- private static boolean isSimplePreferences(Context context) {
- return ALWAYS_SIMPLE_PREFS
- || Build.VERSION.SDK_INT < Build.VERSION_CODES.HONEYCOMB
- || !isXLargeTablet(context);
- }
-
- /**
* {@inheritDoc}
*/
@Override
@@ -171,57 +221,6 @@ public class SettingsActivity extends PreferenceActivity {
}
/**
- * A preference value change listener that updates the preference's summary
- * to reflect its new value.
- */
- private static Preference.OnPreferenceChangeListener sBindPreferenceSummaryToValueListener = new Preference.OnPreferenceChangeListener() {
- @Override
- public boolean onPreferenceChange(Preference preference, Object value) {
- String stringValue = value.toString();
-
- if (preference instanceof ListPreference) {
- // For list preferences, look up the correct display value in
- // the preference's 'entries' list.
- ListPreference listPreference = (ListPreference) preference;
- int index = listPreference.findIndexOfValue(stringValue);
-
- // Set the summary to reflect the new value.
- preference.setSummary(
- index >= 0
- ? listPreference.getEntries()[index]
- : null);
-
- } else {
- // For all other preferences, set the summary to the value's
- // simple string representation.
- preference.setSummary(stringValue);
- }
- return true;
- }
- };
-
- /**
- * Binds a preference's summary to its value. More specifically, when the
- * preference's value is changed, its summary (line of text below the
- * preference title) is updated to reflect the value. The summary is also
- * immediately updated upon calling this method. The exact display format is
- * dependent on the type of preference.
- *
- * @see #sBindPreferenceSummaryToValueListener
- */
- private static void bindPreferenceSummaryToValue(Preference preference) {
- // Set the listener to watch for value changes.
- preference.setOnPreferenceChangeListener(sBindPreferenceSummaryToValueListener);
-
- // Trigger the listener immediately with the preference's
- // current value.
- sBindPreferenceSummaryToValueListener.onPreferenceChange(preference,
- PreferenceManager
- .getDefaultSharedPreferences(preference.getContext())
- .getString(preference.getKey(), ""));
- }
-
- /**
* This fragment shows general preferences only. It is used when the
* activity is showing a two-pane settings UI.
*/
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/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 170621b..23dbf05 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
@@ -3,10 +3,10 @@ package org.apache.taverna.mobile.activities;
/**
* Apache Taverna Mobile
* Copyright 2015 The Apache Software Foundation
-
+ *
* This product includes software developed at
* The Apache Software Foundation (http://www.apache.org/).
-
+ *
* 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
@@ -25,6 +25,12 @@ package org.apache.taverna.mobile.activities;
* under the License.
*/
+import org.apache.taverna.mobile.R;
+import org.apache.taverna.mobile.fragments.workflowdetails.WorkflowAboutFragment;
+import org.apache.taverna.mobile.fragments.workflowdetails.WorkflowLicenceFragment;
+import org.apache.taverna.mobile.fragments.workflowdetails.WorkflowRunHistoryFragment;
+import org.apache.taverna.mobile.fragments.workflowdetails.WorkflowdetailFragment;
+
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
@@ -34,12 +40,6 @@ import android.support.v7.app.ActionBarActivity;
import android.view.Menu;
import android.view.MenuItem;
-import org.apache.taverna.mobile.R;
-import org.apache.taverna.mobile.fragments.workflowdetails.WorkflowAboutFragment;
-import org.apache.taverna.mobile.fragments.workflowdetails.WorkflowLicenceFragment;
-import org.apache.taverna.mobile.fragments.workflowdetails.WorkflowRunHistoryFragment;
-import org.apache.taverna.mobile.fragments.workflowdetails.WorkflowdetailFragment;
-
import java.util.Locale;
public class WorkflowDetailActivity extends ActionBarActivity {
@@ -80,16 +80,17 @@ public class WorkflowDetailActivity extends ActionBarActivity {
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
- if(item.getItemId() == android.R.id.home){
+ if (item.getItemId() == android.R.id.home) {
finish();
- this.overridePendingTransition(android.R.anim.fade_in, android.R.anim.slide_out_right );
+ this.overridePendingTransition(android.R.anim.fade_in, android.R.anim.slide_out_right);
}
return super.onOptionsItemSelected(item);
}
+
@Override
- public void onBackPressed(){
+ public void onBackPressed() {
finish();
- this.overridePendingTransition(android.R.anim.fade_in, android.R.anim.slide_out_right );
+ this.overridePendingTransition(android.R.anim.fade_in, android.R.anim.slide_out_right);
}
/**
@@ -104,16 +105,17 @@ public class WorkflowDetailActivity extends ActionBarActivity {
@Override
public Fragment getItem(int position) {
- switch(position +1){
+ switch (position + 1) {
case 1:
- return WorkflowdetailFragment.newInstance(position + 1);
+ return WorkflowdetailFragment.newInstance(position + 1);
case 2:
//System.out.println(""+getIntent().getStringExtra("wtitle"));
- return WorkflowRunHistoryFragment.newInstance(getIntent().getStringExtra("wtitle"));
+ return WorkflowRunHistoryFragment.newInstance(getIntent().getStringExtra
+ ("wtitle"));
case 3:
- return WorkflowLicenceFragment.newInstance("","");
+ return WorkflowLicenceFragment.newInstance("", "");
case 4:
- return WorkflowAboutFragment.newInstance("","");
+ return WorkflowAboutFragment.newInstance("", "");
}
return WorkflowdetailFragment.newInstance(position + 1);
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/adapters/FavoriteWorkflowAdapter.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/adapters/FavoriteWorkflowAdapter.java b/app/src/main/java/org/apache/taverna/mobile/adapters/FavoriteWorkflowAdapter.java
index a32be48..bfe292a 100644
--- a/app/src/main/java/org/apache/taverna/mobile/adapters/FavoriteWorkflowAdapter.java
+++ b/app/src/main/java/org/apache/taverna/mobile/adapters/FavoriteWorkflowAdapter.java
@@ -2,10 +2,10 @@ package org.apache.taverna.mobile.adapters;
/**
* Apache Taverna Mobile
* Copyright 2015 The Apache Software Foundation
-
+ *
* This product includes software developed at
* The Apache Software Foundation (http://www.apache.org/).
-
+ *
* 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
@@ -24,6 +24,10 @@ package org.apache.taverna.mobile.adapters;
* under the License.
*/
+import org.apache.taverna.mobile.R;
+import org.apache.taverna.mobile.utils.WorkflowDB;
+import org.json.JSONException;
+
import android.app.Dialog;
import android.content.Context;
import android.content.SharedPreferences;
@@ -35,39 +39,37 @@ import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
-import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
-import org.apache.taverna.mobile.R;
-import org.apache.taverna.mobile.utils.Workflow_DB;
-import org.json.JSONException;
-
import java.util.ArrayList;
import java.util.List;
/**
* Created by Larry Akah on 6/9/15.
*/
-public class FavoriteWorkflowAdapter extends RecyclerView.Adapter<FavoriteWorkflowAdapter.FViewHolder> {
+public class FavoriteWorkflowAdapter extends RecyclerView.Adapter<FavoriteWorkflowAdapter
+ .FViewHolder> {
+ public WorkflowDB favDB;
private Context context;
private List<ArrayList<Object>> dataSet;
- public Workflow_DB favDB;
public FavoriteWorkflowAdapter(Context c, List<ArrayList<Object>> data) {
context = c;
dataSet = data;
- favDB = new Workflow_DB(context, WorkflowAdapter.WORKFLOW_FAVORITE_KEY);
+ favDB = new WorkflowDB(context, WorkflowAdapter.WORKFLOW_FAVORITE_KEY);
}
@Override
public FViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
- View itemview = LayoutInflater.from(context).inflate(R.layout.favorite_item_layout, viewGroup, false);
+ View itemview = LayoutInflater.from(context).inflate(R.layout.favorite_item_layout,
+ viewGroup, false);
FViewHolder vh = new FViewHolder(itemview);
return vh;
}
+
/**
* Register a new observer to listen for data changes.
* <p/>
@@ -77,17 +79,20 @@ public class FavoriteWorkflowAdapter extends RecyclerView.Adapter<FavoriteWorkfl
* "something changed"} event if more specific data is not available.</p>
* <p/>
* <p>Components registering observers with an adapter are responsible for
- * {@link #unregisterAdapterDataObserver(android.support.v7.widget.RecyclerView.AdapterDataObserver)
+ * {@link #unregisterAdapterDataObserver(android.support.v7.widget.RecyclerView
+ * .AdapterDataObserver)
* unregistering} those observers when finished.</p>
*
* @param observer Observer to register
- * @see #unregisterAdapterDataObserver(android.support.v7.widget.RecyclerView.AdapterDataObserver)
+ * @see #unregisterAdapterDataObserver(android.support.v7.widget.RecyclerView
+ * .AdapterDataObserver)
*/
@Override
public void registerAdapterDataObserver(RecyclerView.AdapterDataObserver observer) {
super.registerAdapterDataObserver(observer);
//observer.onChanged();
}
+
/**
* Unregister an observer currently listening for data changes.
* <p/>
@@ -115,13 +120,14 @@ public class FavoriteWorkflowAdapter extends RecyclerView.Adapter<FavoriteWorkfl
@Override
public void onClick(View view) {
try {
- Toast.makeText(context, String.format("%s", "Removed "),Toast.LENGTH_SHORT).show();
+ Toast.makeText(context, String.format("%s", "Removed "), Toast.LENGTH_SHORT)
+ .show();
//removeMarkedWorkflow(String.valueOf(data.get(0)));
favDB.delete(String.valueOf(data.get(0)));
notifyDataSetChanged();
} catch (JSONException e) {
e.printStackTrace();
- }catch(Exception ex){
+ } catch (Exception ex) {
ex.printStackTrace();
}
@@ -132,27 +138,32 @@ public class FavoriteWorkflowAdapter extends RecyclerView.Adapter<FavoriteWorkfl
public void onClick(View view) {
Dialog d = new Dialog(context);
TextView textView = new TextView(context);
- String text = "Author -> "+ (String) data.get(6) + "\nTitle: "+data.get(2)+"\nDescription\n"+data.get(3);
+ String text = "Author -> " + (String) data.get(6) + "\nTitle: " + data.get(2) +
+ "\nDescription\n" + data.get(3);
textView.setText(text);
textView.setTextSize(22);
textView.setTextColor(Color.BLACK);
- d.setTitle(""+data.get(2));
+ d.setTitle("" + data.get(2));
d.setContentView(textView);
d.show();
}
});
}
+
//remove a workflow from the marked state
- private void removeMarkedWorkflow(String strToRemove){
- SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(context);
- char[] charsequence = sharedPreferences.getString(WorkflowAdapter.FAVORITE_LIST_DB, "").toCharArray();
- for(int i=0; i<charsequence.length; i++){
- if(charsequence[i] == strToRemove.charAt(0)){
+ private void removeMarkedWorkflow(String strToRemove) {
+ SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences
+ (context);
+ char[] charsequence = sharedPreferences.getString(WorkflowAdapter.FAVORITE_LIST_DB, "")
+ .toCharArray();
+ for (int i = 0; i < charsequence.length; i++) {
+ if (charsequence[i] == strToRemove.charAt(0)) {
charsequence[i] = '0';
break;
}
}
- sharedPreferences.edit().putString(WorkflowAdapter.FAVORITE_LIST_DB, charsequence.toString()).apply();
+ sharedPreferences.edit().putString(WorkflowAdapter.FAVORITE_LIST_DB, charsequence
+ .toString()).apply();
}
@Override
@@ -160,23 +171,24 @@ public class FavoriteWorkflowAdapter extends RecyclerView.Adapter<FavoriteWorkfl
return dataSet.size();
}
- public ArrayList<Object> getDataItemAt(int position){
- return dataSet.size() == 0? null: dataSet.get(position);
+ public ArrayList<Object> getDataItemAt(int position) {
+ return dataSet.size() == 0 ? null : dataSet.get(position);
}
public class FViewHolder extends RecyclerView.ViewHolder {
public final ImageView favorite_thumb;
- public final TextView author, title, dateMarked;// dateAdd;
+ public final TextView author, title, dateMarked; // dateAdd;
public final FloatingActionButton btn_delete;
public final Button btn_view_fav;
+
public FViewHolder(View itemView) {
super(itemView);
favorite_thumb = (ImageView) itemView.findViewById(R.id.author_profile_image);
author = (TextView) itemView.findViewById(R.id.author);
title = (TextView) itemView.findViewById(R.id.favorite_title);
dateMarked = (TextView) itemView.findViewById(R.id.date_set);
- btn_delete = (FloatingActionButton) itemView.findViewById(R.id.favoriteButtonDelete);
+ btn_delete = (FloatingActionButton) itemView.findViewById(R.id.favoriteButtonDelete);
btn_view_fav = (Button) itemView.findViewById(R.id.buttonOpenFavorite);
}
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/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 e22d2e1..4a55423 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
@@ -2,10 +2,10 @@ package org.apache.taverna.mobile.adapters;
/**
* Apache Taverna Mobile
* Copyright 2015 The Apache Software Foundation
-
+ *
* This product includes software developed at
* The Apache Software Foundation (http://www.apache.org/).
-
+ *
* 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
@@ -23,6 +23,10 @@ package org.apache.taverna.mobile.adapters;
* specific language governing permissions and limitations
* under the License.
*/
+
+import org.apache.taverna.mobile.R;
+import org.apache.taverna.mobile.tavernamobile.Runs;
+
import android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
@@ -31,9 +35,6 @@ import android.view.ViewGroup;
import android.widget.ImageButton;
import android.widget.TextView;
-import org.apache.taverna.mobile.R;
-import org.apache.taverna.mobile.tavernamobile.Runs;
-
import java.util.List;
@@ -50,7 +51,9 @@ public class RunAdapter extends RecyclerView.Adapter<RunAdapter.RunHolder> {
}
/**
- * Called when RecyclerView needs a new {@link android.support.v7.widget.RecyclerView.ViewHolder} of the given type to represent
+ * Called when RecyclerView needs a new
+ * {@link android.support.v7.widget.RecyclerView.ViewHolder}
+ * of the given type to represent
* an item.
* <p/>
* This new ViewHolder should be constructed with a new View that can represent the items
@@ -70,13 +73,15 @@ public class RunAdapter extends RecyclerView.Adapter<RunAdapter.RunHolder> {
*/
@Override
public RunHolder onCreateViewHolder(ViewGroup parent, int viewType) {
- View v = LayoutInflater.from(context).inflate(R.layout.workflow_run_item,parent, false);
+ View v = LayoutInflater.from(context).inflate(R.layout.workflow_run_item, parent, false);
return new RunHolder(v);
}
/**
* Called by RecyclerView to display the data at the specified position. This method
- * should update the contents of the {@link android.support.v7.widget.RecyclerView.ViewHolder#itemView} to reflect the item at
+ * should update the contents of the
+ * {@link android.support.v7.widget.RecyclerView.ViewHolder#itemView}
+ * to reflect the item at
* the given position.
* <p/>
* Note that unlike {@link android.widget.ListView}, RecyclerView will not call this
@@ -84,7 +89,9 @@ public class RunAdapter extends RecyclerView.Adapter<RunAdapter.RunHolder> {
* is invalidated or the new position cannot be determined. For this reason, you should only
* use the <code>position</code> parameter while acquiring the related data item inside this
* method and should not keep a copy of it. If you need the position of an item later on
- * (e.g. in a click listener), use {@link android.support.v7.widget.RecyclerView.ViewHolder#getAdapterPosition()} which will have
+ * (e.g. in a click listener), use
+ * {@link android.support.v7.widget.RecyclerView.ViewHolder#getAdapterPosition()}
+ * which will have
* the updated adapter position.
*
* @param holder The ViewHolder which should be updated to represent the contents of the
@@ -97,8 +104,8 @@ public class RunAdapter extends RecyclerView.Adapter<RunAdapter.RunHolder> {
holder.runtitle.setText(lRun.getRun_name());
holder.runstarted.setText(lRun.getRun_started_date());
holder.runfinished.setText(lRun.getRun_ended_date());
- holder.runAuthor.setText("Author->"+lRun.getRun_author());
- switch(lRun.getState()){
+ holder.runAuthor.setText("Author->" + lRun.getRun_author());
+ switch (lRun.getState()) {
case RUNNING:
holder.runStatus.setImageResource(android.R.drawable.presence_busy);
holder.textState.setText("Running");
@@ -115,7 +122,7 @@ public class RunAdapter extends RecyclerView.Adapter<RunAdapter.RunHolder> {
}
- public List<Runs> getRunList(){
+ public List<Runs> getRunList() {
return this.runList;
}
@@ -135,7 +142,7 @@ public class RunAdapter extends RecyclerView.Adapter<RunAdapter.RunHolder> {
}
public static class RunHolder extends RecyclerView.ViewHolder {
- public final TextView runtitle, runstarted, runfinished,textState,runAuthor;
+ public final TextView runtitle, runstarted, runfinished, textState, runAuthor;
public final ImageButton runStatus;
public RunHolder(View itemView) {
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/adapters/SliderMenuAdapter.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/adapters/SliderMenuAdapter.java b/app/src/main/java/org/apache/taverna/mobile/adapters/SliderMenuAdapter.java
index 9b702a1..5a4bbc2 100644
--- a/app/src/main/java/org/apache/taverna/mobile/adapters/SliderMenuAdapter.java
+++ b/app/src/main/java/org/apache/taverna/mobile/adapters/SliderMenuAdapter.java
@@ -2,10 +2,10 @@ package org.apache.taverna.mobile.adapters;
/**
* Apache Taverna Mobile
* Copyright 2015 The Apache Software Foundation
-
+ *
* This product includes software developed at
* The Apache Software Foundation (http://www.apache.org/).
-
+ *
* 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
@@ -24,6 +24,8 @@ package org.apache.taverna.mobile.adapters;
* under the License.
*/
+import org.apache.taverna.mobile.R;
+
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
@@ -32,19 +34,17 @@ import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;
-import org.apache.taverna.mobile.R;
-
import java.util.List;
/**
* Created by root on 6/7/15.
*/
-public class SliderMenuAdapter extends BaseAdapter{
+public class SliderMenuAdapter extends BaseAdapter {
private List<String> dataItems;
private Context context;
- public SliderMenuAdapter(Context c,List<String> items){
+ public SliderMenuAdapter(Context c, List<String> items) {
dataItems = items;
context = c;
}
@@ -67,11 +67,12 @@ public class SliderMenuAdapter extends BaseAdapter{
@Override
public View getView(int i, View view, ViewGroup viewGroup) {
- View menuitemview = LayoutInflater.from(context).inflate(R.layout.menu_item_layout, viewGroup, false);
+ View menuitemview = LayoutInflater.from(context).inflate(R.layout.menu_item_layout,
+ viewGroup, false);
ImageView menuicon = (ImageView) menuitemview.findViewById(R.id.menuIcon);
TextView menuitem = (TextView) menuitemview.findViewById(R.id.menuItemText);
- switch(i +1){
+ switch (i + 1) {
case 1:
menuicon.setImageResource(R.mipmap.ic_dashboard_home);
menuitem.setText(dataItems.get(i));
@@ -100,11 +101,11 @@ public class SliderMenuAdapter extends BaseAdapter{
return menuitemview;
}
- public static class ViewHolder{
+ public static class ViewHolder {
public final ImageView menuicon;
public final TextView menuitem;
- public ViewHolder(View view){
+ public ViewHolder(View view) {
menuicon = (ImageView) view.findViewById(R.id.menuIcon);
menuitem = (TextView) view.findViewById(R.id.menuItemText);
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/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 1394422..19ee4f3 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
@@ -2,10 +2,10 @@ package org.apache.taverna.mobile.adapters;
/**
* Apache Taverna Mobile
* Copyright 2015 The Apache Software Foundation
-
+ *
* This product includes software developed at
* The Apache Software Foundation (http://www.apache.org/).
-
+ *
* 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
@@ -24,6 +24,17 @@ package org.apache.taverna.mobile.adapters;
* under the License.
*/
+import com.thebuzzmedia.sjxp.rule.IRule;
+
+import org.apache.taverna.mobile.R;
+import org.apache.taverna.mobile.activities.WorkflowDetailActivity;
+import org.apache.taverna.mobile.fragments.workflowdetails.WorkflowdetailFragment;
+import org.apache.taverna.mobile.tavernamobile.User;
+import org.apache.taverna.mobile.tavernamobile.Workflow;
+import org.apache.taverna.mobile.utils.WorkflowDB;
+import org.apache.taverna.mobile.utils.xmlparsers.MyExperimentXmlParserRules;
+import org.apache.taverna.mobile.utils.xmlparsers.WorkflowDetailParser;
+
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
@@ -41,18 +52,6 @@ import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.Toast;
-import com.thebuzzmedia.sjxp.rule.IRule;
-
-import org.apache.taverna.mobile.R;
-import org.apache.taverna.mobile.activities.WorkflowDetailActivity;
-import org.apache.taverna.mobile.fragments.workflowdetails.WorkflowdetailFragment;
-import org.apache.taverna.mobile.tavernamobile.User;
-import org.apache.taverna.mobile.tavernamobile.Workflow;
-import org.apache.taverna.mobile.utils.Workflow_DB;
-import org.apache.taverna.mobile.utils.xmlparsers.MyExperimentXmlParserRules;
-import org.apache.taverna.mobile.utils.xmlparsers.WorkflowDetailParser;
-import org.json.JSONException;
-
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
@@ -66,34 +65,37 @@ import java.util.List;
/**
* Created by Larry Akah on 6/8/15.
*/
-public class WorkflowAdapter extends RecyclerView.Adapter<WorkflowAdapter.ViewHolder>{
+public class WorkflowAdapter extends RecyclerView.Adapter<WorkflowAdapter.ViewHolder> {
+ public static final String WORKFLOW_FAVORITE_KEY = "WORKFLOW_FAVORITES"; //workflow key used
+ // to save workflows when marked as favorites
+ public static final String FAVORITE_LIST_DB = "FAVORITE_LIST";
+ public WorkflowDB favDB; //favorited keeps items that have been favorited in order to
+ // identify them during
private Context context;
private List<Workflow> workflowList; //workflow data to bind to the UI
private WorkflowAdapter.ViewHolder mViewHolder;
- public static final String WORKFLOW_FAVORITE_KEY = "WORKFLOW_FAVORITES"; //workflow key used to save workflows when marked as favorites
- public static final String FAVORITE_LIST_DB = "FAVORITE_LIST";
- public Workflow_DB favDB; //favorited keeps items that have been favorited in order to identify them during
- // display in the list.
+
+ // display in the list.
public WorkflowAdapter(Context c, List<Workflow> wk) {
context = c;
workflowList = wk;
- favDB = new Workflow_DB(context, WORKFLOW_FAVORITE_KEY);
+ favDB = new WorkflowDB(context, WORKFLOW_FAVORITE_KEY);
}
- public WorkflowAdapter(Context c){
+ public WorkflowAdapter(Context c) {
context = c;
workflowList = new ArrayList<Workflow>();
- favDB = new Workflow_DB(context, WORKFLOW_FAVORITE_KEY);
+ favDB = new WorkflowDB(context, WORKFLOW_FAVORITE_KEY);
}
- public void addItems(List<Workflow> workflow, int position) throws ClassCastException{
+ public void addItems(List<Workflow> workflow, int position) throws ClassCastException {
//add items to the current list of list
- //workflowList.add(position,workflow);
+ //workflowList.add(position,workflow);
workflowList.addAll(workflow);
notifyItemRangeInserted(position + 24, 25);
}
- public void removeItem(Workflow workflow){
+ public void removeItem(Workflow workflow) {
workflowList.remove(workflow);
//notifyItemRemoved();
}
@@ -107,11 +109,13 @@ public class WorkflowAdapter extends RecyclerView.Adapter<WorkflowAdapter.ViewHo
* "something changed"} event if more specific data is not available.</p>
* <p/>
* <p>Components registering observers with an adapter are responsible for
- * {@link #unregisterAdapterDataObserver(android.support.v7.widget.RecyclerView.AdapterDataObserver)
+ * {@link #unregisterAdapterDataObserver(android.support.v7.widget.RecyclerView
+ * .AdapterDataObserver)
* unregistering} those observers when finished.</p>
*
* @param observer Observer to register
- * @see #unregisterAdapterDataObserver(android.support.v7.widget.RecyclerView.AdapterDataObserver)
+ * @see #unregisterAdapterDataObserver(android.support.v7.widget.RecyclerView
+ * .AdapterDataObserver)
*/
@Override
public void registerAdapterDataObserver(RecyclerView.AdapterDataObserver observer) {
@@ -134,15 +138,17 @@ public class WorkflowAdapter extends RecyclerView.Adapter<WorkflowAdapter.ViewHo
@Override
public WorkflowAdapter.ViewHolder onCreateViewHolder(ViewGroup parentViewGroup, int viewType) {
- View v = LayoutInflater.from(context).inflate(R.layout.workflow_item_layout,parentViewGroup,false);
+ View v = LayoutInflater.from(context).inflate(R.layout.workflow_item_layout,
+ parentViewGroup, false);
mViewHolder = new ViewHolder(v);
return mViewHolder;
}
/**
* Bind data set items for each data
+ *
* @param viewHolder the recycled view used to bind data (Overwrite data values)
- * @param i position of data in the dataset to use.
+ * @param i position of data in the dataset to use.
*/
@Override
public void onBindViewHolder(final ViewHolder viewHolder, int i) {
@@ -151,41 +157,45 @@ public class WorkflowAdapter extends RecyclerView.Adapter<WorkflowAdapter.ViewHo
final String author = workflowList.get(i).getWorkflow_author();
// final String author = workflowList.get(i).getUploader().getName();
final String title = workflowList.get(i).getWorkflow_title();
- String description = workflowList.get(i).getWorkflow_description();
+ String description = workflowList.get(i).getWorkflow_description();
final String uri = workflowList.get(i).getWorkflow_details_url();
final String desc_full = description;
- if(description.length() > 80) description = description.substring(0, 79)+" ...";
+ if (description.length() > 80) description = description.substring(0, 79) + " ...";
viewHolder.author_name.setHint(author);
viewHolder.wk_title.setHint(title);
viewHolder.wk_description.setText(description);
Linkify.addLinks(viewHolder.wk_description, Linkify.WEB_URLS);
final Intent it = new Intent();
- System.out.println("Workflow_uri:"+uri);
+ System.out.println("Workflow_uri:" + uri);
it.setClass(context, WorkflowDetailActivity.class);
// it.putExtra("workflowid", workflow.get(i).getId()); //workflow_url
- it.putExtra("uri",uri);//uri
- it.putExtra("wtitle", title); //pass this workflow's title to the detail activity so the corresponding run can be fetched
+ it.putExtra("uri", uri); //uri
+ it.putExtra("wtitle", title); //pass this workflow's title to the detail activity so the
+ // corresponding run can be fetched
it.putExtra("wid", wid);
- WorkflowdetailFragment.WORKFLO_ID = title;//workflow.get(i).getId();
-
- //determine whether to mark button as favorited or not
- final String favs = PreferenceManager.getDefaultSharedPreferences(context).getString(FAVORITE_LIST_DB, "");
- String[] ids = favs.split(",");
- if(ids.length > 0) {
- for (String id : ids)
- if (id.equalsIgnoreCase("" + wid)){
- viewHolder.btn_mark_workflow.setBackgroundResource(R.drawable.abc_list_selector_disabled_holo_light);
- break;
- }
- }
+ WorkflowdetailFragment.WORKFLO_ID = title; //workflow.get(i).getId();
+
+ //determine whether to mark button as favorited or not
+ final String favs = PreferenceManager.getDefaultSharedPreferences(context).getString
+ (FAVORITE_LIST_DB, "");
+ String[] ids = favs.split(",");
+ if (ids.length > 0) {
+ for (String id : ids)
+ if (id.equalsIgnoreCase("" + wid)) {
+ viewHolder.btn_mark_workflow.setBackgroundResource(R.drawable
+ .abc_list_selector_disabled_holo_light);
+ break;
+ }
+ }
viewHolder.btn_view_workflow.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
context.startActivity(it);
- ((Activity) context).overridePendingTransition(android.R.anim.slide_in_left, android.R.anim.fade_out);
+ ((Activity) context).overridePendingTransition(android.R.anim.slide_in_left,
+ android.R.anim.fade_out);
}
});
@@ -194,33 +204,43 @@ public class WorkflowAdapter extends RecyclerView.Adapter<WorkflowAdapter.ViewHo
public void onClick(View view) {
ArrayList<Object> mfav = new ArrayList<Object>();
//save current workflow as favorite
- mfav.add(wid); mfav.add(author);mfav.add(title);mfav.add(desc_full);
+ mfav.add(wid);
+ mfav.add(author);
+ mfav.add(title);
+ mfav.add(desc_full);
mfav.add(SimpleDateFormat.getDateTimeInstance().format(new Date()));
mfav.add(uri);
mfav.add(viewHolder.author_name.getText());
int saved = favDB.insert(mfav);
- if(saved >0) {
- viewHolder.btn_mark_workflow.setBackgroundResource(R.drawable.abc_list_selector_disabled_holo_light);
+ if (saved > 0) {
+ viewHolder.btn_mark_workflow.setBackgroundResource(R.drawable
+ .abc_list_selector_disabled_holo_light);
- PreferenceManager.getDefaultSharedPreferences(context).edit().putString(FAVORITE_LIST_DB, favs+wid+",").apply();
+ PreferenceManager.getDefaultSharedPreferences(context).edit().putString
+ (FAVORITE_LIST_DB, favs + wid + ",").apply();
//refresh fragment since data has changed
- FavoriteWorkflowAdapter favoriteWorkflowAdapter = (FavoriteWorkflowAdapter) ((RecyclerView) ((Activity) context).findViewById(R.id.favoriteList)).getAdapter();
- //try {
- if(null != favoriteWorkflowAdapter)
- favoriteWorkflowAdapter.notifyDataSetChanged();
- //}catch(NullPointerException np){
- // np.printStackTrace();
- // }
- Toast.makeText(context, "Workflow marked as favorite", Toast.LENGTH_SHORT).show();
- }else if(saved == -1){
- Toast.makeText(context,"Sorry! This workflow has already been marked as a favourite",Toast.LENGTH_SHORT).show();
- }else
- Toast.makeText(context,"Error! Please try again",Toast.LENGTH_SHORT).show();
+ FavoriteWorkflowAdapter favoriteWorkflowAdapter = (FavoriteWorkflowAdapter) (
+ (RecyclerView) ((Activity) context).findViewById(R.id.favoriteList))
+ .getAdapter();
+ //try {
+ if (null != favoriteWorkflowAdapter)
+ favoriteWorkflowAdapter.notifyDataSetChanged();
+ //}catch(NullPointerException np){
+ // np.printStackTrace();
+ // }
+ Toast.makeText(context, "Workflow marked as favorite", Toast.LENGTH_SHORT)
+ .show();
+ } else if (saved == -1) {
+ Toast.makeText(context, "Sorry! This workflow has already been marked as a " +
+ "favourite", Toast.LENGTH_SHORT).show();
+ } else
+ Toast.makeText(context, "Error! Please try again", Toast.LENGTH_SHORT).show();
}
});
- viewHolder.wk_showmore.setText(Html.fromHtml(context.getResources().getString(R.string.seemore)));
+ viewHolder.wk_showmore.setText(Html.fromHtml(context.getResources().getString(R.string
+ .seemore)));
viewHolder.wk_showmore.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
@@ -231,14 +251,15 @@ public class WorkflowAdapter extends RecyclerView.Adapter<WorkflowAdapter.ViewHo
}
});
- synchronized (this){
+ synchronized (this) {
new DetailLinkLoader(viewHolder).execute(uri, String.valueOf(i));
}
}
- public void setData(List<Workflow> workflowList){
+ public void setData(List<Workflow> workflowList) {
this.workflowList = workflowList;
}
+
@Override
public long getItemId(int i) {
return workflowList.get(i).getId();
@@ -249,17 +270,17 @@ public class WorkflowAdapter extends RecyclerView.Adapter<WorkflowAdapter.ViewHo
return workflowList.size();
}
- public Workflow getItem(int position){
+ public Workflow getItem(int position) {
return workflowList.get(position);
}
- public void addWorkflow(Workflow wk){
+ public void addWorkflow(Workflow wk) {
workflowList.add(wk);
}
public static class ViewHolder extends RecyclerView.ViewHolder {
public final ImageView author_profile;
- public final TextView author_name, wk_title,wk_showmore,wk_description;
+ public final TextView author_name, wk_title, wk_showmore, wk_description;
public final Button btn_view_workflow;
public final Button btn_download_workflow;
public final Button btn_mark_workflow;
@@ -273,8 +294,8 @@ public class WorkflowAdapter extends RecyclerView.Adapter<WorkflowAdapter.ViewHo
author_name = (TextView) v.findViewById(R.id.workflow_author);
wk_title = (TextView) v.findViewById(R.id.workflow_title);
wk_showmore = (TextView) v.findViewById(R.id.show_more);
- // wk_created = (TextView) v.findViewById(R.id.workflow_datecreated);
- // wk_modified = (TextView) v.findViewById(R.id.workflow_dateupdated);
+ // wk_created = (TextView) v.findViewById(R.id.workflow_datecreated);
+ // wk_modified = (TextView) v.findViewById(R.id.workflow_dateupdated);
wk_description = (TextView) v.findViewById(R.id.workflow_brief_description);
//cache buttons
btn_download_workflow = (Button) v.findViewById(R.id.button_download_workflow);
@@ -286,15 +307,15 @@ public class WorkflowAdapter extends RecyclerView.Adapter<WorkflowAdapter.ViewHo
/**
* Loads partially details of a given workflow to retrieve author information
*/
- private class DetailLinkLoader extends AsyncTask<String, Void, Void>{
+ private class DetailLinkLoader extends AsyncTask<String, Void, Void> {
ViewHolder mViewHolder;
- public DetailLinkLoader(ViewHolder vh){
+ public DetailLinkLoader(ViewHolder vh) {
this.mViewHolder = vh;
}
@Override
- protected Void doInBackground(String ... strings) {
+ protected Void doInBackground(String... strings) {
URL url = null;
HttpURLConnection connection = null;
try {
@@ -303,9 +324,12 @@ public class WorkflowAdapter extends RecyclerView.Adapter<WorkflowAdapter.ViewHo
connection.setDoInput(true);
connection.connect();
InputStream input = connection.getInputStream();
- IRule avatarRule = new MyExperimentXmlParserRules.UploaderRule(IRule.Type.ATTRIBUTE,"/workflow/uploader", "resource","uri","id");
- IRule uploaderRule = new MyExperimentXmlParserRules.UploaderRule(IRule.Type.CHARACTER,"/workflow/uploader");
- WorkflowDetailParser detailMinParser = new WorkflowDetailParser(new IRule[]{avatarRule,uploaderRule});
+ IRule avatarRule = new MyExperimentXmlParserRules.UploaderRule(IRule.Type
+ .ATTRIBUTE, "/workflow/uploader", "resource", "uri", "id");
+ IRule uploaderRule = new MyExperimentXmlParserRules.UploaderRule(IRule.Type
+ .CHARACTER, "/workflow/uploader");
+ WorkflowDetailParser detailMinParser = new WorkflowDetailParser(new
+ IRule[]{avatarRule, uploaderRule});
detailMinParser.parse(input, new User(strings[1], this.mViewHolder));
} catch (MalformedURLException e) {
[02/18] incubator-taverna-mobile git commit: add checkstyle gradle
file
Posted by st...@apache.org.
add checkstyle gradle file
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/fb652212
Tree: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/tree/fb652212
Diff: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/diff/fb652212
Branch: refs/heads/master
Commit: fb652212562261cc8a41d6418ec56f6bcf436a47
Parents: 4f1f996
Author: Sagar <ku...@gmail.com>
Authored: Thu Jun 9 22:59:05 2016 +0530
Committer: Sagar <ku...@gmail.com>
Committed: Thu Jun 9 22:59:05 2016 +0530
----------------------------------------------------------------------
app/build.gradle | 1 +
config/quality/quality.gradle | 26 ++++++++++++++++++++++++++
2 files changed, 27 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/fb652212/app/build.gradle
----------------------------------------------------------------------
diff --git a/app/build.gradle b/app/build.gradle
index 110480a..fb281bd 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,5 +1,6 @@
apply plugin: 'com.android.application'
apply plugin: 'com.neenbedankt.android-apt'
+apply from: '../config/quality/quality.gradle'
android {
compileSdkVersion 23
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/fb652212/config/quality/quality.gradle
----------------------------------------------------------------------
diff --git a/config/quality/quality.gradle b/config/quality/quality.gradle
new file mode 100644
index 0000000..8883952
--- /dev/null
+++ b/config/quality/quality.gradle
@@ -0,0 +1,26 @@
+apply plugin: 'checkstyle'
+
+dependencies {
+ checkstyle 'com.puppycrawl.tools:checkstyle:6.5'
+}
+
+def qualityConfigDir = "$project.rootDir/config/quality";
+def reportsDir = "$project.buildDir/reports"
+
+check.dependsOn 'checkstyle'
+
+task checkstyle(type: Checkstyle, group: 'Verification', description: 'Runs code style checks') {
+ configFile file("$qualityConfigDir/checkstyle/checkstyle-config.xml")
+ source 'src'
+ include '**/*.java'
+ exclude '**/gen/**'
+
+ reports {
+ xml.enabled = true
+ xml {
+ destination "$reportsDir/checkstyle/checkstyle.xml"
+ }
+ }
+
+ classpath = files()
+}
\ No newline at end of file
[13/18] incubator-taverna-mobile git commit: add findbugs config xml
and gradle task
Posted by st...@apache.org.
add findbugs config xml and gradle task
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/326071a3
Tree: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/tree/326071a3
Diff: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/diff/326071a3
Branch: refs/heads/master
Commit: 326071a338e68d2454351145be2f774058e607ba
Parents: 347d558
Author: Sagar <ku...@gmail.com>
Authored: Mon Jun 13 15:28:48 2016 +0530
Committer: Sagar <ku...@gmail.com>
Committed: Mon Jun 13 15:28:48 2016 +0530
----------------------------------------------------------------------
.../quality/findbugs/android-exclude-filter.xml | 20 ++++++++++++
config/quality/quality.gradle | 32 +++++++++++++++++++-
2 files changed, 51 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/326071a3/config/quality/findbugs/android-exclude-filter.xml
----------------------------------------------------------------------
diff --git a/config/quality/findbugs/android-exclude-filter.xml b/config/quality/findbugs/android-exclude-filter.xml
new file mode 100644
index 0000000..ccd73c6
--- /dev/null
+++ b/config/quality/findbugs/android-exclude-filter.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<FindBugsFilter>
+ <Match>
+ <Class name="~.*\.R\$.*"/>
+ </Match>
+ <Match>
+ <Class name="~.*\.Manifest\$.*"/>
+ </Match>
+
+
+ <!-- All bugs in test classes, except for JUnit-specific bugs -->
+ <Match>
+ <Class name="~.*\.*Test" />
+ <Not>
+ <Bug code="IJU" />
+ </Not>
+ </Match>
+
+
+</FindBugsFilter>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/326071a3/config/quality/quality.gradle
----------------------------------------------------------------------
diff --git a/config/quality/quality.gradle b/config/quality/quality.gradle
index 978277f..b99c433 100644
--- a/config/quality/quality.gradle
+++ b/config/quality/quality.gradle
@@ -1,5 +1,6 @@
apply plugin: 'checkstyle'
apply plugin: 'pmd'
+apply plugin: 'findbugs'
dependencies {
checkstyle 'com.puppycrawl.tools:checkstyle:6.5'
@@ -8,7 +9,7 @@ dependencies {
def qualityConfigDir = "$project.rootDir/config/quality";
def reportsDir = "$project.buildDir/reports"
-check.dependsOn 'checkstyle', 'pmd'
+check.dependsOn 'checkstyle', 'pmd','findbugs'
task checkstyle(type: Checkstyle, group: 'Verification', description: 'Runs code style checks') {
configFile file("$qualityConfigDir/checkstyle/checkstyle-config.xml")
@@ -45,4 +46,33 @@ task pmd(type: Pmd, group: 'Verification', description: 'Inspect sourcecode for
destination "$reportsDir/pmd/pmd.html"
}
}
+}
+
+task findbugs(type: FindBugs,
+ group: 'Verification',
+ description: 'Inspect java bytecode for bugs',
+ dependsOn: ['compileDebugSources','compileReleaseSources']) {
+
+ ignoreFailures = false
+ effort = "max"
+ reportLevel = "high"
+ excludeFilter = new File("$qualityConfigDir/findbugs/android-exclude-filter.xml")
+ classes = files("$project.rootDir/app/build/intermediates/classes")
+
+ source 'src'
+ include '**/*.java'
+ exclude '**/gen/**'
+
+ reports {
+ xml.enabled = false
+ html.enabled = true
+ xml {
+ destination "$reportsDir/findbugs/findbugs.xml"
+ }
+ html {12
+ destination "$reportsDir/findbugs/findbugs.html"
+ }
+ }
+
+ classpath = files()
}
\ No newline at end of file
[17/18] incubator-taverna-mobile git commit: remove error
Posted by st...@apache.org.
remove error
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/18863897
Tree: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/tree/18863897
Diff: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/diff/18863897
Branch: refs/heads/master
Commit: 1886389738dea80ea4d48d35c23be82b38619946
Parents: 76cb6bd
Author: Sagar <ku...@gmail.com>
Authored: Mon Jun 13 17:14:34 2016 +0530
Committer: Sagar <ku...@gmail.com>
Committed: Mon Jun 13 17:14:34 2016 +0530
----------------------------------------------------------------------
.../activities/DashboardMainActivity.java | 3 +-
.../mobile/activities/LoginActivity.java | 2 +-
.../mobile/activities/SettingsActivity.java | 48 ++++++++++----------
.../adapters/FavoriteWorkflowAdapter.java | 2 +-
.../mobile/adapters/WorkflowAdapter.java | 2 +-
.../mobile/data/remote/BaseApiManager.java | 2 +-
.../mobile/fragments/WorkflowItemFragment.java | 3 +-
.../fragments/workflowdetails/RunFragment.java | 2 +-
.../WorkflowRunHistoryFragment.java | 4 +-
.../workflowdetails/WorkflowdetailFragment.java | 27 +++++------
.../taverna/mobile/utils/DetailsLoader.java | 7 +--
.../apache/taverna/mobile/utils/HttpUtil.java | 1 +
.../apache/taverna/mobile/utils/RunTask.java | 5 +-
.../apache/taverna/mobile/utils/WorkflowDB.java | 2 +-
.../taverna/mobile/utils/WorkflowOpen.java | 13 ++++--
15 files changed, 66 insertions(+), 57 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/18863897/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 22abada..6ec84d8 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
@@ -146,7 +146,8 @@ public class DashboardMainActivity extends AppCompatActivity {
.setDataAndTypeAndNormalize(
Uri.parse(String.format("%s%s%s",
Environment.getExternalStorageDirectory(),
- File.separator, APP_DIRECTORY_NAME)),
+ File.separator,
+ APP_DIRECTORY_NAME)),
"application/vnd.taverna.t2flow+xml");
Intent loadWorkflowIntent = Intent.createChooser
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/18863897/app/src/main/java/org/apache/taverna/mobile/activities/LoginActivity.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/activities/LoginActivity.java b/app/src/main/java/org/apache/taverna/mobile/activities/LoginActivity.java
index c374ec0..6bcfd2a 100644
--- a/app/src/main/java/org/apache/taverna/mobile/activities/LoginActivity.java
+++ b/app/src/main/java/org/apache/taverna/mobile/activities/LoginActivity.java
@@ -199,7 +199,7 @@ public class LoginActivity extends ActionBarActivity {
con.connect();
}
BufferedReader br = new BufferedReader(new InputStreamReader(con
- .getInputStream(),"UTF-8"));
+ .getInputStream(), "UTF-8"));
StringBuilder sb = new StringBuilder();
String s = "";
while ((s = br.readLine()) != null) {
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/18863897/app/src/main/java/org/apache/taverna/mobile/activities/SettingsActivity.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/activities/SettingsActivity.java b/app/src/main/java/org/apache/taverna/mobile/activities/SettingsActivity.java
index 3dd2e5d..a941a2c 100644
--- a/app/src/main/java/org/apache/taverna/mobile/activities/SettingsActivity.java
+++ b/app/src/main/java/org/apache/taverna/mobile/activities/SettingsActivity.java
@@ -66,30 +66,30 @@ public class SettingsActivity extends PreferenceActivity {
*/
private static Preference.OnPreferenceChangeListener sBindPreferenceSummaryToValueListener =
new Preference.OnPreferenceChangeListener() {
- @Override
- public boolean onPreferenceChange(Preference preference, Object value) {
- String stringValue = value.toString();
-
- if (preference instanceof ListPreference) {
- // For list preferences, look up the correct display value in
- // the preference's 'entries' list.
- ListPreference listPreference = (ListPreference) preference;
- int index = listPreference.findIndexOfValue(stringValue);
-
- // Set the summary to reflect the new value.
- preference.setSummary(
- index >= 0
- ? listPreference.getEntries()[index]
- : null);
-
- } else {
- // For all other preferences, set the summary to the value's
- // simple string representation.
- preference.setSummary(stringValue);
- }
- return true;
- }
- };
+ @Override
+ public boolean onPreferenceChange(Preference preference, Object value) {
+ String stringValue = value.toString();
+
+ if (preference instanceof ListPreference) {
+ // For list preferences, look up the correct display value in
+ // the preference's 'entries' list.
+ ListPreference listPreference = (ListPreference) preference;
+ int index = listPreference.findIndexOfValue(stringValue);
+
+ // Set the summary to reflect the new value.
+ preference.setSummary(
+ index >= 0
+ ? listPreference.getEntries()[index]
+ : null);
+
+ } else {
+ // For all other preferences, set the summary to the value's
+ // simple string representation.
+ preference.setSummary(stringValue);
+ }
+ return true;
+ }
+ };
/**
* Helper method to determine if the device has an extra-large screen. For
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/18863897/app/src/main/java/org/apache/taverna/mobile/adapters/FavoriteWorkflowAdapter.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/adapters/FavoriteWorkflowAdapter.java b/app/src/main/java/org/apache/taverna/mobile/adapters/FavoriteWorkflowAdapter.java
index b64ad43..9522a3a 100644
--- a/app/src/main/java/org/apache/taverna/mobile/adapters/FavoriteWorkflowAdapter.java
+++ b/app/src/main/java/org/apache/taverna/mobile/adapters/FavoriteWorkflowAdapter.java
@@ -166,7 +166,7 @@ public class FavoriteWorkflowAdapter extends RecyclerView.Adapter<FavoriteWorkfl
}
sharedPreferences.edit().putString(WorkflowAdapter.FAVORITE_LIST_DB, Arrays.toString
(charsequence)
- ).apply();
+ ).apply();
}
@Override
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/18863897/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 b9c4e86..03c28fe 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
@@ -67,10 +67,10 @@ import java.util.List;
* Created by Larry Akah on 6/8/15.
*/
public class WorkflowAdapter extends RecyclerView.Adapter<WorkflowAdapter.ViewHolder> {
- private static final String TAG = "WorkflowAdapter";
public static final String WORKFLOW_FAVORITE_KEY = "WORKFLOW_FAVORITES"; //workflow key used
// to save workflows when marked as favorites
public static final String FAVORITE_LIST_DB = "FAVORITE_LIST";
+ private static final String TAG = "WorkflowAdapter";
public WorkflowDB favDB; //favorited keeps items that have been favorited in order to
// identify them during
private Context context;
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/18863897/app/src/main/java/org/apache/taverna/mobile/data/remote/BaseApiManager.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/data/remote/BaseApiManager.java b/app/src/main/java/org/apache/taverna/mobile/data/remote/BaseApiManager.java
index 5a384e4..f49ffd2 100644
--- a/app/src/main/java/org/apache/taverna/mobile/data/remote/BaseApiManager.java
+++ b/app/src/main/java/org/apache/taverna/mobile/data/remote/BaseApiManager.java
@@ -10,8 +10,8 @@ import retrofit2.converter.simplexml.SimpleXmlConverterFactory;
public class BaseApiManager {
- public TavernaService mTavernaService;
final String ENDPOINT = "http://www.myexperiment.org/";
+ public TavernaService mTavernaService;
public BaseApiManager() {
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/18863897/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 1a58a40..6b4e89d 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
@@ -89,12 +89,12 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
*/
private static RecyclerView mListView;
private static View rootView;
- private boolean stateOn = false;
private static TextView noDataText;
private static LruCache<String, Bitmap> avatarCache;
private static WorkflowAdapter workflowAdapter;
//variables for controlling the infinite scroll mechanism
private static int previousTotal = 0;
+ private boolean stateOn = false;
private Animation in;
private ProgressDialog mProgressDialog; //progressbar used to indicate the state of the
// workflow loaders
@@ -131,6 +131,7 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
public static void setIsRefreshData(boolean isRefreshData) {
WorkflowItemFragment.isRefreshData = isRefreshData;
}
+
public static WorkflowItemFragment newInstance(String param1, String param2) {
WorkflowItemFragment fragment = new WorkflowItemFragment();
Bundle args = new Bundle();
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/18863897/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/RunFragment.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/RunFragment.java b/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/RunFragment.java
index b4bde68..7ba68ec 100644
--- a/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/RunFragment.java
+++ b/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/RunFragment.java
@@ -272,7 +272,7 @@ public class RunFragment extends Fragment implements View.OnClickListener {
connection.connect(); //send request
InputStream dis = connection.getInputStream();
- BufferedReader br = new BufferedReader(new InputStreamReader(dis,"UTF-8"));
+ BufferedReader br = new BufferedReader(new InputStreamReader(dis, "UTF-8"));
String jsonData = "";
while ((jsonData = br.readLine()) != null) {
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/18863897/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 eea053e..774a197 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
@@ -147,7 +147,7 @@ public class WorkflowRunHistoryFragment extends Fragment implements LoaderManage
public void onLoadFinished(Loader<Workflow> workflowLoader, Workflow workflow) {
try {
- if (workflow.getWorkflowRuns() != null || workflow.getWorkflowRuns().size() != 0) {
+ if (workflow.getWorkflowRuns() != null && workflow.getWorkflowRuns().size() != 0) {
runAdapter.setRunList(workflow.getWorkflowRuns());
mRecyclerView.setAdapter(runAdapter);
@@ -159,7 +159,7 @@ public class WorkflowRunHistoryFragment extends Fragment implements LoaderManage
emptyRunHistoryTextView.setVisibility(View.VISIBLE);
}
} catch (NullPointerException np) {
- Log.e(TAG, "onLoadFinished: ", np);
+ Log.e(TAG, "onLoadFinished:", np);
}
// progressDialog.dismiss();
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/18863897/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 22a100b..9835c04 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
@@ -106,19 +106,19 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
private static final String BOX_APP_SECRET = "3uuuw36mm7jkflc";
public static String mWorkfloId = "";
public static Context cont;
- public String workflow_uri;
static View rootView;
static Animation zoomin;
static Animation zoomout;
static Workflow currentWorkflow = null;
private static ProgressDialog progressDialog;
private static String download_url;
- private boolean mLoadState = false;
- private boolean mDropupload = false;
+ public String workflow_uri;
public AlertDialog runDialog;
public AlertDialog.Builder alertDialogBuilder;
public boolean isZoomIn;
SharedPreferences sharedPreferences;
+ private boolean mLoadState = false;
+ private boolean mDropupload = false;
private DownloadManager downloadManager;
private long wid;
@@ -234,6 +234,10 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
WorkflowdetailFragment.rootView = rootView;
}
+ public static void setCont(Context cont) {
+ WorkflowdetailFragment.cont = cont;
+ }
+
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle
savedInstanceState) {
@@ -286,12 +290,7 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
return rootView;
}
- public static void setCont(Context cont) {
- WorkflowdetailFragment.cont = cont;
- }
-
/**
-
* Called when a fragment is first attached to its activity.
* {@link #onCreate(android.os.Bundle)} will be called after this.
*/
@@ -507,7 +506,8 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
HttpURLConnection connection = (HttpURLConnection) workflowurl.openConnection();
String userpass = tavernaPlayerAPI.getPlayerUserName(this.context) + ":" +
tavernaPlayerAPI.getPlayerUserPassword(this.context);
- String basicAuth = "Basic " + Base64.encodeToString(userpass.getBytes(Charset.forName("UTF-8")), Base64
+ String basicAuth = "Basic " + Base64.encodeToString(userpass.getBytes(Charset
+ .forName("UTF-8")), Base64
.DEFAULT);
connection.setRequestProperty("Authorization", basicAuth);
@@ -521,7 +521,7 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
Log.i("Authorization ", "" + connection.getRequestProperty("Authorization"));
InputStream dis = connection.getInputStream();
- BufferedReader br = new BufferedReader(new InputStreamReader(dis,"UTF-8"));
+ BufferedReader br = new BufferedReader(new InputStreamReader(dis, "UTF-8"));
String jsonData = "";
while ((jsonData = br.readLine()) != null) {
@@ -668,11 +668,12 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
String user = tavernaPlayerAPI.getPlayerUserName(this.context) + ":" +
tavernaPlayerAPI.getPlayerUserPassword(this.context);
- String basicAuth = "Basic " + Base64.encodeToString(user.getBytes(Charset.forName("UTF-8")), Base64
+ String basicAuth = "Basic " + Base64.encodeToString(user.getBytes(Charset.forName
+ ("UTF-8")), Base64
.DEFAULT);
//read the file from remote resource and encode the stream with a base64 algorithm
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(wconn
- .getInputStream(),"UTF-8"));
+ .getInputStream(), "UTF-8"));
String str = "";
while ((str = bufferedReader.readLine()) != null) {
sb.append(str); //in this string builder we have read the workflow( as
@@ -707,7 +708,7 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
dos.close();
InputStream dis = connection.getInputStream();
- BufferedReader br = new BufferedReader(new InputStreamReader(dis,"UTF-8"));
+ BufferedReader br = new BufferedReader(new InputStreamReader(dis, "UTF-8"));
while ((str = br.readLine()) != null) {
sb.append(str);
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/18863897/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 66b4f84..cec8748 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
@@ -101,7 +101,8 @@ public class DetailsLoader extends AsyncTaskLoader<Workflow> {
connection = (HttpURLConnection) workflowurl.openConnection();
String userpass = tavernaPlayerAPI.getPlayerUserName(this.context) + ":" +
tavernaPlayerAPI.getPlayerUserPassword(this.context);
- String basicAuth = "Basic " + Base64.encodeToString(userpass.getBytes(Charset.forName("UTF-8")),
+ String basicAuth = "Basic " + Base64.encodeToString(userpass.getBytes(Charset
+ .forName("UTF-8")),
Base64.DEFAULT);
connection.setRequestProperty("Authorization", basicAuth);
@@ -167,7 +168,7 @@ public class DetailsLoader extends AsyncTaskLoader<Workflow> {
return workflow;
case TYPE_RUN_HISTORY: {
Log.e(TAG, "Downloading run history");
- BufferedReader br = new BufferedReader(new InputStreamReader(dis,"UTF-8"));
+ BufferedReader br = new BufferedReader(new InputStreamReader(dis, "UTF-8"));
StringBuffer sb = new StringBuffer();
String jsonData = "";
while ((jsonData = br.readLine()) != null) {
@@ -209,7 +210,7 @@ public class DetailsLoader extends AsyncTaskLoader<Workflow> {
}
return workflow;
default:
- BufferedReader br = new BufferedReader(new InputStreamReader(dis,"UTF-8"));
+ BufferedReader br = new BufferedReader(new InputStreamReader(dis, "UTF-8"));
StringBuffer sb = new StringBuffer();
String jsonData = "";
while ((jsonData = br.readLine()) != null) {
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/18863897/app/src/main/java/org/apache/taverna/mobile/utils/HttpUtil.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/HttpUtil.java b/app/src/main/java/org/apache/taverna/mobile/utils/HttpUtil.java
index f043d93..0be41a3 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/HttpUtil.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/HttpUtil.java
@@ -47,6 +47,7 @@ import java.net.HttpURLConnection;
*/
public class HttpUtil {
private static final String TAG = "HttpUtil";
+
public <T> Object doPostAuthenticate() {
User muser = new User("", null);
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/18863897/app/src/main/java/org/apache/taverna/mobile/utils/RunTask.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/RunTask.java b/app/src/main/java/org/apache/taverna/mobile/utils/RunTask.java
index ff9d39c..9305456 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/RunTask.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/RunTask.java
@@ -49,7 +49,8 @@ public class RunTask extends AsyncTask<String, Void, String> {
HttpURLConnection connection = (HttpURLConnection) workflowurl.openConnection();
String userpass = tavernaPlayerAPI.getPlayerUserName(this.context) + ":" +
tavernaPlayerAPI.getPlayerUserPassword(this.context);
- String basicAuth = "Basic " + Base64.encodeToString(userpass.getBytes(Charset.forName("UTF-8")), Base64
+ String basicAuth = "Basic " + Base64.encodeToString(userpass.getBytes(Charset.forName
+ ("UTF-8")), Base64
.DEFAULT);
connection.setRequestProperty("Authorization", basicAuth);
@@ -68,7 +69,7 @@ public class RunTask extends AsyncTask<String, Void, String> {
dos.close();
InputStream dis = connection.getInputStream();
- BufferedReader br = new BufferedReader(new InputStreamReader(dis,"UTF-8"));
+ BufferedReader br = new BufferedReader(new InputStreamReader(dis, "UTF-8"));
String jsonData = "";
while ((jsonData = br.readLine()) != null) {
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/18863897/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowDB.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowDB.java b/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowDB.java
index 6e62a01..f953ee9 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowDB.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowDB.java
@@ -50,9 +50,9 @@ public class WorkflowDB {
private static final String TAG = "WorkflowDB";
private final String ENTITY_KEY;
+ private final ArrayList<String> ITEM_IDS;
private Context context;
private SharedPreferences msharedpreference;
- private final ArrayList<String> ITEM_IDS;
private JSONObject dataobj; //hold all entries for a given ENTITY_KEY
/**
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/18863897/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowOpen.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowOpen.java b/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowOpen.java
index 35ce80b..ce261ce 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowOpen.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowOpen.java
@@ -75,7 +75,8 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
String user = tavernaPlayerAPI.getPlayerUserName(this.context) + ":" +
tavernaPlayerAPI.getPlayerUserPassword(this.context);
- String basicAuth = "Basic " + Base64.encodeToString(user.getBytes(Charset.forName("UTF-8")), Base64.DEFAULT);
+ String basicAuth = "Basic " + Base64.encodeToString(user.getBytes(Charset.forName
+ ("UTF-8")), Base64.DEFAULT);
//read the file from remote resource and encode the stream with a base64 algorithm
try {
@@ -91,7 +92,8 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
}
String data = "{\"document\":\"data:application/octet-stream;base64," +
- Base64.encodeToString(sb.toString().getBytes(Charset.forName("UTF-8")), Base64.URL_SAFE |
+ Base64.encodeToString(sb.toString().getBytes(Charset.forName("UTF-8")),
+ Base64.URL_SAFE |
Base64.NO_WRAP).replace('-', '+') + "\"}";
String post = "{\"workflow\":" + data + "}";
//clear sb so that we can use it again to fetch results from this post request
@@ -115,7 +117,7 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
dos.close();
InputStream dis = connection.getInputStream();
- BufferedReader br = new BufferedReader(new InputStreamReader(dis,"UTF-8"));
+ BufferedReader br = new BufferedReader(new InputStreamReader(dis, "UTF-8"));
while ((str = br.readLine()) != null) {
sb.append(str);
}
@@ -199,7 +201,8 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
HttpURLConnection connection = (HttpURLConnection) workflowurl.openConnection();
String userpass = tavernaPlayerAPI.getPlayerUserName(this.context) + ":" +
tavernaPlayerAPI.getPlayerUserPassword(this.context);
- String basicAuth = "Basic " + Base64.encodeToString(userpass.getBytes(Charset.forName("UTF-8")), Base64
+ String basicAuth = "Basic " + Base64.encodeToString(userpass.getBytes(Charset
+ .forName("UTF-8")), Base64
.DEFAULT);
connection.setRequestProperty("Authorization", basicAuth);
@@ -211,7 +214,7 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
Log.i("Authorization ", "" + connection.getRequestProperty("Authorization"));
InputStream dis = connection.getInputStream();
- BufferedReader br = new BufferedReader(new InputStreamReader(dis,"UTF-8"));
+ BufferedReader br = new BufferedReader(new InputStreamReader(dis, "UTF-8"));
String jsonData = "";
while ((jsonData = br.readLine()) != null) {
[15/18] incubator-taverna-mobile git commit: reformat code using
findbugs
Posted by st...@apache.org.
reformat code using findbugs
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/18002d33
Tree: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/tree/18002d33
Diff: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/diff/18002d33
Branch: refs/heads/master
Commit: 18002d33667c458244eb2f1b8bb27c649583e428
Parents: 0df0ab5
Author: Sagar <ku...@gmail.com>
Authored: Mon Jun 13 16:53:38 2016 +0530
Committer: Sagar <ku...@gmail.com>
Committed: Mon Jun 13 16:53:38 2016 +0530
----------------------------------------------------------------------
.../mobile/activities/LoginActivity.java | 5 ++-
.../adapters/FavoriteWorkflowAdapter.java | 6 ++-
.../mobile/fragments/WorkflowItemFragment.java | 33 ++++++++++-----
.../fragments/workflowdetails/RunFragment.java | 2 +-
.../WorkflowRunHistoryFragment.java | 2 +-
.../workflowdetails/WorkflowdetailFragment.java | 42 +++++++++++++-------
.../taverna/mobile/utils/DetailsLoader.java | 7 ++--
.../apache/taverna/mobile/utils/RunTask.java | 5 ++-
.../taverna/mobile/utils/WorkflowOpen.java | 11 ++---
.../xmlparsers/MyExperimentXmlParserRules.java | 2 +-
10 files changed, 74 insertions(+), 41 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/18002d33/app/src/main/java/org/apache/taverna/mobile/activities/LoginActivity.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/activities/LoginActivity.java b/app/src/main/java/org/apache/taverna/mobile/activities/LoginActivity.java
index d7b46f9..c374ec0 100644
--- a/app/src/main/java/org/apache/taverna/mobile/activities/LoginActivity.java
+++ b/app/src/main/java/org/apache/taverna/mobile/activities/LoginActivity.java
@@ -53,6 +53,7 @@ import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
+import java.nio.charset.Charset;
public class LoginActivity extends ActionBarActivity {
@@ -168,7 +169,7 @@ public class LoginActivity extends ActionBarActivity {
String authentication = userName + ":" + password;
con.setRequestMethod("GET");
con.setRequestProperty("Authorization", "Basic " + Base64.encodeToString
- (authentication.getBytes(), Base64.DEFAULT));
+ (authentication.getBytes(Charset.forName("UTF-8")), Base64.DEFAULT));
con.setInstanceFollowRedirects(true);
HttpURLConnection.setFollowRedirects(true);
con.connect();
@@ -198,7 +199,7 @@ public class LoginActivity extends ActionBarActivity {
con.connect();
}
BufferedReader br = new BufferedReader(new InputStreamReader(con
- .getInputStream()));
+ .getInputStream(),"UTF-8"));
StringBuilder sb = new StringBuilder();
String s = "";
while ((s = br.readLine()) != null) {
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/18002d33/app/src/main/java/org/apache/taverna/mobile/adapters/FavoriteWorkflowAdapter.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/adapters/FavoriteWorkflowAdapter.java b/app/src/main/java/org/apache/taverna/mobile/adapters/FavoriteWorkflowAdapter.java
index 0feb3ce..b64ad43 100644
--- a/app/src/main/java/org/apache/taverna/mobile/adapters/FavoriteWorkflowAdapter.java
+++ b/app/src/main/java/org/apache/taverna/mobile/adapters/FavoriteWorkflowAdapter.java
@@ -45,6 +45,7 @@ import android.widget.TextView;
import android.widget.Toast;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.List;
/**
@@ -163,8 +164,9 @@ public class FavoriteWorkflowAdapter extends RecyclerView.Adapter<FavoriteWorkfl
break;
}
}
- sharedPreferences.edit().putString(WorkflowAdapter.FAVORITE_LIST_DB, charsequence
- .toString()).apply();
+ sharedPreferences.edit().putString(WorkflowAdapter.FAVORITE_LIST_DB, Arrays.toString
+ (charsequence)
+ ).apply();
}
@Override
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/18002d33/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 53649a0..1a58a40 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
@@ -89,7 +89,7 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
*/
private static RecyclerView mListView;
private static View rootView;
- private static boolean stateOn = false;
+ private boolean stateOn = false;
private static TextView noDataText;
private static LruCache<String, Bitmap> avatarCache;
private static WorkflowAdapter workflowAdapter;
@@ -116,6 +116,21 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
public WorkflowItemFragment() {
}
+ public static void setCx(Context cx) {
+ WorkflowItemFragment.cx = cx;
+ }
+
+ public static void setRootView(View rootView) {
+ WorkflowItemFragment.rootView = rootView;
+ }
+
+ public static void setIsLoadMoreData(boolean isLoadMoreData) {
+ WorkflowItemFragment.isLoadMoreData = isLoadMoreData;
+ }
+
+ public static void setIsRefreshData(boolean isRefreshData) {
+ WorkflowItemFragment.isRefreshData = isRefreshData;
+ }
public static WorkflowItemFragment newInstance(String param1, String param2) {
WorkflowItemFragment fragment = new WorkflowItemFragment();
Bundle args = new Bundle();
@@ -132,8 +147,8 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
public void run() {
WorkflowItemFragment.workflowAdapter = new WorkflowAdapter(cx, data);
if (isLoadMoreData) {
- isLoadMoreData = false;
- isRefreshData = false;
+ setIsLoadMoreData(false);
+ setIsRefreshData(false);
((WorkflowAdapter) mListView.getAdapter()).addItems(data, previousTotal);
} else {
mListView.swapAdapter(workflowAdapter, false);
@@ -202,7 +217,7 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setHasOptionsMenu(true);
- cx = getActivity();
+ setCx(getActivity());
mLinearLayoutManager = new LinearLayoutManager(cx);
scrollListener = new InfiniteScrollListener();
workflowObserver = new RecyclerView.AdapterDataObserver() {
@@ -228,7 +243,7 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle
savedInstanceState) {
- rootView = inflater.inflate(R.layout.fragment_item, container, false);
+ setRootView(inflater.inflate(R.layout.fragment_item, container, false));
noDataText = (TextView) rootView.findViewById(android.R.id.empty);
swipeRefreshLayout = (SwipeRefreshLayout) rootView.findViewById(R.id.refresh);
swipeRefreshLayout.setOnRefreshListener(this);
@@ -281,7 +296,7 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
@Override
public void onDestroyView() {
super.onDestroyView();
- rootView = null;
+ setRootView(null);
}
@Override
@@ -369,8 +384,8 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
@Override
public void onRefresh() {
- isRefreshData = true;
- isLoadMoreData = false;
+ setIsRefreshData(true);
+ setIsLoadMoreData(false);
new WorkflowLoader(getActivity(), swipeRefreshLayout).execute("" + 1);
}
@@ -464,7 +479,7 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
visibleThreshold)) {
//list has reached end, load more.
Toast.makeText(getActivity(), "Loading more", Toast.LENGTH_SHORT).show();
- isLoadMoreData = true;
+ setIsLoadMoreData(true);
currentPage++;
new WorkflowLoader(getActivity(), swipeRefreshLayout).execute("" + currentPage);
Log.d(TAG, currentPage + "");
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/18002d33/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/RunFragment.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/RunFragment.java b/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/RunFragment.java
index 400eaaf..b4bde68 100644
--- a/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/RunFragment.java
+++ b/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/RunFragment.java
@@ -272,7 +272,7 @@ public class RunFragment extends Fragment implements View.OnClickListener {
connection.connect(); //send request
InputStream dis = connection.getInputStream();
- BufferedReader br = new BufferedReader(new InputStreamReader(dis));
+ BufferedReader br = new BufferedReader(new InputStreamReader(dis,"UTF-8"));
String jsonData = "";
while ((jsonData = br.readLine()) != null) {
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/18002d33/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 70481f3..eea053e 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
@@ -147,7 +147,7 @@ public class WorkflowRunHistoryFragment extends Fragment implements LoaderManage
public void onLoadFinished(Loader<Workflow> workflowLoader, Workflow workflow) {
try {
- if (workflow.getWorkflowRuns() != null | workflow.getWorkflowRuns().size() != 0) {
+ if (workflow.getWorkflowRuns() != null || workflow.getWorkflowRuns().size() != 0) {
runAdapter.setRunList(workflow.getWorkflowRuns());
mRecyclerView.setAdapter(runAdapter);
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/18002d33/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 c5f0cae..22a100b 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
@@ -38,8 +38,8 @@ import org.apache.taverna.mobile.tavernamobile.User;
import org.apache.taverna.mobile.tavernamobile.Workflow;
import org.apache.taverna.mobile.utils.DetailsLoader;
import org.apache.taverna.mobile.utils.RunTask;
-import org.apache.taverna.mobile.utils.WorkflowDownloadManager;
import org.apache.taverna.mobile.utils.WorkflowDB;
+import org.apache.taverna.mobile.utils.WorkflowDownloadManager;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
@@ -86,6 +86,7 @@ import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
+import java.nio.charset.Charset;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
@@ -105,15 +106,15 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
private static final String BOX_APP_SECRET = "3uuuw36mm7jkflc";
public static String mWorkfloId = "";
public static Context cont;
- public static String workflow_uri;
+ public String workflow_uri;
static View rootView;
static Animation zoomin;
static Animation zoomout;
static Workflow currentWorkflow = null;
private static ProgressDialog progressDialog;
private static String download_url;
- private static boolean mLoadState = false;
- private static boolean mDropupload = false;
+ private boolean mLoadState = false;
+ private boolean mDropupload = false;
public AlertDialog runDialog;
public AlertDialog.Builder alertDialogBuilder;
public boolean isZoomIn;
@@ -138,9 +139,6 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
return fragment;
}
- public static WorkflowdetailFragment getInstance() {
- return WorkflowdetailFragment.getInstance();
- }
public static void setWorkflowDetails(final Workflow wk) {
currentWorkflow = wk;
@@ -228,6 +226,14 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
// preview.setOnClickListener(WorkflowdetailFragment.getInstance());
}
+ public static void setProgressDialog(Context context) {
+ WorkflowdetailFragment.progressDialog = new ProgressDialog(context);
+ }
+
+ public static void setRootView(View rootView) {
+ WorkflowdetailFragment.rootView = rootView;
+ }
+
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle
savedInstanceState) {
@@ -236,8 +242,9 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
AndroidAuthSession session = new AndroidAuthSession(appKeys);
mDBApi = new DropboxAPI<AndroidAuthSession>(session);
// long workflowid = getActivity().getIntent().getLongExtra("workflowid", 0);
- rootView = inflater.inflate(R.layout.fragment_workflow_detail, container, false);
- progressDialog = new ProgressDialog(getActivity());
+ setRootView(inflater.inflate(R.layout.fragment_workflow_detail,
+ container, false));
+ setProgressDialog(getActivity());
progressDialog.setMessage(getActivity().getResources().getString(R.string.loading));
progressDialog.setCancelable(false);
// mWorkfloId = workflowid;
@@ -279,7 +286,12 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
return rootView;
}
+ public static void setCont(Context cont) {
+ WorkflowdetailFragment.cont = cont;
+ }
+
/**
+
* Called when a fragment is first attached to its activity.
* {@link #onCreate(android.os.Bundle)} will be called after this.
*/
@@ -291,7 +303,7 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
@Override
public void onAttach(Context context) {
super.onAttach(context);
- cont = getActivity();
+ setCont(getActivity());
}
@Override
@@ -495,7 +507,7 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
HttpURLConnection connection = (HttpURLConnection) workflowurl.openConnection();
String userpass = tavernaPlayerAPI.getPlayerUserName(this.context) + ":" +
tavernaPlayerAPI.getPlayerUserPassword(this.context);
- String basicAuth = "Basic " + Base64.encodeToString(userpass.getBytes(), Base64
+ String basicAuth = "Basic " + Base64.encodeToString(userpass.getBytes(Charset.forName("UTF-8")), Base64
.DEFAULT);
connection.setRequestProperty("Authorization", basicAuth);
@@ -509,7 +521,7 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
Log.i("Authorization ", "" + connection.getRequestProperty("Authorization"));
InputStream dis = connection.getInputStream();
- BufferedReader br = new BufferedReader(new InputStreamReader(dis));
+ BufferedReader br = new BufferedReader(new InputStreamReader(dis,"UTF-8"));
String jsonData = "";
while ((jsonData = br.readLine()) != null) {
@@ -656,11 +668,11 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
String user = tavernaPlayerAPI.getPlayerUserName(this.context) + ":" +
tavernaPlayerAPI.getPlayerUserPassword(this.context);
- String basicAuth = "Basic " + Base64.encodeToString(user.getBytes(), Base64
+ String basicAuth = "Basic " + Base64.encodeToString(user.getBytes(Charset.forName("UTF-8")), Base64
.DEFAULT);
//read the file from remote resource and encode the stream with a base64 algorithm
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(wconn
- .getInputStream()));
+ .getInputStream(),"UTF-8"));
String str = "";
while ((str = bufferedReader.readLine()) != null) {
sb.append(str); //in this string builder we have read the workflow( as
@@ -695,7 +707,7 @@ public class WorkflowdetailFragment extends Fragment implements View.OnClickList
dos.close();
InputStream dis = connection.getInputStream();
- BufferedReader br = new BufferedReader(new InputStreamReader(dis));
+ BufferedReader br = new BufferedReader(new InputStreamReader(dis,"UTF-8"));
while ((str = br.readLine()) != null) {
sb.append(str);
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/18002d33/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 1313e13..66b4f84 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
@@ -48,6 +48,7 @@ import java.net.Authenticator;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
+import java.nio.charset.Charset;
/**
* Loads workflow details from the myexperiment API and presents them on the UI .The class is
@@ -100,7 +101,7 @@ public class DetailsLoader extends AsyncTaskLoader<Workflow> {
connection = (HttpURLConnection) workflowurl.openConnection();
String userpass = tavernaPlayerAPI.getPlayerUserName(this.context) + ":" +
tavernaPlayerAPI.getPlayerUserPassword(this.context);
- String basicAuth = "Basic " + Base64.encodeToString(userpass.getBytes(),
+ String basicAuth = "Basic " + Base64.encodeToString(userpass.getBytes(Charset.forName("UTF-8")),
Base64.DEFAULT);
connection.setRequestProperty("Authorization", basicAuth);
@@ -166,7 +167,7 @@ public class DetailsLoader extends AsyncTaskLoader<Workflow> {
return workflow;
case TYPE_RUN_HISTORY: {
Log.e(TAG, "Downloading run history");
- BufferedReader br = new BufferedReader(new InputStreamReader(dis));
+ BufferedReader br = new BufferedReader(new InputStreamReader(dis,"UTF-8"));
StringBuffer sb = new StringBuffer();
String jsonData = "";
while ((jsonData = br.readLine()) != null) {
@@ -208,7 +209,7 @@ public class DetailsLoader extends AsyncTaskLoader<Workflow> {
}
return workflow;
default:
- BufferedReader br = new BufferedReader(new InputStreamReader(dis));
+ BufferedReader br = new BufferedReader(new InputStreamReader(dis,"UTF-8"));
StringBuffer sb = new StringBuffer();
String jsonData = "";
while ((jsonData = br.readLine()) != null) {
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/18002d33/app/src/main/java/org/apache/taverna/mobile/utils/RunTask.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/RunTask.java b/app/src/main/java/org/apache/taverna/mobile/utils/RunTask.java
index 3aa06fb..ff9d39c 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/RunTask.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/RunTask.java
@@ -17,6 +17,7 @@ import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
+import java.nio.charset.Charset;
/**
* Created by root on 7/11/15.
@@ -48,7 +49,7 @@ public class RunTask extends AsyncTask<String, Void, String> {
HttpURLConnection connection = (HttpURLConnection) workflowurl.openConnection();
String userpass = tavernaPlayerAPI.getPlayerUserName(this.context) + ":" +
tavernaPlayerAPI.getPlayerUserPassword(this.context);
- String basicAuth = "Basic " + Base64.encodeToString(userpass.getBytes(), Base64
+ String basicAuth = "Basic " + Base64.encodeToString(userpass.getBytes(Charset.forName("UTF-8")), Base64
.DEFAULT);
connection.setRequestProperty("Authorization", basicAuth);
@@ -67,7 +68,7 @@ public class RunTask extends AsyncTask<String, Void, String> {
dos.close();
InputStream dis = connection.getInputStream();
- BufferedReader br = new BufferedReader(new InputStreamReader(dis));
+ BufferedReader br = new BufferedReader(new InputStreamReader(dis,"UTF-8"));
String jsonData = "";
while ((jsonData = br.readLine()) != null) {
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/18002d33/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowOpen.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowOpen.java b/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowOpen.java
index 693190a..35ce80b 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowOpen.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowOpen.java
@@ -31,6 +31,7 @@ import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
+import java.nio.charset.Charset;
/**
* Read the selected xml file from storage and upload to player to generate workflowRun
@@ -74,7 +75,7 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
String user = tavernaPlayerAPI.getPlayerUserName(this.context) + ":" +
tavernaPlayerAPI.getPlayerUserPassword(this.context);
- String basicAuth = "Basic " + Base64.encodeToString(user.getBytes(), Base64.DEFAULT);
+ String basicAuth = "Basic " + Base64.encodeToString(user.getBytes(Charset.forName("UTF-8")), Base64.DEFAULT);
//read the file from remote resource and encode the stream with a base64 algorithm
try {
@@ -90,7 +91,7 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
}
String data = "{\"document\":\"data:application/octet-stream;base64," +
- Base64.encodeToString(sb.toString().getBytes("UTF-8"), Base64.URL_SAFE |
+ Base64.encodeToString(sb.toString().getBytes(Charset.forName("UTF-8")), Base64.URL_SAFE |
Base64.NO_WRAP).replace('-', '+') + "\"}";
String post = "{\"workflow\":" + data + "}";
//clear sb so that we can use it again to fetch results from this post request
@@ -114,7 +115,7 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
dos.close();
InputStream dis = connection.getInputStream();
- BufferedReader br = new BufferedReader(new InputStreamReader(dis));
+ BufferedReader br = new BufferedReader(new InputStreamReader(dis,"UTF-8"));
while ((str = br.readLine()) != null) {
sb.append(str);
}
@@ -198,7 +199,7 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
HttpURLConnection connection = (HttpURLConnection) workflowurl.openConnection();
String userpass = tavernaPlayerAPI.getPlayerUserName(this.context) + ":" +
tavernaPlayerAPI.getPlayerUserPassword(this.context);
- String basicAuth = "Basic " + Base64.encodeToString(userpass.getBytes(), Base64
+ String basicAuth = "Basic " + Base64.encodeToString(userpass.getBytes(Charset.forName("UTF-8")), Base64
.DEFAULT);
connection.setRequestProperty("Authorization", basicAuth);
@@ -210,7 +211,7 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
Log.i("Authorization ", "" + connection.getRequestProperty("Authorization"));
InputStream dis = connection.getInputStream();
- BufferedReader br = new BufferedReader(new InputStreamReader(dis));
+ BufferedReader br = new BufferedReader(new InputStreamReader(dis,"UTF-8"));
String jsonData = "";
while ((jsonData = br.readLine()) != null) {
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/18002d33/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/MyExperimentXmlParserRules.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/MyExperimentXmlParserRules.java b/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/MyExperimentXmlParserRules.java
index a17ce71..638e96c 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/MyExperimentXmlParserRules.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/MyExperimentXmlParserRules.java
@@ -40,7 +40,7 @@ import java.util.List;
*/
public class MyExperimentXmlParserRules {
- public static Workflow mWorkflow = new Workflow();
+ public static final Workflow mWorkflow = new Workflow();
public MyExperimentXmlParserRules() {
}
[18/18] incubator-taverna-mobile git commit: Merge remote-tracking
branch 'sagar15795/CodeAnalysisTools'
Posted by st...@apache.org.
Merge remote-tracking branch 'sagar15795/CodeAnalysisTools'
Code-cleanup and check style contributed by Sagar. This closes #15.
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/4daa91d3
Tree: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/tree/4daa91d3
Diff: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/diff/4daa91d3
Branch: refs/heads/master
Commit: 4daa91d3f42b5a4474303fd39c7a7ec1483cebff
Parents: 17c8bc7 1886389
Author: Stian Soiland-Reyes <st...@apache.org>
Authored: Mon Jun 13 13:57:34 2016 +0100
Committer: Stian Soiland-Reyes <st...@apache.org>
Committed: Mon Jun 13 13:57:34 2016 +0100
----------------------------------------------------------------------
app/build.gradle | 1 +
.../activities/DashboardMainActivity.java | 376 ++++++------
.../mobile/activities/FlashScreenActivity.java | 30 +-
.../mobile/activities/LoginActivity.java | 91 +--
.../taverna/mobile/activities/RunResult.java | 8 +-
.../mobile/activities/SettingsActivity.java | 157 +++--
.../activities/WorkflowDetailActivity.java | 36 +-
.../adapters/FavoriteWorkflowAdapter.java | 75 ++-
.../taverna/mobile/adapters/RunAdapter.java | 39 +-
.../mobile/adapters/SliderMenuAdapter.java | 21 +-
.../mobile/adapters/WorkflowAdapter.java | 196 +++---
.../WorkflowDownloadReceiver.java | 25 +-
.../customviews/WorkflowPreviewImageView.java | 200 +++---
.../apache/taverna/mobile/data/DataManager.java | 10 +-
.../taverna/mobile/data/model/Announcement.java | 60 +-
.../mobile/data/model/Announcements.java | 49 +-
.../taverna/mobile/data/model/Author.java | 139 +++--
.../mobile/data/model/DetailAnnouncement.java | 83 ++-
.../mobile/data/remote/BaseApiManager.java | 11 +-
.../mobile/data/remote/TavernaService.java | 2 +-
.../mobile/fragments/FavoriteFragment.java | 74 +--
.../mobile/fragments/WorkflowItemFragment.java | 304 +++++----
.../mobile/fragments/WorkflowViewpager.java | 114 ++++
.../mobile/fragments/Workflow_viewpager.java | 113 ----
.../fragments/workflowdetails/RunFragment.java | 227 +++----
.../workflowdetails/WorkflowAboutFragment.java | 14 +-
.../WorkflowLicenceFragment.java | 16 +-
.../WorkflowRunHistoryFragment.java | 75 +--
.../workflowdetails/WorkflowdetailFragment.java | 610 ++++++++++---------
.../taverna/mobile/tavernamobile/Runs.java | 47 +-
.../mobile/tavernamobile/TavernaPlayerAPI.java | 71 ++-
.../taverna/mobile/tavernamobile/User.java | 32 +-
.../taverna/mobile/tavernamobile/Workflow.java | 177 +++---
.../mobile/tavernamobile/WorkflowComponent.java | 8 +-
.../mobile/ui/adapter/AnnouncementAdapter.java | 36 +-
.../EndlessRecyclerOnScrollListener.java | 25 +-
.../ui/adapter/RecyclerItemClickListner.java | 158 ++---
.../ui/anouncements/AnnouncementFragment.java | 55 +-
.../ui/anouncements/AnnouncementMvpView.java | 6 +-
.../ui/anouncements/AnnouncementPresenter.java | 18 +-
.../taverna/mobile/utils/AvatarLoader.java | 26 +-
.../taverna/mobile/utils/ConnectionInfo.java | 10 +-
.../apache/taverna/mobile/utils/DBUtility.java | 65 ++
.../apache/taverna/mobile/utils/DB_Utility.java | 67 --
.../taverna/mobile/utils/DetailsLoader.java | 186 +++---
.../apache/taverna/mobile/utils/HttpUtil.java | 37 +-
.../apache/taverna/mobile/utils/RunTask.java | 32 +-
.../apache/taverna/mobile/utils/WorkflowDB.java | 328 ++++++++++
.../mobile/utils/WorkflowDownloadManager.java | 46 +-
.../taverna/mobile/utils/WorkflowLoader.java | 41 +-
.../mobile/utils/WorkflowLoaderMain.java | 9 +-
.../taverna/mobile/utils/WorkflowOpen.java | 145 +++--
.../taverna/mobile/utils/Workflow_DB.java | 307 ----------
.../utils/xmlparsers/AvatarXMLParser.java | 5 +-
.../xmlparsers/MyExperimentXmlParserRules.java | 230 ++++---
.../utils/xmlparsers/WorkflowDetailParser.java | 13 +-
config/quality/checkstyle/checkstyle-config.xml | 183 ++++++
.../quality/findbugs/android-exclude-filter.xml | 39 ++
config/quality/pmd/pmd-ruleset.xml | 56 ++
config/quality/quality.gradle | 95 +++
gradle.properties | 5 +-
gradle/wrapper/gradle-wrapper.properties | 1 +
62 files changed, 3211 insertions(+), 2504 deletions(-)
----------------------------------------------------------------------
[12/18] incubator-taverna-mobile git commit: remove Gradle Wrapper
conflict
Posted by st...@apache.org.
remove Gradle Wrapper conflict
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/347d558d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/tree/347d558d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/diff/347d558d
Branch: refs/heads/master
Commit: 347d558dc951b9fd5898ef996812e82501df26d6
Parents: cc6c0ca 17c8bc7
Author: Sagar <ku...@gmail.com>
Authored: Mon Jun 13 15:07:58 2016 +0530
Committer: Sagar <ku...@gmail.com>
Committed: Mon Jun 13 15:07:58 2016 +0530
----------------------------------------------------------------------
.travis.yml | 30 +++++++++++++++++++++++++++
gradle/wrapper/gradle-wrapper.properties | 1 +
2 files changed, 31 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/347d558d/gradle/wrapper/gradle-wrapper.properties
----------------------------------------------------------------------
diff --cc gradle/wrapper/gradle-wrapper.properties
index 7ca2b70,63da2ff..f13e8da
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@@ -1,4 -1,4 +1,5 @@@
+#Mon Jun 13 14:56:44 IST 2016
+ #Fri Jun 10 16:01:58 GMT+05:30 2016
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
[14/18] incubator-taverna-mobile git commit: ignore
DM_DEFAULT_ENCODING error
Posted by st...@apache.org.
ignore DM_DEFAULT_ENCODING error
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/0df0ab5d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/tree/0df0ab5d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/diff/0df0ab5d
Branch: refs/heads/master
Commit: 0df0ab5d1027566a77248932de33e5c420ed45af
Parents: 326071a
Author: Sagar <ku...@gmail.com>
Authored: Mon Jun 13 16:03:43 2016 +0530
Committer: Sagar <ku...@gmail.com>
Committed: Mon Jun 13 16:03:43 2016 +0530
----------------------------------------------------------------------
config/quality/findbugs/android-exclude-filter.xml | 3 +++
1 file changed, 3 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/0df0ab5d/config/quality/findbugs/android-exclude-filter.xml
----------------------------------------------------------------------
diff --git a/config/quality/findbugs/android-exclude-filter.xml b/config/quality/findbugs/android-exclude-filter.xml
index ccd73c6..a135338 100644
--- a/config/quality/findbugs/android-exclude-filter.xml
+++ b/config/quality/findbugs/android-exclude-filter.xml
@@ -7,6 +7,9 @@
<Class name="~.*\.Manifest\$.*"/>
</Match>
+ <Match>
+ <Bug pattern="DM_DEFAULT_ENCODING" />
+ </Match>
<!-- All bugs in test classes, except for JUnit-specific bugs -->
<Match>
[04/18] incubator-taverna-mobile git commit: refactor code using
CheckStyle
Posted by st...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/tavernamobile/Workflow.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/Workflow.java b/app/src/main/java/org/apache/taverna/mobile/tavernamobile/Workflow.java
index b4547ae..195775e 100644
--- a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/Workflow.java
+++ b/app/src/main/java/org/apache/taverna/mobile/tavernamobile/Workflow.java
@@ -2,10 +2,10 @@ package org.apache.taverna.mobile.tavernamobile;
/**
* Apache Taverna Mobile
* Copyright 2015 The Apache Software Foundation
-
+ *
* This product includes software developed at
* The Apache Software Foundation (http://www.apache.org/).
-
+ *
* 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
@@ -24,12 +24,12 @@ package org.apache.taverna.mobile.tavernamobile;
* under the License.
*/
+import org.apache.taverna.mobile.R;
+
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
-import org.apache.taverna.mobile.R;
-
import java.util.ArrayList;
import java.util.List;
@@ -45,48 +45,56 @@ public class Workflow {
private String workflow_datecreated, workflow_datemodified;
private Bitmap workflow_author_bitmap;
private WorkflowComponent workflowComponent;
- private String workflow_remote_url; //provides a link to download the workflow. Equivalent to content-uri in the xml form
- private String workflow_web_url; //a string containing the workflow resource that can be loaded in browser
- private String workflow_details_url;//used to refer to the details of the workflow
+ private String workflow_remote_url; //provides a link to download the workflow. Equivalent to
+ // content-uri in the xml form
+ private String workflow_web_url; //a string containing the workflow resource that can be
+ // loaded in browser
+ private String workflow_details_url; //used to refer to the details of the workflow
private List<Runs> workflow_runs;
private int workflow_input;
private long id;
- private String workflow_uploader;//indicate the user who uploaded the workflow
+ private String workflow_uploader; //indicate the user who uploaded the workflow
private String workflow_Type; //describes whether it is a type 1 or 2 workflow
private String workflow_preview; //a url to a preview image of the workflow
- private String workflow_thumb_big; //a url to a full scale image of the workflow. I Will usually an SVG because the it is available for most of the workflows
+ private String workflow_thumb_big; //a url to a full scale image of the workflow. I Will
+ // usually an SVG because the it is available for most of the workflows
private String workflow_licence_type; //describes a type of licensing for the workflow
- private String workflow_content_type;//specifies a content type for the workflow;
- private List<String> workflow_tags;//provides a list of string tags that could be used to index the workflow for searches
- private String workflow_versions;//a list of version for the workflow uploaded over time
- private List<String> workflow_credits;//key contributors to the workflow
-
- public static enum workflow_input_type{ TYPE_INT, TYPE_STRING, TYPE_OBJECT};
+ private String workflow_content_type; //specifies a content type for the workflow;
+ private List<String> workflow_tags; //provides a list of string tags that could be used to
+ // index the workflow for searches
+ private String workflow_versions; //a list of version for the workflow uploaded over time
+ private List<String> workflow_credits; //key contributors to the workflow
public Workflow() {
}
+ ;
+
public Workflow(Context context) {
this.context = context;
this.workflow_runs = new ArrayList<Runs>();
}
- public Workflow(String author, String description, long id, String url){
+
+ public Workflow(String author, String description, long id, String url) {
this.workflow_author = author;
- this.workflow_author_bitmap = null;//BitmapFactory.decodeResource(getResources(), R.drawable.ic_userprofile);
- this.workflow_description =description;
- this.workflow_input=1;
+ this.workflow_author_bitmap = null; //BitmapFactory.decodeResource(getResources(), R
+ // .drawable.ic_userprofile);
+ this.workflow_description = description;
+ this.workflow_input = 1;
this.id = id;
this.workflow_remote_url = url;
this.workflow_runs = new ArrayList<Runs>();
}
- public Workflow(Context ctx, String title, String author, String description, long id, String url){
+ public Workflow(Context ctx, String title, String author, String description, long id, String
+ url) {
this.context = ctx;
this.workflow_author = author;
- this.workflow_author_bitmap = BitmapFactory.decodeResource(this.context.getResources(), R.drawable.ic_userprofile);
- this.workflow_description =description;
- this.workflow_title =title;
- this.workflow_input=1;
+ this.workflow_author_bitmap = BitmapFactory.decodeResource(this.context.getResources(), R
+ .drawable.ic_userprofile);
+ this.workflow_description = description;
+ this.workflow_title = title;
+ this.workflow_input = 1;
this.id = id;
this.workflow_remote_url = url;
this.workflow_runs = new ArrayList<Runs>();
@@ -104,6 +112,10 @@ public class Workflow {
return this.workflow_datecreated;
}
+ public void setWorkflow_datecreated(String workflow_datecreated) {
+ this.workflow_datecreated = workflow_datecreated;
+ }
+
public String getWorkflow_remote_url() {
return this.workflow_remote_url;
}
@@ -116,6 +128,10 @@ public class Workflow {
return this.workflow_details_url;
}
+ public void setWorkflow_details_url(String workflow_details_url) {
+ this.workflow_details_url = workflow_details_url;
+ }
+
public User getUploader() {
return this.uploader;
}
@@ -124,10 +140,6 @@ public class Workflow {
this.uploader = uploader;
}
- public void setWorkflow_details_url(String workflow_details_url) {
- this.workflow_details_url = workflow_details_url;
- }
-
public String getPolicy() {
return this.policy;
}
@@ -144,10 +156,6 @@ public class Workflow {
this.about = about;
}
- public void setWorkflow_datecreated(String workflow_datecreated) {
- this.workflow_datecreated = workflow_datecreated;
- }
-
public String getWorkflow_datemodified() {
return this.workflow_datemodified;
}
@@ -164,7 +172,7 @@ public class Workflow {
this.workflow_runs = workflow_runs;
}
- public void addWorkflowRun(Runs runs){ //adds a run to this workflow
+ public void addWorkflowRun(Runs runs) { //adds a run to this workflow
this.workflow_runs.add(runs);
}
@@ -176,46 +184,46 @@ public class Workflow {
this.workflow_input = workflow_input;
}
- public workflow_input_type getInputType(){
- return workflow_input_type.TYPE_INT;
+ public WorkflowInputType getInputType() {
+ return WorkflowInputType.TYPE_INT;
}
public String getWorkflow_author() {
return this.workflow_author;
}
- public String getWorkflow_description() {
- return this.workflow_description;
- }
-
- public String getWorkflow_title() {
- return this.workflow_title;
+ public void setWorkflow_author(String workflow_author) {
+ this.workflow_author = workflow_author;
}
- public Bitmap getWorkflow_author_bitmap() {
- return this.workflow_author_bitmap;
+ public String getWorkflow_description() {
+ return this.workflow_description;
}
- public WorkflowComponent getWorkflowComponent() {
- return this.workflowComponent;
+ public void setWorkflow_description(String workflow_description) {
+ this.workflow_description = workflow_description;
}
- public void setWorkflow_author(String workflow_author) {
- this.workflow_author = workflow_author;
+ public String getWorkflow_title() {
+ return this.workflow_title;
}
public void setWorkflow_title(String workflow_title) {
this.workflow_title = workflow_title;
}
- public void setWorkflow_description(String workflow_description) {
- this.workflow_description = workflow_description;
+ public Bitmap getWorkflow_author_bitmap() {
+ return this.workflow_author_bitmap;
}
public void setWorkflow_author_bitmap(Bitmap workflow_author_bitmap) {
this.workflow_author_bitmap = workflow_author_bitmap;
}
+ public WorkflowComponent getWorkflowComponent() {
+ return this.workflowComponent;
+ }
+
public void setWorkflowComponent(WorkflowComponent workflowComponent) {
this.workflowComponent = workflowComponent;
}
@@ -304,6 +312,8 @@ public class Workflow {
public String toString() {
return this.workflow_title;
}
+
+ public static enum WorkflowInputType { TYPE_INT, TYPE_STRING, TYPE_OBJECT }
}
/* Use the sample code if it becomes necessary to pass this objects amongst activities
/ simple class that just has one member property as an example
@@ -324,7 +334,8 @@ public class Workflow implements Parcelable {
out.writeInt(mData);
}
-// this is used to regenerate your object. All Parcelables must have a CREATOR that implements these two methods
+// this is used to regenerate your object. All Parcelables must have a CREATOR that implements
+these two methods
public static final Parcelable.Creator<Workflow> CREATOR = new Parcelable.Creator<Workflow>() {
public Workflow createFromParcel(Parcel in) {
return new Workflow(in);
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/tavernamobile/WorkflowComponent.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/WorkflowComponent.java b/app/src/main/java/org/apache/taverna/mobile/tavernamobile/WorkflowComponent.java
index dab4775..514824a 100644
--- a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/WorkflowComponent.java
+++ b/app/src/main/java/org/apache/taverna/mobile/tavernamobile/WorkflowComponent.java
@@ -2,10 +2,10 @@ package org.apache.taverna.mobile.tavernamobile;
/**
* Apache Taverna Mobile
* Copyright 2015 The Apache Software Foundation
-
+ *
* This product includes software developed at
* The Apache Software Foundation (http://www.apache.org/).
-
+ *
* 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
@@ -23,9 +23,11 @@ package org.apache.taverna.mobile.tavernamobile;
* specific language governing permissions and limitations
* under the License.
*/
+
/**
* Created by Larry Akah on 6/8/15.
- * the component elements that make up a workflow's dataflow (e.g. Taverna has sources, sinks, processors, links and coordinations)
+ * the component elements that make up a workflow's dataflow (e.g. Taverna has sources, sinks,
+ * processors, links and coordinations)
*/
public class WorkflowComponent {
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/ui/adapter/AnnouncementAdapter.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/ui/adapter/AnnouncementAdapter.java b/app/src/main/java/org/apache/taverna/mobile/ui/adapter/AnnouncementAdapter.java
index c25e50d..95f3239 100644
--- a/app/src/main/java/org/apache/taverna/mobile/ui/adapter/AnnouncementAdapter.java
+++ b/app/src/main/java/org/apache/taverna/mobile/ui/adapter/AnnouncementAdapter.java
@@ -18,6 +18,9 @@
*/
package org.apache.taverna.mobile.ui.adapter;
+import org.apache.taverna.mobile.R;
+import org.apache.taverna.mobile.data.model.Announcement;
+
import android.support.v7.widget.RecyclerView;
import android.util.Log;
import android.view.LayoutInflater;
@@ -26,9 +29,6 @@ import android.view.ViewGroup;
import android.widget.ProgressBar;
import android.widget.TextView;
-import org.apache.taverna.mobile.R;
-import org.apache.taverna.mobile.data.model.Announcement;
-
import java.util.List;
import butterknife.BindView;
@@ -37,12 +37,12 @@ import butterknife.ButterKnife;
public class AnnouncementAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
- private List<Announcement> mAnnouncementList;
private final int VIEW_ITEM = 1;
private final int VIEW_PROG = 0;
+ private List<Announcement> mAnnouncementList;
- public AnnouncementAdapter( List<Announcement> announcementList) {
+ public AnnouncementAdapter(List<Announcement> announcementList) {
mAnnouncementList = announcementList;
}
@@ -50,15 +50,6 @@ public class AnnouncementAdapter extends RecyclerView.Adapter<RecyclerView.ViewH
mAnnouncementList = announcementList;
}
- public static class ProgressViewHolder extends RecyclerView.ViewHolder {
- public ProgressBar progressBar;
- public ProgressViewHolder(View v) {
- super(v);
- progressBar = (ProgressBar)v.findViewById(R.id.progressBar1);
- }
- }
-
-
@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
RecyclerView.ViewHolder vh;
@@ -78,9 +69,10 @@ public class AnnouncementAdapter extends RecyclerView.Adapter<RecyclerView.ViewH
@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
- if(holder instanceof ViewHolder) {
- ((ViewHolder) holder).tvAnnouncementTitle.setText(mAnnouncementList.get(position).getContent());
- Log.e("", "onBindViewHolder: "+mAnnouncementList.get(1).getContent());
+ if (holder instanceof ViewHolder) {
+ ((ViewHolder) holder).tvAnnouncementTitle.setText(mAnnouncementList.get(position)
+ .getContent());
+ Log.e("", "onBindViewHolder: " + mAnnouncementList.get(1).getContent());
}
}
@@ -91,9 +83,17 @@ public class AnnouncementAdapter extends RecyclerView.Adapter<RecyclerView.ViewH
@Override
public int getItemViewType(int position) {
- return mAnnouncementList.get(position)!=null? VIEW_ITEM: VIEW_PROG;
+ return mAnnouncementList.get(position) != null ? VIEW_ITEM : VIEW_PROG;
}
+ public static class ProgressViewHolder extends RecyclerView.ViewHolder {
+ public ProgressBar progressBar;
+
+ public ProgressViewHolder(View v) {
+ super(v);
+ progressBar = (ProgressBar) v.findViewById(R.id.progressBar1);
+ }
+ }
class ViewHolder extends RecyclerView.ViewHolder {
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/ui/adapter/EndlessRecyclerOnScrollListener.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/ui/adapter/EndlessRecyclerOnScrollListener.java b/app/src/main/java/org/apache/taverna/mobile/ui/adapter/EndlessRecyclerOnScrollListener.java
index f3fb3f5..24bc319 100644
--- a/app/src/main/java/org/apache/taverna/mobile/ui/adapter/EndlessRecyclerOnScrollListener.java
+++ b/app/src/main/java/org/apache/taverna/mobile/ui/adapter/EndlessRecyclerOnScrollListener.java
@@ -24,12 +24,12 @@ import android.support.v7.widget.RecyclerView;
public abstract class EndlessRecyclerOnScrollListener extends RecyclerView.OnScrollListener {
public static String TAG = EndlessRecyclerOnScrollListener.class.getSimpleName();
-
- private int previousTotal = 0; // The total number of items in the dataset after the last load
- private boolean loading = true; // True if we are still waiting for the last set of data to load.
- private int visibleThreshold = 1; // The minimum amount of items to have below your current scroll position before loading more.
int firstVisibleItem, visibleItemCount, totalItemCount;
-
+ private int previousTotal = 0; // The total number of items in the dataset after the last load
+ private boolean loading = true; // True if we are still waiting for the last set of data to
+ // load.
+ private int visibleThreshold = 1; // The minimum amount of items to have below your current
+ // scroll position before loading more.
private int current_page = 1;
private LinearLayoutManager mLinearLayoutManager;
@@ -47,12 +47,13 @@ public abstract class EndlessRecyclerOnScrollListener extends RecyclerView.OnScr
firstVisibleItem = mLinearLayoutManager.findFirstVisibleItemPosition();
if (loading) {
- if (totalItemCount > previousTotal+1) {
+ if (totalItemCount > previousTotal + 1) {
loading = false;
previousTotal = totalItemCount;
}
}
- if (!loading && (totalItemCount - visibleItemCount) <= (firstVisibleItem + visibleThreshold)) {
+ if (!loading && (totalItemCount - visibleItemCount) <= (firstVisibleItem +
+ visibleThreshold)) {
// End has been reached
// Do something
current_page++;
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/ui/adapter/RecyclerItemClickListner.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/ui/adapter/RecyclerItemClickListner.java b/app/src/main/java/org/apache/taverna/mobile/ui/adapter/RecyclerItemClickListner.java
index 5c0df16..ac17eb4 100644
--- a/app/src/main/java/org/apache/taverna/mobile/ui/adapter/RecyclerItemClickListner.java
+++ b/app/src/main/java/org/apache/taverna/mobile/ui/adapter/RecyclerItemClickListner.java
@@ -27,114 +27,114 @@ import android.view.View;
public class RecyclerItemClickListner implements RecyclerView.OnItemTouchListener {
-
+
protected OnItemClickListener listener;
-
+
private GestureDetector gestureDetector;
-
+
@Nullable
private View childView;
-
+
private int childViewPosition;
-
+
public RecyclerItemClickListner(Context context, OnItemClickListener listener) {
this.gestureDetector = new GestureDetector(context, new GestureListener());
this.listener = listener;
- }
-
- @Override
+ }
+
+ @Override
public boolean onInterceptTouchEvent(RecyclerView view, MotionEvent event) {
childView = view.findChildViewUnder(event.getX(), event.getY());
childViewPosition = view.getChildAdapterPosition(childView);
-
+
return childView != null && gestureDetector.onTouchEvent(event);
- }
-
- @Override
+ }
+
+ @Override
public void onTouchEvent(RecyclerView view, MotionEvent event) {
// Not needed.
- }
-
- @Override
+ }
+
+ @Override
public void onRequestDisallowInterceptTouchEvent(boolean disallowIntercept) {
-
- }
-
- /**
- * A click listener for items.
- */
- public interface OnItemClickListener {
-
- /**
- * Called when an item is clicked.
- *
- * @param childView View of the item that was clicked.
- * @param position Position of the item that was clicked.
- */
+
+ }
+
+ /**
+ * A click listener for items.
+ */
+ public interface OnItemClickListener {
+
+ /**
+ * Called when an item is clicked.
+ *
+ * @param childView View of the item that was clicked.
+ * @param position Position of the item that was clicked.
+ */
public void onItemClick(View childView, int position);
-
- /**
- * Called when an item is long pressed.
- *
- * @param childView View of the item that was long pressed.
- * @param position Position of the item that was long pressed.
- */
+
+ /**
+ * Called when an item is long pressed.
+ *
+ * @param childView View of the item that was long pressed.
+ * @param position Position of the item that was long pressed.
+ */
public void onItemLongPress(View childView, int position);
-
- }
-
- /**
- * A simple click listener whose methods can be overridden one by one.
- */
- public static abstract class SimpleOnItemClickListener implements OnItemClickListener {
-
- /**
- * Called when an item is clicked. The default implementation is a no-op.
- *
- * @param childView View of the item that was clicked.
- * @param position Position of the item that was clicked.
- */
+
+ }
+
+ /**
+ * A simple click listener whose methods can be overridden one by one.
+ */
+ public abstract static class SimpleOnItemClickListener implements OnItemClickListener {
+
+ /**
+ * Called when an item is clicked. The default implementation is a no-op.
+ *
+ * @param childView View of the item that was clicked.
+ * @param position Position of the item that was clicked.
+ */
public void onItemClick(View childView, int position) {
// Do nothing.
- }
-
- /**
- * Called when an item is long pressed. The default implementation is a no-op.
- *
- * @param childView View of the item that was long pressed.
- * @param position Position of the item that was long pressed.
- */
+ }
+
+ /**
+ * Called when an item is long pressed. The default implementation is a no-op.
+ *
+ * @param childView View of the item that was long pressed.
+ * @param position Position of the item that was long pressed.
+ */
public void onItemLongPress(View childView, int position) {
// Do nothing.
- }
-
- }
-
+ }
+
+ }
+
protected class GestureListener extends GestureDetector.SimpleOnGestureListener {
-
- @Override
+
+ @Override
public boolean onSingleTapUp(MotionEvent event) {
if (childView != null) {
listener.onItemClick(childView, childViewPosition);
- }
-
- return true;
- }
-
- @Override
+ }
+
+ return true;
+ }
+
+ @Override
public void onLongPress(MotionEvent event) {
if (childView != null) {
listener.onItemLongPress(childView, childViewPosition);
- }
- }
-
- @Override
+ }
+ }
+
+ @Override
public boolean onDown(MotionEvent event) {
// Best practice to always return true here.
// http://developer.android.com/training/gestures/detector.html#detect
- return true;
- }
-
- }
-
+ return true;
+ }
+
+ }
+
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/ui/anouncements/AnnouncementFragment.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/ui/anouncements/AnnouncementFragment.java b/app/src/main/java/org/apache/taverna/mobile/ui/anouncements/AnnouncementFragment.java
index d10f802..6143df4 100644
--- a/app/src/main/java/org/apache/taverna/mobile/ui/anouncements/AnnouncementFragment.java
+++ b/app/src/main/java/org/apache/taverna/mobile/ui/anouncements/AnnouncementFragment.java
@@ -18,6 +18,16 @@
*/
package org.apache.taverna.mobile.ui.anouncements;
+import org.apache.taverna.mobile.R;
+import org.apache.taverna.mobile.data.DataManager;
+import org.apache.taverna.mobile.data.model.Announcements;
+import org.apache.taverna.mobile.data.model.DetailAnnouncement;
+import org.apache.taverna.mobile.ui.adapter.AnnouncementAdapter;
+import org.apache.taverna.mobile.ui.adapter.EndlessRecyclerOnScrollListener;
+import org.apache.taverna.mobile.ui.adapter.RecyclerItemClickListner;
+import org.apache.taverna.mobile.utils.ConnectionInfo;
+import org.apache.taverna.mobile.utils.ScrollChildSwipeRefreshLayout;
+
import android.app.ProgressDialog;
import android.os.Bundle;
import android.support.design.widget.Snackbar;
@@ -39,21 +49,12 @@ import android.widget.Button;
import android.widget.ProgressBar;
import android.widget.TextView;
-import org.apache.taverna.mobile.R;
-import org.apache.taverna.mobile.data.DataManager;
-import org.apache.taverna.mobile.data.model.Announcements;
-import org.apache.taverna.mobile.data.model.DetailAnnouncement;
-import org.apache.taverna.mobile.ui.adapter.AnnouncementAdapter;
-import org.apache.taverna.mobile.ui.adapter.EndlessRecyclerOnScrollListener;
-import org.apache.taverna.mobile.ui.adapter.RecyclerItemClickListner;
-import org.apache.taverna.mobile.utils.ConnectionInfo;
-import org.apache.taverna.mobile.utils.ScrollChildSwipeRefreshLayout;
-
import butterknife.BindView;
import butterknife.ButterKnife;
-public class AnnouncementFragment extends Fragment implements RecyclerItemClickListner.OnItemClickListener, AnnouncementMvpView {
+public class AnnouncementFragment extends Fragment implements RecyclerItemClickListner
+ .OnItemClickListener, AnnouncementMvpView {
public final String LOG_TAG = getClass().getSimpleName();
@@ -66,7 +67,7 @@ public class AnnouncementFragment extends Fragment implements RecyclerItemClickL
@BindView(R.id.progress_circular)
ProgressBar mProgressBar;
- private AlertDialog alertDialog;
+ private AlertDialog alertDialog;
private ProgressDialog dialog;
@@ -87,7 +88,8 @@ public class AnnouncementFragment extends Fragment implements RecyclerItemClickL
@Override
public void onItemClick(View childView, int position) {
showWaitProgress(true);
- mAnnouncementPresenter.loadAnnouncementDetails(mAnnouncements.getAnnouncement().get(position).getId());
+ mAnnouncementPresenter.loadAnnouncementDetails(mAnnouncements.getAnnouncement().get
+ (position).getId());
}
@Override
@@ -103,12 +105,13 @@ public class AnnouncementFragment extends Fragment implements RecyclerItemClickL
mAnnouncements = new Announcements();
dataManager = new DataManager();
mAnnouncementPresenter = new AnnouncementPresenter(dataManager);
- mConnectionInfo =new ConnectionInfo(getContext());
+ mConnectionInfo = new ConnectionInfo(getContext());
}
@Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
+ public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle
+ savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_announcement, container, false);
ButterKnife.bind(this, rootView);
mAnnouncementPresenter.attachView(this);
@@ -129,7 +132,8 @@ public class AnnouncementFragment extends Fragment implements RecyclerItemClickL
mRecyclerView.setItemAnimator(new DefaultItemAnimator());
- mSwipeRefresh.setColorSchemeResources(R.color.colorAccent, R.color.colorAccent, R.color.colorPrimary);
+ mSwipeRefresh.setColorSchemeResources(R.color.colorAccent, R.color.colorAccent, R.color
+ .colorPrimary);
mSwipeRefresh.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
@Override
public void onRefresh() {
@@ -159,7 +163,8 @@ public class AnnouncementFragment extends Fragment implements RecyclerItemClickL
if (mConnectionInfo.isConnectingToInternet()) {
mAnnouncements.getAnnouncement().add(null);
- mAnnouncementAdapter.notifyItemInserted(mAnnouncements.getAnnouncement().size());
+ mAnnouncementAdapter.notifyItemInserted(mAnnouncements.getAnnouncement().size
+ ());
mPageNumber = ++mPageNumber;
mAnnouncementPresenter.loadAllAnnouncement(mPageNumber);
Log.i(LOG_TAG, "Loading more");
@@ -216,7 +221,7 @@ public class AnnouncementFragment extends Fragment implements RecyclerItemClickL
TextView date = ButterKnife.findById(dialogView, R.id.tvDialogDate);
TextView author = ButterKnife.findById(dialogView, R.id.tvDialogAuthor);
WebView text = ButterKnife.findById(dialogView, R.id.wvDialogText);
- Button buttonOk=ButterKnife.findById(dialogView, R.id.bDialogOK);
+ Button buttonOk = ButterKnife.findById(dialogView, R.id.bDialogOK);
buttonOk.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
@@ -236,8 +241,9 @@ public class AnnouncementFragment extends Fragment implements RecyclerItemClickL
super.onResume();
}
- public void showErrorSnackBar(){
- final Snackbar snackbar = Snackbar.make(mRecyclerView, "No Internet Connection", Snackbar.LENGTH_LONG);
+ public void showErrorSnackBar() {
+ final Snackbar snackbar = Snackbar.make(mRecyclerView, "No Internet Connection", Snackbar
+ .LENGTH_LONG);
snackbar.setAction("OK", new View.OnClickListener() {
@Override
public void onClick(View view) {
@@ -250,9 +256,9 @@ public class AnnouncementFragment extends Fragment implements RecyclerItemClickL
@Override
public void showWaitProgress(boolean b) {
- if(b){
- dialog = ProgressDialog.show(getContext(), "Loading", "Please wait...", true);
- }else{
+ if (b) {
+ dialog = ProgressDialog.show(getContext(), "Loading", "Please wait...", true);
+ } else {
dialog.dismiss();
}
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/ui/anouncements/AnnouncementMvpView.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/ui/anouncements/AnnouncementMvpView.java b/app/src/main/java/org/apache/taverna/mobile/ui/anouncements/AnnouncementMvpView.java
index cfaaa57..e741d35 100644
--- a/app/src/main/java/org/apache/taverna/mobile/ui/anouncements/AnnouncementMvpView.java
+++ b/app/src/main/java/org/apache/taverna/mobile/ui/anouncements/AnnouncementMvpView.java
@@ -18,16 +18,20 @@
*/
package org.apache.taverna.mobile.ui.anouncements;
-import org.apache.taverna.mobile.data.model.DetailAnnouncement;
import org.apache.taverna.mobile.data.model.Announcements;
+import org.apache.taverna.mobile.data.model.DetailAnnouncement;
import org.apache.taverna.mobile.ui.base.MvpView;
public interface AnnouncementMvpView extends MvpView {
void showAllAnouncement(Announcements announcements);
+
void showProgressbar(boolean b);
+
void showErrorSnackBar();
+
void showWaitProgress(boolean b);
+
void showAnnouncementDetail(DetailAnnouncement detailAnnouncement);
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/ui/anouncements/AnnouncementPresenter.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/ui/anouncements/AnnouncementPresenter.java b/app/src/main/java/org/apache/taverna/mobile/ui/anouncements/AnnouncementPresenter.java
index d4e5cfe..c8ca5a7 100644
--- a/app/src/main/java/org/apache/taverna/mobile/ui/anouncements/AnnouncementPresenter.java
+++ b/app/src/main/java/org/apache/taverna/mobile/ui/anouncements/AnnouncementPresenter.java
@@ -18,12 +18,13 @@
*/
package org.apache.taverna.mobile.ui.anouncements;
-import android.util.Log;
-
import org.apache.taverna.mobile.data.DataManager;
-import org.apache.taverna.mobile.data.model.DetailAnnouncement;
import org.apache.taverna.mobile.data.model.Announcements;
+import org.apache.taverna.mobile.data.model.DetailAnnouncement;
import org.apache.taverna.mobile.ui.base.BasePresenter;
+
+import android.util.Log;
+
import rx.Observer;
import rx.Subscription;
import rx.android.schedulers.AndroidSchedulers;
@@ -37,7 +38,7 @@ public class AnnouncementPresenter extends BasePresenter<AnnouncementMvpView> {
private Subscription mSubscriptions;
- public AnnouncementPresenter(DataManager dataManager){
+ public AnnouncementPresenter(DataManager dataManager) {
mDataManager = dataManager;
}
@@ -52,7 +53,7 @@ public class AnnouncementPresenter extends BasePresenter<AnnouncementMvpView> {
if (mSubscriptions != null) mSubscriptions.unsubscribe();
}
- public void loadAllAnnouncement(int pageNumber){
+ public void loadAllAnnouncement(int pageNumber) {
mSubscriptions = mDataManager.getAllAnnouncement(pageNumber)
.observeOn(AndroidSchedulers.mainThread())
@@ -73,11 +74,12 @@ public class AnnouncementPresenter extends BasePresenter<AnnouncementMvpView> {
@Override
public void onNext(Announcements announcement) {
getMvpView().showAllAnouncement(announcement);
- Log.d(LOG_TAG,announcement.getAnnouncement().get(1).getResource());
+ Log.d(LOG_TAG, announcement.getAnnouncement().get(1).getResource());
}
});
}
- public void loadAnnouncementDetails(String id){
+
+ public void loadAnnouncementDetails(String id) {
mSubscriptions = mDataManager.getAnnouncementDetail(id)
.observeOn(AndroidSchedulers.mainThread())
@@ -90,7 +92,7 @@ public class AnnouncementPresenter extends BasePresenter<AnnouncementMvpView> {
@Override
public void onError(Throwable e) {
- Log.d(LOG_TAG,e.getMessage());
+ Log.d(LOG_TAG, e.getMessage());
getMvpView().showWaitProgress(false);
getMvpView().showErrorSnackBar();
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/utils/AvatarLoader.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/AvatarLoader.java b/app/src/main/java/org/apache/taverna/mobile/utils/AvatarLoader.java
index cf989fa..e724bfa 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/AvatarLoader.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/AvatarLoader.java
@@ -2,10 +2,10 @@ package org.apache.taverna.mobile.utils;
/**
* Apache Taverna Mobile
* Copyright 2015 The Apache Software Foundation
-
+ *
* This product includes software developed at
* The Apache Software Foundation (http://www.apache.org/).
-
+ *
* 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
@@ -23,7 +23,6 @@ package org.apache.taverna.mobile.utils;
* specific language governing permissions and limitations
* under the License.
*/
-import android.os.AsyncTask;
import com.thebuzzmedia.sjxp.rule.IRule;
@@ -32,6 +31,8 @@ import org.apache.taverna.mobile.tavernamobile.User;
import org.apache.taverna.mobile.utils.xmlparsers.AvatarXMLParser;
import org.apache.taverna.mobile.utils.xmlparsers.MyExperimentXmlParserRules;
+import android.os.AsyncTask;
+
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
@@ -39,11 +40,13 @@ import java.net.MalformedURLException;
import java.net.URL;
/**
- * initiates a process to fetch and parse uploader information so as to retrieve the id, name and avatar link
+ * initiates a process to fetch and parse uploader information so as to retrieve the id, name and
+ * avatar link
* Created by Larry AKah on 6/29/15.
*/
public class AvatarLoader extends AsyncTask<String, Void, Void> {
WorkflowAdapter.ViewHolder vh;
+
public AvatarLoader(WorkflowAdapter.ViewHolder userViewHolder) {
this.vh = userViewHolder;
}
@@ -59,9 +62,12 @@ public class AvatarLoader extends AsyncTask<String, Void, Void> {
connection.setDoInput(true);
connection.connect();
InputStream input = connection.getInputStream();
- IRule avatarRule = new MyExperimentXmlParserRules.AuthorRule(IRule.Type.ATTRIBUTE,"/user/avatar", "resource","uri","id");
- IRule avatarName = new MyExperimentXmlParserRules.AuthorRule(IRule.Type.CHARACTER,"/user/name");
- AvatarXMLParser avatarXMLParser = new AvatarXMLParser(new IRule[]{avatarRule, avatarName});
+ IRule avatarRule = new MyExperimentXmlParserRules.AuthorRule(IRule.Type.ATTRIBUTE,
+ "/user/avatar", "resource", "uri", "id");
+ IRule avatarName = new MyExperimentXmlParserRules.AuthorRule(IRule.Type.CHARACTER,
+ "/user/name");
+ AvatarXMLParser avatarXMLParser = new AvatarXMLParser(new IRule[]{avatarRule,
+ avatarName});
avatarXMLParser.parse(input, new User(strings[1], this.vh));
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/utils/ConnectionInfo.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/ConnectionInfo.java b/app/src/main/java/org/apache/taverna/mobile/utils/ConnectionInfo.java
index cd11e90..8704071 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/ConnectionInfo.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/ConnectionInfo.java
@@ -36,7 +36,8 @@ public class ConnectionInfo {
public boolean isConnectingToInternet() {
- ConnectivityManager connectivity = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
+ ConnectivityManager connectivity = (ConnectivityManager) context.getSystemService(Context
+ .CONNECTIVITY_SERVICE);
if (connectivity != null) {
NetworkInfo[] info = connectivity.getAllNetworkInfo();
if (info != null)
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/utils/DBUtility.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/DBUtility.java b/app/src/main/java/org/apache/taverna/mobile/utils/DBUtility.java
new file mode 100644
index 0000000..df7b990
--- /dev/null
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/DBUtility.java
@@ -0,0 +1,65 @@
+package org.apache.taverna.mobile.utils;
+/**
+ * Apache Taverna Mobile
+ * Copyright 2015 The Apache Software Foundation
+ *
+ * This product includes software developed at
+ * The Apache Software Foundation (http://www.apache.org/).
+ *
+ * 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.
+ */
+
+import org.json.JSONArray;
+import org.json.JSONException;
+
+import java.util.ArrayList;
+
+/**
+ * This class contains all utility functions used by our database for basic functionality not
+ * directly related to the core
+ * functionality of it but that aids a core functionality to carryout its function efficiently.
+ * This class is designed to be a singleton class
+ *
+ * @author Larry Akah
+ */
+public class DBUtility {
+
+ /**
+ * Returns a new JSONArray of new key values to be stored ommitting the identified entry to be
+ * removed
+ */
+ public static JSONArray removeKey(JSONArray keys, String removeid) throws JSONException {
+ ArrayList<String> mkeys = new ArrayList<String>();
+ if (keys != null) {
+ for (int i = 0; i < keys.length(); i++) {
+ mkeys.add(keys.getString(i));
+ }
+ mkeys.remove(removeid);
+ JSONArray nkeyArray = new JSONArray();
+ for (String newkey : mkeys) {
+ nkeyArray.put(newkey);
+ }
+ return nkeyArray; //returns the new keys to save under the db;
+
+ } else {
+ return keys; //returns a null value indicating nothin to remove due to no keys available
+ }
+
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/utils/DB_Utility.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/DB_Utility.java b/app/src/main/java/org/apache/taverna/mobile/utils/DB_Utility.java
deleted file mode 100644
index 4ae919c..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/utils/DB_Utility.java
+++ /dev/null
@@ -1,67 +0,0 @@
-package org.apache.taverna.mobile.utils;
-/**
- * Apache Taverna Mobile
- * Copyright 2015 The Apache Software Foundation
-
- * This product includes software developed at
- * The Apache Software Foundation (http://www.apache.org/).
-
- * 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.
- */
-import org.json.JSONArray;
-import org.json.JSONException;
-
-import java.util.ArrayList;
-
-/**
- * This class contains all utility functions used by our database for basic functionality not directly related to the core
- * functionality of it but that aids a core functionality to carryout its function efficiently.
- * This class is designed to be a singleton class
- * @author Larry Akah
- *
- */
-public class DB_Utility {
-
- /**
- * Returns a new JSONArray of new key values to be stored ommitting the identified entry to be removed
- * @param keys
- * @param removeid
- * @return
- * @throws org.json.JSONException
- */
- public static JSONArray removeKey(JSONArray keys, String removeid) throws JSONException{
- ArrayList<String> mkeys = new ArrayList<String>();
- if(keys!=null){
- for(int i=0; i<keys.length(); i++){
- mkeys.add(keys.getString(i));
- }
- mkeys.remove(removeid);
- JSONArray nkeyArray = new JSONArray();
- for(String newkey: mkeys){
- nkeyArray.put(newkey);
- }
- return nkeyArray; //returns the new keys to save under the db;
-
- }
- else{
- return keys; //returns a null value indicating nothin to remove due to no keys available
- }
-
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/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 013e826..9152b97 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
@@ -2,10 +2,10 @@ package org.apache.taverna.mobile.utils;
/**
* Apache Taverna Mobile
* Copyright 2015 The Apache Software Foundation
-
+ *
* This product includes software developed at
* The Apache Software Foundation (http://www.apache.org/).
-
+ *
* 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
@@ -24,11 +24,6 @@ package org.apache.taverna.mobile.utils;
* under the License.
*/
-import android.content.AsyncTaskLoader;
-import android.content.Context;
-import android.util.Base64;
-import android.util.Log;
-
import com.thebuzzmedia.sjxp.rule.IRule;
import org.apache.taverna.mobile.tavernamobile.Runs;
@@ -40,6 +35,11 @@ import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
+import android.content.AsyncTaskLoader;
+import android.content.Context;
+import android.util.Base64;
+import android.util.Log;
+
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
@@ -50,22 +50,24 @@ import java.net.MalformedURLException;
import java.net.URL;
/**
- * Loads workflow details from the myexperiment API and presents them on the UI .The class is generic and can be used to load the
+ * Loads workflow details from the myexperiment API and presents them on the UI .The class is
+ * generic and can be used to load the
* different details sections of the app.
* Created by Larry Akah on 6/14/15.
*/
public class DetailsLoader extends AsyncTaskLoader<Workflow> {
- public static enum LOAD_TYPE {TYPE_WORKFLOW_DETAIL, TYPE_RUN_HISTORY, TYPE_POLICY, TYPE_ABOUT_WORKFLOW};
- private LOAD_TYPE lt;
+ private LoadType lt;
+
+ ;
private String uri;
private Workflow workflow;
private Context context;
- public DetailsLoader(Context context, LOAD_TYPE load_type, String dataParam) {
+ public DetailsLoader(Context context, LoadType LoadType, String dataParam) {
super(context);
this.context = context;
- this.lt = load_type;
+ this.lt = LoadType;
uri = dataParam;
this.workflow = new Workflow();
}
@@ -82,7 +84,7 @@ public class DetailsLoader extends AsyncTaskLoader<Workflow> {
TavernaPlayerAPI tavernaPlayerAPI = new TavernaPlayerAPI();
URL workflowurl;
- switch (this.lt){
+ switch (this.lt) {
case TYPE_WORKFLOW_DETAIL:
workflowurl = new URL(uri);
connection = (HttpURLConnection) workflowurl.openConnection();
@@ -91,21 +93,23 @@ public class DetailsLoader extends AsyncTaskLoader<Workflow> {
connection.connect(); //send request
Log.i("Workflow Response Code", "" + connection.getResponseCode());
- Log.i("Workflow Response msg", ""+connection.getResponseMessage());
+ Log.i("Workflow Response msg", "" + 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);
+ 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("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());
+ Log.i("RESPONSE Messsage. Run", "" + connection.getResponseMessage());
dis = connection.getInputStream();
break;
case TYPE_POLICY:
@@ -116,46 +120,63 @@ public class DetailsLoader extends AsyncTaskLoader<Workflow> {
break;
}
- switch(this.lt) {
+ switch (this.lt) {
case TYPE_WORKFLOW_DETAIL: {
//make rules and apply the parser
- IRule workfl = new MyExperimentXmlParserRules.WorkflowDetailRule(IRule.Type.ATTRIBUTE,
- "/workflow", "uri","resource", "id","version");
- IRule title = new MyExperimentXmlParserRules.TitleRule(IRule.Type.CHARACTER,"/workflow/title");
- IRule description = new MyExperimentXmlParserRules.DescriptionRule(IRule.Type.CHARACTER, "/workflow/description");
- IRule type = new MyExperimentXmlParserRules.TypeRule(IRule.Type.CHARACTER, "/workflow/type");
- IRule attrType = new MyExperimentXmlParserRules.TypeRule(IRule.Type.ATTRIBUTE, "/workflow/type", "resource", "uri","id");
- IRule uploader = new MyExperimentXmlParserRules.UploaderRule(IRule.Type.CHARACTER, "/workflow/uploader");
- IRule attrUploader = new MyExperimentXmlParserRules.UploaderRule(IRule.Type.ATTRIBUTE, "/workflow/uploader", "resource", "uri","id");
- IRule date = new MyExperimentXmlParserRules.DateRule(IRule.Type.CHARACTER, "/workflow/created-at");
- IRule preview = new MyExperimentXmlParserRules.PreviewRule(IRule.Type.CHARACTER, "/workflow/preview");
- IRule licetype = new MyExperimentXmlParserRules.LicenceTypeRule(IRule.Type.CHARACTER, "/workflow/licence-type");
- IRule attrlicetype = new MyExperimentXmlParserRules.LicenceTypeRule(IRule.Type.ATTRIBUTE,"/workflow/licence-type", "resource", "uri","id");
- IRule contenturi = new MyExperimentXmlParserRules.ContentUriRule(IRule.Type.CHARACTER, "/workflow/content-uri");
- IRule contentType = new MyExperimentXmlParserRules.ContentTypeRule(IRule.Type.CHARACTER, "/workflow/content-type");
- IRule tags = new MyExperimentXmlParserRules.TagsRule(IRule.Type.CHARACTER, "/workflow/tags/tag");
- IRule attrTags = new MyExperimentXmlParserRules.TagsRule(IRule.Type.ATTRIBUTE, "/workflow/tags/tag", "resource", "uri","id");
-
- WorkflowDetailParser parser = new WorkflowDetailParser(new IRule[]{workfl,title,description,type,
- attrlicetype,attrType, uploader,attrUploader,date,preview,licetype,contenturi,contentType,tags,attrTags});
- // System.out.println(sb.toString());
+ IRule workfl = new MyExperimentXmlParserRules.WorkflowDetailRule(IRule.Type
+ .ATTRIBUTE,
+ "/workflow", "uri", "resource", "id", "version");
+ IRule title = new MyExperimentXmlParserRules.TitleRule(IRule.Type.CHARACTER,
+ "/workflow/title");
+ IRule description = new MyExperimentXmlParserRules.DescriptionRule(IRule.Type
+ .CHARACTER, "/workflow/description");
+ IRule type = new MyExperimentXmlParserRules.TypeRule(IRule.Type.CHARACTER,
+ "/workflow/type");
+ IRule attrType = new MyExperimentXmlParserRules.TypeRule(IRule.Type
+ .ATTRIBUTE, "/workflow/type", "resource", "uri", "id");
+ IRule uploader = new MyExperimentXmlParserRules.UploaderRule(IRule.Type
+ .CHARACTER, "/workflow/uploader");
+ IRule attrUploader = new MyExperimentXmlParserRules.UploaderRule(IRule.Type
+ .ATTRIBUTE, "/workflow/uploader", "resource", "uri", "id");
+ IRule date = new MyExperimentXmlParserRules.DateRule(IRule.Type.CHARACTER,
+ "/workflow/created-at");
+ IRule preview = new MyExperimentXmlParserRules.PreviewRule(IRule.Type
+ .CHARACTER, "/workflow/preview");
+ IRule licetype = new MyExperimentXmlParserRules.LicenceTypeRule(IRule.Type
+ .CHARACTER, "/workflow/licence-type");
+ IRule attrlicetype = new MyExperimentXmlParserRules.LicenceTypeRule(IRule
+ .Type.ATTRIBUTE, "/workflow/licence-type", "resource", "uri", "id");
+ IRule contenturi = new MyExperimentXmlParserRules.ContentUriRule(IRule.Type
+ .CHARACTER, "/workflow/content-uri");
+ IRule contentType = new MyExperimentXmlParserRules.ContentTypeRule(IRule.Type
+ .CHARACTER, "/workflow/content-type");
+ IRule tags = new MyExperimentXmlParserRules.TagsRule(IRule.Type.CHARACTER,
+ "/workflow/tags/tag");
+ IRule attrTags = new MyExperimentXmlParserRules.TagsRule(IRule.Type
+ .ATTRIBUTE, "/workflow/tags/tag", "resource", "uri", "id");
+
+ WorkflowDetailParser parser = new WorkflowDetailParser(new IRule[]{workfl,
+ title, description, type,
+ attrlicetype, attrType, uploader, attrUploader, date, preview,
+ licetype, contenturi, contentType, tags, attrTags});
+ // System.out.println(sb.toString());
parser.parse(dis, this.workflow);
}
- dis.close();
+ dis.close();
//br.close();
- return workflow;
- case TYPE_RUN_HISTORY:{
+ 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 = "";
- while((jsonData = br.readLine()) != null){
+ while ((jsonData = br.readLine()) != null) {
sb.append(jsonData);
}
workflow = new Workflow(this.context);
JSONArray jsonArray = new JSONArray(sb.toString());
Log.i("RUN JSON ", jsonArray.toString(2));
- for(int j=0; j< jsonArray.length();j++){
+ for (int j = 0; j < jsonArray.length(); j++) {
JSONObject jsonObject = jsonArray.getJSONObject(j);
long id = jsonObject.getLong("id");
long workflow_id = jsonObject.getLong("workflow_id");
@@ -166,13 +187,13 @@ public class DetailsLoader extends AsyncTaskLoader<Workflow> {
JSONObject userobj = jsonObject.getJSONObject("user");
String username = userobj.getString("name");
StringBuffer nm = new StringBuffer(), ur = new StringBuffer();
- for(String n: name.toLowerCase().split(" "))
+ for (String n : name.toLowerCase().split(" "))
nm.append(n);
- for (String p: uri.toLowerCase().split(" "))
+ for (String p : uri.toLowerCase().split(" "))
ur.append(p);
- if(nm.toString().equals(ur.toString())) {
- Runs mrun = new Runs(name,started,ended,state);
+ if (nm.toString().equals(ur.toString())) {
+ Runs mrun = new Runs(name, started, ended, state);
mrun.setRun_id(id);
mrun.setRun_workflow_id(workflow_id);
mrun.setRun_author(username);
@@ -181,16 +202,16 @@ public class DetailsLoader extends AsyncTaskLoader<Workflow> {
}
}
}
- return workflow;
- case TYPE_POLICY:{
+ return workflow;
+ case TYPE_POLICY: {
}
- return workflow;
+ return workflow;
default:
BufferedReader br = new BufferedReader(new InputStreamReader(dis));
StringBuffer sb = new StringBuffer();
String jsonData = "";
- while((jsonData = br.readLine()) != null){
+ while ((jsonData = br.readLine()) != null) {
sb.append(jsonData);
}
dis.close();
@@ -221,32 +242,37 @@ public class DetailsLoader extends AsyncTaskLoader<Workflow> {
forceLoad();
}*/
forceLoad();
- Log.i("Loading State","loading started");
+ Log.i("Loading State", "loading started");
}
@Override
protected void onStopLoading() {
- Log.i("Loading detailComponent","loading stopped");
+ Log.i("Loading detailComponent", "loading stopped");
}
@Override
public void deliverResult(Workflow data) {
- if(isStarted()){
+ if (isStarted()) {
super.deliverResult(data);
}
}
+
+ public static enum LoadType {
+ TYPE_WORKFLOW_DETAIL, TYPE_RUN_HISTORY, TYPE_POLICY,
+ TYPE_ABOUT_WORKFLOW
+ }
}
/**
* JSONObject js = new JSONObject(sb.toString());
- Log.i("JSON ", js.toString(2));
- String created_at = js.getString("created_at");
- String updated_at = js.getString("updated_at");
- JSONObject user = js.getJSONObject("user");
- workflow = new Workflow(this.context, js.getString("title"),
- user.getString("name"),
- js.getString("description"),
- js.getInt("id"),
- js.getString("url"));
- workflow.setWorkflow_datecreated(created_at);
- workflow.setWorkflow_datemodified(updated_at);
+ * Log.i("JSON ", js.toString(2));
+ * String created_at = js.getString("created_at");
+ * String updated_at = js.getString("updated_at");
+ * JSONObject user = js.getJSONObject("user");
+ * workflow = new Workflow(this.context, js.getString("title"),
+ * user.getString("name"),
+ * js.getString("description"),
+ * js.getInt("id"),
+ * js.getString("url"));
+ * workflow.setWorkflow_datecreated(created_at);
+ * workflow.setWorkflow_datemodified(updated_at);
**/
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/utils/HttpUtil.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/HttpUtil.java b/app/src/main/java/org/apache/taverna/mobile/utils/HttpUtil.java
index 21d92af..5c995a5 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/HttpUtil.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/HttpUtil.java
@@ -12,18 +12,16 @@ import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.util.EntityUtils;
import org.apache.taverna.mobile.tavernamobile.User;
-import java.io.DataInputStream;
import java.io.IOException;
-import java.io.ObjectInputStream;
import java.net.CookieStore;
import java.net.HttpURLConnection;
/**
* Apache Taverna Mobile
* Copyright 2015 The Apache Software Foundation
-
+ *
* This product includes software developed at
* The Apache Software Foundation (http://www.apache.org/).
-
+ *
* 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
@@ -41,31 +39,35 @@ import java.net.HttpURLConnection;
* specific language governing permissions and limitations
* under the License.
*/
+
/**
* Created by Larry Akah on 6/18/15.
*/
public class HttpUtil {
- public <T> Object doPostAuthenticate(){
- User muser = new User("",null);
+ public <T> Object doPostAuthenticate() {
+ User muser = new User("", null);
return muser;
}
- public <T> Object doGetRequestResponse(String uri, Class<T> classType, String username, String password){
+ public <T> Object doGetRequestResponse(String uri, Class<T> classType, String username,
+ String password) {
Object dataObject = null;
HttpClient httpClient = new DefaultHttpClient();
HttpGet httpGet = new HttpGet(uri);
HttpResponse httpResponse = null;
try {
- ((AbstractHttpClient) httpClient).setCookieStore((org.apache.http.client.CookieStore) CookieStore.class.newInstance());
- httpGet.addHeader(BasicScheme.authenticate(new UsernamePasswordCredentials(username,password), "UTF-8", false));
+ ((AbstractHttpClient) httpClient).setCookieStore((org.apache.http.client.CookieStore)
+ CookieStore.class.newInstance());
+ httpGet.addHeader(BasicScheme.authenticate(new UsernamePasswordCredentials(username,
+ password), "UTF-8", false));
httpResponse = httpClient.execute(httpGet);
- if(isSuccess(httpResponse, HttpURLConnection.HTTP_OK)){
+ if (isSuccess(httpResponse, HttpURLConnection.HTTP_OK)) {
HttpEntity entity = httpResponse.getEntity();
- if(entity != null){
+ if (entity != null) {
String responseString = EntityUtils.toString(entity);
dataObject = this.deSerialize(classType, responseString);
}
@@ -91,7 +93,7 @@ public class HttpUtil {
//de-serializes xml data to target class
private <T> Object deSerialize(Class<T> classType, String responseString) {
//TODO deserialize data and return the appropriate object
- // ObjectInputStream ori = new ObjectInputStream(new DataInputStream(responseString)) ;
+ // ObjectInputStream ori = new ObjectInputStream(new DataInputStream(responseString)) ;
return null;
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/utils/RunTask.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/RunTask.java b/app/src/main/java/org/apache/taverna/mobile/utils/RunTask.java
index d0710a5..e73bda0 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/RunTask.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/RunTask.java
@@ -1,5 +1,8 @@
package org.apache.taverna.mobile.utils;
+import org.apache.taverna.mobile.activities.RunResult;
+import org.apache.taverna.mobile.tavernamobile.TavernaPlayerAPI;
+
import android.app.ProgressDialog;
import android.content.Context;
import android.content.Intent;
@@ -7,9 +10,6 @@ import android.os.AsyncTask;
import android.util.Base64;
import android.util.Log;
-import org.apache.taverna.mobile.activities.RunResult;
-import org.apache.taverna.mobile.tavernamobile.TavernaPlayerAPI;
-
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.IOException;
@@ -34,8 +34,8 @@ public class RunTask extends AsyncTask<String, Void, String> {
@Override
protected void onPreExecute() {
super.onPreExecute();
- progressDialog.setMessage("Creating new run for the workflow");
- progressDialog.show();
+ progressDialog.setMessage("Creating new run for the workflow");
+ progressDialog.show();
}
@Override
@@ -45,8 +45,10 @@ public class RunTask extends AsyncTask<String, Void, String> {
TavernaPlayerAPI tavernaPlayerAPI = new TavernaPlayerAPI();
URL workflowurl = new URL(new TavernaPlayerAPI(this.context).PLAYER_RUN_URL);
HttpURLConnection connection = (HttpURLConnection) workflowurl.openConnection();
- String userpass = tavernaPlayerAPI.getPlayerUserName(this.context) + ":" + tavernaPlayerAPI.getPlayerUserPassword(this.context);
- String basicAuth = "Basic " + Base64.encodeToString(userpass.getBytes(), Base64.DEFAULT);
+ 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");
@@ -57,7 +59,8 @@ public class RunTask extends AsyncTask<String, Void, String> {
connection.connect(); //send request
DataOutputStream dos = new DataOutputStream(connection.getOutputStream());
- dos.writeBytes(params[0]);//write post data which is a formatted json data representing inputs to a run
+ dos.writeBytes(params[0]); //write post data which is a formatted json data
+ // representing inputs to a run
dos.flush();
dos.close();
@@ -75,7 +78,7 @@ public class RunTask extends AsyncTask<String, Void, String> {
return sb.toString();
- }catch (IOException ex){
+ } catch (IOException ex) {
ex.printStackTrace();
}
return sb.toString();
@@ -84,7 +87,7 @@ public class RunTask extends AsyncTask<String, Void, String> {
@Override
protected void onPostExecute(String s) {
Log.i("RUN OutPut", s);
- progressDialog.dismiss();
+ progressDialog.dismiss();
Intent runIntent = new Intent();
runIntent.setClass(this.context, RunResult.class);
runIntent.putExtra("runresult", s);
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowDB.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowDB.java b/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowDB.java
new file mode 100644
index 0000000..d9db76c
--- /dev/null
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowDB.java
@@ -0,0 +1,329 @@
+package org.apache.taverna.mobile.utils;
+/**
+ * Apache Taverna Mobile
+ * Copyright 2015 The Apache Software Foundation
+ *
+ * This product includes software developed at
+ * The Apache Software Foundation (http://www.apache.org/).
+ *
+ * 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.
+ */
+
+import org.json.JSONArray;
+import org.json.JSONException;
+import org.json.JSONObject;
+
+import android.content.Context;
+import android.content.SharedPreferences;
+import android.preference.PreferenceManager;
+import android.util.Log;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.UUID;
+
+/**
+ * @author Larry Akah
+ * @version 1.0.0
+ * This class is developed as a means to simplify the code base of the initial json_db
+ * implementation.
+ * It aims at using fully the java JSON API available to implement the CRUD functionality
+ * of the json_db library.
+ * This class is much more scalable and light-weight than the first implementation
+ */
+public class WorkflowDB {
+
+ private final String LIBTAG = getClass().getName();
+ private String ENTITY_KEY;
+ private Context context;
+ private SharedPreferences msharedpreference;
+ private ArrayList<String> ITEM_IDS;
+ private JSONObject DBJSON;
+ private JSONObject dataobj; //hold all entries for a given ENTITY_KEY
+
+ /**
+ * Constructor initializes a basic data store environment
+ *
+ * @param ctx a reference to the application's context or sand box
+ * @param entityKey The main data store key for each entity space/schema
+ */
+ public WorkflowDB(Context ctx, String entityKey) {
+ context = ctx;
+ ENTITY_KEY = entityKey;
+ DBJSON = new JSONObject();
+ ITEM_IDS = new ArrayList<String>();
+ dataobj = DBJSON;
+ }
+
+ /**
+ * Inserts an entity set('row') into the data store
+ *
+ * @param items values for each 'column' in the entity
+ * @return the same instance for chaining multiple calls to this method.
+ */
+ public WorkflowDB put(ArrayList<Object> items) throws JSONException {
+
+ String item_id = this.generateRandomId();
+ ITEM_IDS.add(item_id);
+ JSONArray jarray = new JSONArray();
+ for (Object item : items) {
+ jarray.put(item);
+ }
+ dataobj.put(item_id, jarray);
+ return this;
+ }
+
+ /**
+ * Returns all entity entries from the data store. Each item of an entity is accompanied with
+ * the key or unique id of the items.
+ *
+ * @throws org.json.JSONException for errors during construction of a JSON data string.
+ * @throws NullPointerException for any null accessed variable
+ * @author Larry Akah
+ */
+ public List<ArrayList<Object>> get() throws JSONException, NullPointerException {
+ msharedpreference = PreferenceManager.getDefaultSharedPreferences(context);
+ //read key and get existing data
+ List<ArrayList<Object>> results = new ArrayList<ArrayList<Object>>();
+ JSONObject mainJson = new JSONObject(msharedpreference.getString(ENTITY_KEY, "{" +
+ ENTITY_KEY + ":{}}"));
+
+ Log.i(ENTITY_KEY, mainJson.toString(2));
+
+ JSONArray keysJson = mainJson.getJSONArray("ids"); //retrieve a json array of ids for
+ // every entity entry
+ Log.i(ENTITY_KEY, keysJson.toString(2));
+
+ if (null != keysJson)
+ for (int i = 0; i < keysJson.length(); i++) {
+ //for each key, get the associated data
+ try {
+ JSONArray resultArray = mainJson.getJSONArray(keysJson.getString(i));
+ ArrayList<Object> mlist = new ArrayList<Object>();
+ if (null != resultArray)
+ for (int j = 0; j < resultArray.length(); j++) {
+ mlist.add(resultArray.getString(j));
+
+ }
+ mlist.add(keysJson.getString(i)); // adds the entry key as last value of the
+ // data returned
+ results.add(mlist);
+ } catch (Exception e) {
+ e.printStackTrace();
+ continue;
+ }
+ }
+ return results;
+ }
+
+ /**
+ * updates a single item entry of an entity
+ *
+ * @param itemId provides the id of the item to be updated
+ * @param newItem the new set of data to be used to update the entry
+ * @return boolean indicating whether the item was successfully updated or not. True means item
+ * was updated, false means otherwise.
+ */
+ public boolean update(String itemId, ArrayList<Object> newItem) {
+ boolean operationSucceeded = false;
+
+ JSONArray jarray = new JSONArray();
+ for (Object item : newItem) {
+ jarray.put(item);
+ }
+ try {
+ dataobj.put(itemId, jarray); //replace the current entry at the given ID.
+ Log.d(LIBTAG, "" + dataobj.toString(2));
+ operationSucceeded = true;
+ } catch (JSONException e) {
+ e.printStackTrace();
+ operationSucceeded = false;
+ } finally {
+ return operationSucceeded;
+ }
+ }
+
+ /**
+ * Updates all the items of a given entity
+ *
+ * @return the number of items successfully updated.
+ */
+ public int updateAll(List<ArrayList<String>> items) {
+ return 0;
+ }
+
+ /**
+ * Gets an entry of an entity from the data store
+ *
+ * @param id The id of the item('row') in question to return
+ * @throws org.json.JSONException for errors during construction of a JSON data string.
+ * @throws NullPointerException for any null accessed variable
+ * @author Larry Akah
+ */
+ public ArrayList<Object> get(String id) throws JSONException, NullPointerException {
+ msharedpreference = PreferenceManager.getDefaultSharedPreferences(context);
+ //read key and get existing data
+ ArrayList<Object> results = new ArrayList<Object>();
+ JSONObject mainJson = new JSONObject(msharedpreference.getString(ENTITY_KEY, ENTITY_KEY +
+ ":{}"));
+
+ Log.i(ENTITY_KEY, mainJson.toString(2));
+
+ JSONArray keysJson = mainJson.getJSONArray("ids"); //retrieve a json array of ids for
+ // every entity entry
+ Log.i(ENTITY_KEY, keysJson.toString(2));
+
+ if (null != keysJson)
+ for (int i = 0; i < keysJson.length(); i++) {
+ //for each key, get the associated data
+ try {
+ JSONArray resultArray = mainJson.getJSONArray(keysJson.getString(i));
+ if (null != resultArray)
+ for (int j = 0; j < resultArray.length(); j++) {
+ results.add(resultArray.getString(j));
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ continue;
+ }
+ }
+ return results;
+ }
+
+ /**
+ * Persists all data by making the data permanent in the preference file on the fileSystem
+ * Save all id's in a different preference
+ *
+ * @return true or false indicating whether the save was successful or not
+ * @author Larry Akah
+ */
+ public boolean save() {
+ msharedpreference = PreferenceManager.getDefaultSharedPreferences(context);
+ boolean saved = false;
+ if (dataobj != null)
+ try {
+ saved = saveid(ITEM_IDS);
+ if (saved)
+ msharedpreference.edit().putString(ENTITY_KEY, dataobj.toString()).apply();
+ return saved;
+ } catch (JSONException e) {
+ e.printStackTrace();
+ return false;
+ }
+ else
+ return false;
+ }
+
+ /**
+ * @return the number of entities inserted
+ */
+ public int insert(ArrayList<Object> item) {
+ long start = System.currentTimeMillis();
+ msharedpreference = PreferenceManager.getDefaultSharedPreferences(context);
+ try {
+ JSONObject jsonObject = new JSONObject(msharedpreference.getString(ENTITY_KEY, "{" +
+ ENTITY_KEY + ":{}}")); //main json db
+ System.out.println(jsonObject.toString(1));
+
+ JSONArray jsonArray;
+ if (jsonObject.has("ids"))
+ jsonArray = jsonObject.optJSONArray("ids");
+ else
+ jsonArray = new JSONArray();
+
+ String newItemId = item.get(0).toString(); //use the workflow id as an entity key for
+ // the new entity
+
+ //verify if this workflow item has already been marked as favorite
+ for (int k = 0; k < jsonArray.length(); k++) {
+ if (jsonArray.get(k).toString().equalsIgnoreCase(newItemId))
+ return -1;
+ }
+
+ jsonArray.put(jsonArray.length(), newItemId); //add new entity id
+ JSONArray newEntity = new JSONArray();
+ for (Object entity : item) {
+ newEntity.put(entity);
+ }
+ jsonObject.put("ids", jsonArray);
+ jsonObject.put(newItemId, newEntity);
+ msharedpreference.edit().putString(ENTITY_KEY, jsonObject.toString()).commit();
+ long end = System.currentTimeMillis();
+ System.out.println("Insert benchmark length = " + (end - start));
+ return 1;
+ } catch (JSONException e) {
+ e.printStackTrace();
+ }
+ return 0;
+ }
+
+ /**
+ * save the ids of all entity entries
+ *
+ * @param ids A list of auto-generated ids that point to each set of entity data in the data
+ * store
+ * @author Larry Akah
+ */
+ private boolean saveid(ArrayList<String> ids) throws JSONException {
+ JSONArray jarray = new JSONArray();
+ for (Object item : ids) {
+ jarray.put(item);
+ }
+ dataobj.put("ids", jarray);
+
+ return jarray.length() == ids.size() ? true : false;
+ }
+
+ /**
+ * Removes an item from an entity entry
+ *
+ * @author Larry Akah
+ */
+ public WorkflowDB delete(String itemID) throws JSONException {
+ SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(context);
+ JSONObject dbjson = new JSONObject(sp.getString(ENTITY_KEY, ENTITY_KEY + ":{}"));
+
+ JSONArray currentkeys = dbjson.getJSONArray("ids");
+ JSONArray newKeys = DBUtility.removeKey(currentkeys, itemID);
+
+ dbjson.put("ids", newKeys);
+ sp.edit().putString(ENTITY_KEY, dbjson.toString()).apply();
+
+ return this;
+ }
+
+ /**
+ * Removes all items from an entity
+ *
+ * @author Larry Akah
+ */
+ public int bulkDelete(String entity_key) {
+
+ return 0;
+ }
+
+ /**
+ * Generates a random hexadecimal string to be used as ids for identifying each entry of an
+ * entity item. Proven to be collision resistant enough accross API KEYS
+ *
+ * @author Larry Akah
+ */
+ private String generateRandomId() {
+ return UUID.randomUUID().toString();
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowDownloadManager.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowDownloadManager.java b/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowDownloadManager.java
index 3c645ce..b4b5c53 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowDownloadManager.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowDownloadManager.java
@@ -2,10 +2,10 @@ package org.apache.taverna.mobile.utils;
/**
* Apache Taverna Mobile
* Copyright 2015 The Apache Software Foundation
-
+ *
* This product includes software developed at
* The Apache Software Foundation (http://www.apache.org/).
-
+ *
* 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
@@ -23,6 +23,9 @@ package org.apache.taverna.mobile.utils;
* specific language governing permissions and limitations
* under the License.
*/
+
+import org.apache.taverna.mobile.R;
+
import android.app.DownloadManager;
import android.app.Notification;
import android.app.NotificationManager;
@@ -32,8 +35,6 @@ import android.media.RingtoneManager;
import android.net.Uri;
import android.support.v4.app.NotificationCompat;
-import org.apache.taverna.mobile.R;
-
import java.io.File;
/**
@@ -58,44 +59,50 @@ public class WorkflowDownloadManager {
/**
* Download the given workflow
+ *
* @param destination The destination file in which to save the downloaded file
*/
- public void downloadWorkflow(File destination, String sourceurl) throws Exception{
+ public void downloadWorkflow(File destination, String sourceurl) throws Exception {
DownloadManager.Query query = new DownloadManager.Query();
- query.setFilterByStatus(DownloadManager.STATUS_PAUSED|
- DownloadManager.STATUS_PENDING|
- DownloadManager.STATUS_RUNNING|DownloadManager.STATUS_FAILED|
+ query.setFilterByStatus(DownloadManager.STATUS_PAUSED |
+ DownloadManager.STATUS_PENDING |
+ DownloadManager.STATUS_RUNNING | DownloadManager.STATUS_FAILED |
DownloadManager.STATUS_SUCCESSFUL);
Cursor cur = this.downloadManager.query(query);
int col = cur.getColumnIndex(DownloadManager.COLUMN_LOCAL_FILENAME);
- for(cur.moveToFirst(); !cur.isAfterLast(); cur.moveToNext()) {
- this.isDownloading = this.isDownloading || (destination.getName() == cur.getString(col));
+ for (cur.moveToFirst(); !cur.isAfterLast(); cur.moveToNext()) {
+ this.isDownloading = this.isDownloading || (destination.getName() == cur.getString
+ (col));
}
- // cur.close();
+ // cur.close();
if (!this.isDownloading) {
Uri source = Uri.parse(sourceurl);
- //extract the file name from the source url and append it to the workflow storage directory to be used to download the file into.
- Uri destinationurl = Uri.withAppendedPath(Uri.fromFile(destination), Uri.parse(sourceurl).getLastPathSegment());
+ //extract the file name from the source url and append it to the workflow storage
+ // directory to be used to download the file into.
+ Uri destinationurl = Uri.withAppendedPath(Uri.fromFile(destination), Uri.parse
+ (sourceurl).getLastPathSegment());
DownloadManager.Request request = new DownloadManager.Request(source);
request.setTitle("Workflow");
request.setDescription("Downloading workflow");
request.setDestinationUri(destinationurl);
- request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED |
+ request.setNotificationVisibility(DownloadManager.Request
+ .VISIBILITY_VISIBLE_NOTIFY_COMPLETED |
DownloadManager.Request.VISIBILITY_VISIBLE);
long id = this.downloadManager.enqueue(request);
- if(id != 0)
+ if (id != 0)
sendNotification(this.context.getResources().getString(R.string.downloadprogress));
cur.close();
}
}
- public void sendNotification(String message){
- NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this.context);
+ public void sendNotification(String message) {
+ NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this
+ .context);
notificationBuilder.setContentText(message)
.setContentTitle("Workflow Download")
.setSmallIcon(R.mipmap.ic_launcher)
@@ -103,8 +110,9 @@ public class WorkflowDownloadManager {
.setVisibility(Notification.VISIBILITY_PUBLIC)
.setWhen(0)
.setSound(RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION));
- Notification nf = notificationBuilder.build();
- NotificationManager notificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
+ Notification nf = notificationBuilder.build();
+ NotificationManager notificationManager = (NotificationManager) context.getSystemService
+ (Context.NOTIFICATION_SERVICE);
notificationManager.notify(1, nf);
}
}
[11/18] incubator-taverna-mobile git commit: update gradle and
increase memory size
Posted by st...@apache.org.
update gradle and increase memory size
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/cc6c0ca1
Tree: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/tree/cc6c0ca1
Diff: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/diff/cc6c0ca1
Branch: refs/heads/master
Commit: cc6c0ca10efccb9cbeb4e041d7add5405cfc720b
Parents: e25d011
Author: Sagar <ku...@gmail.com>
Authored: Mon Jun 13 15:01:24 2016 +0530
Committer: Sagar <ku...@gmail.com>
Committed: Mon Jun 13 15:01:24 2016 +0530
----------------------------------------------------------------------
gradle.properties | 5 ++++-
gradle/wrapper/gradle-wrapper.properties | 4 ++--
2 files changed, 6 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/cc6c0ca1/gradle.properties
----------------------------------------------------------------------
diff --git a/gradle.properties b/gradle.properties
index 1d3591c..c1ac6d2 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -15,4 +15,7 @@
# When configured, Gradle will run in incubating parallel mode.
# This option should only be used with decoupled projects. More details, visit
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
-# org.gradle.parallel=true
\ No newline at end of file
+# org.gradle.parallel=true
+
+org.gradle.daemon=true
+org.gradle.jvmargs=-XX:MaxPermSize=1024m -XX:+CMSClassUnloadingEnabled -XX:+HeapDumpOnOutOfMemoryError -Xmx2048m
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/cc6c0ca1/gradle/wrapper/gradle-wrapper.properties
----------------------------------------------------------------------
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index 0c71e76..7ca2b70 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
-#Wed Apr 10 15:27:10 PDT 2013
+#Mon Jun 13 14:56:44 IST 2016
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip
[08/18] incubator-taverna-mobile git commit: add pmd rule sets and
gradle config
Posted by st...@apache.org.
add pmd rule sets and gradle config
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/6128a614
Tree: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/tree/6128a614
Diff: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/diff/6128a614
Branch: refs/heads/master
Commit: 6128a61493951e3bc48cf2f2ff6fc2eab75a2ed3
Parents: e752e97
Author: Sagar <ku...@gmail.com>
Authored: Fri Jun 10 22:46:28 2016 +0530
Committer: Sagar <ku...@gmail.com>
Committed: Fri Jun 10 22:46:28 2016 +0530
----------------------------------------------------------------------
config/quality/pmd/pmd-ruleset.xml | 40 +++++++++++++++++++++++++++++++++
config/quality/quality.gradle | 24 +++++++++++++++++++-
2 files changed, 63 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/6128a614/config/quality/pmd/pmd-ruleset.xml
----------------------------------------------------------------------
diff --git a/config/quality/pmd/pmd-ruleset.xml b/config/quality/pmd/pmd-ruleset.xml
new file mode 100644
index 0000000..2d66bd6
--- /dev/null
+++ b/config/quality/pmd/pmd-ruleset.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<ruleset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="Android Application Rules"
+ xmlns="http://pmd.sf.net/ruleset/1.0.0"
+ xsi:noNamespaceSchemaLocation="http://pmd.sf.net/ruleset_xml_schema.xsd"
+ xsi:schemaLocation="http://pmd.sf.net/ruleset/1.0.0 http://pmd.sf.net/ruleset_xml_schema.xsd">
+
+ <description>Custom ruleset for ribot Android application</description>
+
+ <exclude-pattern>.*/R.java</exclude-pattern>
+ <exclude-pattern>.*/gen/.*</exclude-pattern>
+
+ <rule ref="rulesets/java/android.xml" />
+ <rule ref="rulesets/java/clone.xml" />
+ <rule ref="rulesets/java/finalizers.xml" />
+ <rule ref="rulesets/java/imports.xml">
+ <!-- Espresso is designed this way !-->
+ <exclude name="TooManyStaticImports" />
+ </rule>
+ <rule ref="rulesets/java/logging-java.xml">
+ <!-- This rule wasn't working properly and given errors in every var call info -->
+ <exclude name="GuardLogStatementJavaUtil" />
+ </rule>
+ <rule ref="rulesets/java/braces.xml">
+ <!-- We allow single line if's without braces -->
+ <exclude name="IfStmtsMustUseBraces" />
+ </rule>
+ <rule ref="rulesets/java/strings.xml" >
+ <!-- Exclude because causes problems with SQL Strings that usually require duplication -->
+ <exclude name="AvoidDuplicateLiterals"/>
+ </rule>
+ <rule ref="rulesets/java/basic.xml" />
+ <rule ref="rulesets/java/naming.xml">
+ <exclude name="AbstractNaming" />
+ <exclude name="LongVariable" />
+ <exclude name="ShortMethodName" />
+ <exclude name="ShortVariable" />
+ <exclude name="ShortClassName" />
+ <exclude name="VariableNamingConventions" />
+ </rule>
+</ruleset>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/6128a614/config/quality/quality.gradle
----------------------------------------------------------------------
diff --git a/config/quality/quality.gradle b/config/quality/quality.gradle
index 8883952..978277f 100644
--- a/config/quality/quality.gradle
+++ b/config/quality/quality.gradle
@@ -1,4 +1,5 @@
apply plugin: 'checkstyle'
+apply plugin: 'pmd'
dependencies {
checkstyle 'com.puppycrawl.tools:checkstyle:6.5'
@@ -7,7 +8,7 @@ dependencies {
def qualityConfigDir = "$project.rootDir/config/quality";
def reportsDir = "$project.buildDir/reports"
-check.dependsOn 'checkstyle'
+check.dependsOn 'checkstyle', 'pmd'
task checkstyle(type: Checkstyle, group: 'Verification', description: 'Runs code style checks') {
configFile file("$qualityConfigDir/checkstyle/checkstyle-config.xml")
@@ -23,4 +24,25 @@ task checkstyle(type: Checkstyle, group: 'Verification', description: 'Runs code
}
classpath = files()
+}
+
+task pmd(type: Pmd, group: 'Verification', description: 'Inspect sourcecode for bugs') {
+ ruleSetFiles = files("$qualityConfigDir/pmd/pmd-ruleset.xml")
+ ignoreFailures = false
+ ruleSets = []
+
+ source 'src'
+ include '**/*.java'
+ exclude '**/gen/**'
+
+ reports {
+ xml.enabled = true
+ html.enabled = true
+ xml {
+ destination "$reportsDir/pmd/pmd.xml"
+ }
+ html {
+ destination "$reportsDir/pmd/pmd.html"
+ }
+ }
}
\ No newline at end of file
[16/18] incubator-taverna-mobile git commit: add ASF file headers
Posted by st...@apache.org.
add ASF file headers
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/76cb6bd3
Tree: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/tree/76cb6bd3
Diff: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/diff/76cb6bd3
Branch: refs/heads/master
Commit: 76cb6bd30e133c1e0d08d1eda750aa4b02ae07c4
Parents: 18002d3
Author: Sagar <ku...@gmail.com>
Authored: Mon Jun 13 16:56:49 2016 +0530
Committer: Sagar <ku...@gmail.com>
Committed: Mon Jun 13 16:56:49 2016 +0530
----------------------------------------------------------------------
config/quality/checkstyle/checkstyle-config.xml | 16 ++++++++++++++++
config/quality/findbugs/android-exclude-filter.xml | 16 ++++++++++++++++
config/quality/pmd/pmd-ruleset.xml | 16 ++++++++++++++++
config/quality/quality.gradle | 17 +++++++++++++++++
4 files changed, 65 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/76cb6bd3/config/quality/checkstyle/checkstyle-config.xml
----------------------------------------------------------------------
diff --git a/config/quality/checkstyle/checkstyle-config.xml b/config/quality/checkstyle/checkstyle-config.xml
index d7af4c3..dd0489c 100644
--- a/config/quality/checkstyle/checkstyle-config.xml
+++ b/config/quality/checkstyle/checkstyle-config.xml
@@ -1,4 +1,20 @@
<?xml version="1.0"?>
+<!--
+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.
+-->
<!DOCTYPE module PUBLIC
"-//Puppy Crawl//DTD Check Configuration 1.3//EN"
"http://www.puppycrawl.com/dtds/configuration_1_3.dtd">
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/76cb6bd3/config/quality/findbugs/android-exclude-filter.xml
----------------------------------------------------------------------
diff --git a/config/quality/findbugs/android-exclude-filter.xml b/config/quality/findbugs/android-exclude-filter.xml
index a135338..2369bd0 100644
--- a/config/quality/findbugs/android-exclude-filter.xml
+++ b/config/quality/findbugs/android-exclude-filter.xml
@@ -1,4 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ 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.
+-->
<FindBugsFilter>
<Match>
<Class name="~.*\.R\$.*"/>
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/76cb6bd3/config/quality/pmd/pmd-ruleset.xml
----------------------------------------------------------------------
diff --git a/config/quality/pmd/pmd-ruleset.xml b/config/quality/pmd/pmd-ruleset.xml
index 2d66bd6..f22a035 100644
--- a/config/quality/pmd/pmd-ruleset.xml
+++ b/config/quality/pmd/pmd-ruleset.xml
@@ -1,4 +1,20 @@
<?xml version="1.0"?>
+<!--
+ 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.
+-->
<ruleset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="Android Application Rules"
xmlns="http://pmd.sf.net/ruleset/1.0.0"
xsi:noNamespaceSchemaLocation="http://pmd.sf.net/ruleset_xml_schema.xsd"
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/76cb6bd3/config/quality/quality.gradle
----------------------------------------------------------------------
diff --git a/config/quality/quality.gradle b/config/quality/quality.gradle
index b99c433..2f5fff6 100644
--- a/config/quality/quality.gradle
+++ b/config/quality/quality.gradle
@@ -1,3 +1,20 @@
+/*
+ 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.
+*/
+
apply plugin: 'checkstyle'
apply plugin: 'pmd'
apply plugin: 'findbugs'
[09/18] incubator-taverna-mobile git commit: refactor code using pmd
Posted by st...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/app/src/main/java/org/apache/taverna/mobile/utils/HttpUtil.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/HttpUtil.java b/app/src/main/java/org/apache/taverna/mobile/utils/HttpUtil.java
index 5c995a5..f043d93 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/HttpUtil.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/HttpUtil.java
@@ -12,6 +12,8 @@ import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.util.EntityUtils;
import org.apache.taverna.mobile.tavernamobile.User;
+import android.util.Log;
+
import java.io.IOException;
import java.net.CookieStore;
import java.net.HttpURLConnection;
@@ -44,7 +46,7 @@ import java.net.HttpURLConnection;
* Created by Larry Akah on 6/18/15.
*/
public class HttpUtil {
-
+ private static final String TAG = "HttpUtil";
public <T> Object doPostAuthenticate() {
User muser = new User("", null);
@@ -73,16 +75,16 @@ public class HttpUtil {
}
}
} catch (InstantiationException e) {
- e.printStackTrace();
+ Log.e(TAG, "doGetRequestResponse: ", e);
return e.getMessage();
} catch (IllegalAccessException e) {
- e.printStackTrace();
+ Log.e(TAG, "doGetRequestResponse: ", e);
return e.getMessage();
} catch (ClientProtocolException e) {
- e.printStackTrace();
+ Log.e(TAG, "doGetRequestResponse: ", e);
return e.getMessage();
} catch (IOException e) {
- e.printStackTrace();
+ Log.e(TAG, "doGetRequestResponse: ", e);
return e.getMessage();
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/app/src/main/java/org/apache/taverna/mobile/utils/RunTask.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/RunTask.java b/app/src/main/java/org/apache/taverna/mobile/utils/RunTask.java
index e73bda0..3aa06fb 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/RunTask.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/RunTask.java
@@ -23,6 +23,7 @@ import java.net.URL;
*/
public class RunTask extends AsyncTask<String, Void, String> {
+ private static final String TAG = "RunTask";
private Context context;
private ProgressDialog progressDialog;
@@ -43,7 +44,7 @@ public class RunTask extends AsyncTask<String, Void, String> {
StringBuffer sb = new StringBuffer();
try {
TavernaPlayerAPI tavernaPlayerAPI = new TavernaPlayerAPI();
- URL workflowurl = new URL(new TavernaPlayerAPI(this.context).PLAYER_RUN_URL);
+ URL workflowurl = new URL(new TavernaPlayerAPI(this.context).mPlayerRunUrl);
HttpURLConnection connection = (HttpURLConnection) workflowurl.openConnection();
String userpass = tavernaPlayerAPI.getPlayerUserName(this.context) + ":" +
tavernaPlayerAPI.getPlayerUserPassword(this.context);
@@ -79,7 +80,7 @@ public class RunTask extends AsyncTask<String, Void, String> {
return sb.toString();
} catch (IOException ex) {
- ex.printStackTrace();
+ Log.e(TAG, "doInBackground: ", ex);
}
return sb.toString();
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowDB.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowDB.java b/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowDB.java
index d9db76c..6e62a01 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowDB.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowDB.java
@@ -48,12 +48,11 @@ import java.util.UUID;
*/
public class WorkflowDB {
- private final String LIBTAG = getClass().getName();
- private String ENTITY_KEY;
+ private static final String TAG = "WorkflowDB";
+ private final String ENTITY_KEY;
private Context context;
private SharedPreferences msharedpreference;
- private ArrayList<String> ITEM_IDS;
- private JSONObject DBJSON;
+ private final ArrayList<String> ITEM_IDS;
private JSONObject dataobj; //hold all entries for a given ENTITY_KEY
/**
@@ -65,9 +64,8 @@ public class WorkflowDB {
public WorkflowDB(Context ctx, String entityKey) {
context = ctx;
ENTITY_KEY = entityKey;
- DBJSON = new JSONObject();
ITEM_IDS = new ArrayList<String>();
- dataobj = DBJSON;
+ dataobj = new JSONObject();
}
/**
@@ -124,7 +122,7 @@ public class WorkflowDB {
// data returned
results.add(mlist);
} catch (Exception e) {
- e.printStackTrace();
+ Log.e(TAG, "get: ", e);
continue;
}
}
@@ -148,14 +146,14 @@ public class WorkflowDB {
}
try {
dataobj.put(itemId, jarray); //replace the current entry at the given ID.
- Log.d(LIBTAG, "" + dataobj.toString(2));
+ Log.d(TAG, "" + dataobj.toString(2));
operationSucceeded = true;
} catch (JSONException e) {
- e.printStackTrace();
+ Log.e(TAG, "update: ", e);
operationSucceeded = false;
- } finally {
- return operationSucceeded;
}
+ return operationSucceeded;
+
}
/**
@@ -198,7 +196,7 @@ public class WorkflowDB {
results.add(resultArray.getString(j));
}
} catch (Exception e) {
- e.printStackTrace();
+ Log.e(TAG, "get: ", e);
continue;
}
}
@@ -215,18 +213,19 @@ public class WorkflowDB {
public boolean save() {
msharedpreference = PreferenceManager.getDefaultSharedPreferences(context);
boolean saved = false;
- if (dataobj != null)
+ if (dataobj != null) {
try {
saved = saveid(ITEM_IDS);
if (saved)
msharedpreference.edit().putString(ENTITY_KEY, dataobj.toString()).apply();
return saved;
} catch (JSONException e) {
- e.printStackTrace();
+ Log.e(TAG, "save: ", e);
return false;
}
- else
+ } else {
return false;
+ }
}
/**
@@ -238,14 +237,14 @@ public class WorkflowDB {
try {
JSONObject jsonObject = new JSONObject(msharedpreference.getString(ENTITY_KEY, "{" +
ENTITY_KEY + ":{}}")); //main json db
- System.out.println(jsonObject.toString(1));
+ Log.d(TAG, jsonObject.toString(1));
JSONArray jsonArray;
- if (jsonObject.has("ids"))
+ if (jsonObject.has("ids")) {
jsonArray = jsonObject.optJSONArray("ids");
- else
+ } else {
jsonArray = new JSONArray();
-
+ }
String newItemId = item.get(0).toString(); //use the workflow id as an entity key for
// the new entity
@@ -264,10 +263,10 @@ public class WorkflowDB {
jsonObject.put(newItemId, newEntity);
msharedpreference.edit().putString(ENTITY_KEY, jsonObject.toString()).commit();
long end = System.currentTimeMillis();
- System.out.println("Insert benchmark length = " + (end - start));
+ Log.d(TAG, "Insert benchmark length = " + (end - start));
return 1;
} catch (JSONException e) {
- e.printStackTrace();
+ Log.e(TAG, "insert: ", e);
}
return 0;
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowLoader.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowLoader.java b/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowLoader.java
index c98f0f5..64fee15 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowLoader.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowLoader.java
@@ -49,6 +49,7 @@ import java.util.List;
*/
public class WorkflowLoader extends AsyncTask<String, Object, Object> { //WorkflowLoaderMain {
+ private static final String TAG = "WorkflowLoader";
private Context ctx;
private List<Workflow> userWorkflows;
private SwipeRefreshLayout refreshLayout;
@@ -86,13 +87,13 @@ public class WorkflowLoader extends AsyncTask<String, Object, Object> { //Workfl
xmlParser.parse(dis, this.userWorkflows);
} catch (MalformedURLException e) {
- e.printStackTrace();
+ Log.e(TAG, "doInBackground: ", e);
} catch (ProtocolException e) {
- e.printStackTrace();
+ Log.e(TAG, "doInBackground: ", e);
} catch (IOException e) {
- e.printStackTrace();
+ Log.e(TAG, "doInBackground: ", e);
} catch (Exception ex) {
- ex.printStackTrace();
+ Log.e(TAG, "doInBackground: ", ex);
}
return this.userWorkflows;
}
@@ -100,6 +101,6 @@ public class WorkflowLoader extends AsyncTask<String, Object, Object> { //Workfl
@Override
protected void onPostExecute(Object o) {
refreshLayout.setRefreshing(false);
- System.out.println("Workflow Count: " + this.userWorkflows.size());
+ Log.i(TAG, "Workflow Count: " + this.userWorkflows.size());
}
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowOpen.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowOpen.java b/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowOpen.java
index b54124b..693190a 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowOpen.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowOpen.java
@@ -37,6 +37,7 @@ import java.net.URL;
*/
public class WorkflowOpen extends AsyncTask<String, Void, String> {
+ private static final String TAG = "WorkflowOpen";
TavernaPlayerAPI tavernaPlayerAPI = new TavernaPlayerAPI();
private Context context;
private ProgressDialog progressDialog;
@@ -59,14 +60,14 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
*/
@Override
protected String doInBackground(String... params) {
- StringBuffer sb = new StringBuffer();
+ StringBuffer sb = new StringBuffer(55);
String str = "";
try {
//prepare connection requests
File objectFile = new File(params[0]); //the resource xml file representing the
// workflow to be uploaded to the player
- String playerurl = new TavernaPlayerAPI(this.context).PLAYER_BASE_URL + "workflows" +
+ String playerurl = new TavernaPlayerAPI(this.context).getplayerBaseUrl() + "workflows" +
".json";
URL posturl = new URL(playerurl);
HttpURLConnection connection = (HttpURLConnection) posturl.openConnection();
@@ -85,7 +86,7 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
}
br.close();
} catch (IOException e) {
- e.printStackTrace();
+ Log.e(TAG, "doInBackground: ", e);
}
String data = "{\"document\":\"data:application/octet-stream;base64," +
@@ -94,7 +95,7 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
String post = "{\"workflow\":" + data + "}";
//clear sb so that we can use it again to fetch results from this post request
sb.delete(0, sb.length() - 1);
- System.out.println("BODY=>" + post);
+ Log.i(TAG, "BODY=>" + post);
connection.setRequestMethod("POST");
connection.setRequestProperty("Authorization", basicAuth);
connection.setRequestProperty("Accept", "*/*");
@@ -114,13 +115,14 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
InputStream dis = connection.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(dis));
- while ((str = br.readLine()) != null)
+ while ((str = br.readLine()) != null) {
sb.append(str);
- System.out.println("Post Response Code: " + connection.getResponseCode());
- System.out.println("Post response message: " + connection.getResponseMessage());
+ }
+ Log.i(TAG, "Post Response Code: " + connection.getResponseCode());
+ Log.i(TAG, "Post response message: " + connection.getResponseMessage());
connection.disconnect();
} catch (IOException e) {
- e.printStackTrace();
+ Log.e(TAG, "doInBackground: ", e);
sb.append("Error reading remote workflow. Please try again later");
}
@@ -138,14 +140,14 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
@Override
protected void onPostExecute(String s) {
progressDialog.dismiss();
- System.out.println(s);
+ Log.i(TAG, s);
s = s.substring(1, s.length());
try {
JSONObject workflowJson = new JSONObject(s);
new WorkflowRunTask(this.context).execute(workflowJson.getString("id"));
} catch (JSONException e) {
- e.printStackTrace();
+ Log.e(TAG, "onPostExecute: ", e);
}
}
@@ -192,7 +194,7 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
try {
URL workflowurl = new URL(new TavernaPlayerAPI(this.context)
- .PLAYER_RUN_FRAMEWORK_URL + params[0]);
+ .mPlayerRunFrameworkUrl + params[0]);
HttpURLConnection connection = (HttpURLConnection) workflowurl.openConnection();
String userpass = tavernaPlayerAPI.getPlayerUserName(this.context) + ":" +
tavernaPlayerAPI.getPlayerUserPassword(this.context);
@@ -219,7 +221,7 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
return sb.toString();
} catch (IOException ex) {
- ex.printStackTrace();
+ Log.e(TAG, "doInBackground: ", ex);
}
return sb.toString();
}
@@ -269,7 +271,7 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
// name/input json object
} catch (JSONException e) {
- e.printStackTrace();
+ Log.e(TAG, "onClick: ", e);
}
}
@@ -279,7 +281,7 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
//start a run task to execute the run.
new RunTask(ctx).execute(json.toString());
} catch (JSONException e) {
- e.printStackTrace();
+ Log.e(TAG, "onClick: ", e);
}
}
@@ -296,7 +298,7 @@ public class WorkflowOpen extends AsyncTask<String, Void, String> {
runDialog = alertDialogBuilder.create();
} catch (JSONException e) {
- e.printStackTrace();
+ Log.e(TAG, "onPostExecute: ", e);
}
progressDialog.dismiss();
runDialog.show();
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/MyExperimentXmlParserRules.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/MyExperimentXmlParserRules.java b/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/MyExperimentXmlParserRules.java
index 8167968..a17ce71 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/MyExperimentXmlParserRules.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/MyExperimentXmlParserRules.java
@@ -62,20 +62,20 @@ public class MyExperimentXmlParserRules {
userObject) {
switch (index) {
case 0: //uri
- mWorkflow.setWorkflow_details_url(value);
- ((Workflow) userObject).setWorkflow_details_url(value);
+ mWorkflow.setWorkflowDetailsUrl(value);
+ ((Workflow) userObject).setWorkflowDetailsUrl(value);
break;
case 1: //resource
- mWorkflow.setWorkflow_web_url(value);
- ((Workflow) userObject).setWorkflow_web_url(value);
+ mWorkflow.setWorkflowWebUrl(value);
+ ((Workflow) userObject).setWorkflowWebUrl(value);
break;
case 2: //id
mWorkflow.setId(Integer.parseInt(value));
((Workflow) userObject).setId(Integer.parseInt(value));
break;
case 3://version
- mWorkflow.setWorkflow_versions(value);
- ((Workflow) userObject).setWorkflow_versions(value);
+ mWorkflow.setWorkflowVersions(value);
+ ((Workflow) userObject).setWorkflowVersions(value);
break;
}
}
@@ -90,8 +90,8 @@ public class MyExperimentXmlParserRules {
@Override
public void handleParsedCharacters(XMLParser parser, String text, Object userObject) {
- mWorkflow.setWorkflow_title(text);
- ((Workflow) userObject).setWorkflow_title(text);
+ mWorkflow.setWorkflowTitle(text);
+ ((Workflow) userObject).setWorkflowTitle(text);
}
}
@@ -105,8 +105,8 @@ public class MyExperimentXmlParserRules {
@Override
public void handleParsedCharacters(XMLParser parser, String text, Object userObject) {
- mWorkflow.setWorkflow_description(String.valueOf(Html.fromHtml(text)));
- ((Workflow) userObject).setWorkflow_description(String.valueOf(Html.fromHtml(text)));
+ mWorkflow.setWorkflowDescription(String.valueOf(Html.fromHtml(text)));
+ ((Workflow) userObject).setWorkflowDescription(String.valueOf(Html.fromHtml(text)));
}
}
@@ -133,8 +133,8 @@ public class MyExperimentXmlParserRules {
@Override
public void handleParsedCharacters(XMLParser parser, String text, Object userObject) {
- mWorkflow.setWorkflow_Type(text);
- ((Workflow) userObject).setWorkflow_Type(text);
+ mWorkflow.setWorkflowType(text);
+ ((Workflow) userObject).setWorkflowType(text);
}
}
@@ -159,9 +159,9 @@ public class MyExperimentXmlParserRules {
}
break;
case 1:
- muser.setDetails_uri(value);
+ muser.setDetailsUri(value);
if ((userObject instanceof User)) {
- ((User) userObject).setDetails_uri(value);
+ ((User) userObject).setDetailsUri(value);
}
break;
case 2:
@@ -199,10 +199,10 @@ public class MyExperimentXmlParserRules {
userObject) {
switch (index) {
case 0:
- ((User) userObject).setAvatar_url(value);
+ ((User) userObject).setAvatarUrl(value);
break;
case 1:
- ((User) userObject).setDetails_uri(value);
+ ((User) userObject).setDetailsUri(value);
break;
case 2:
((User) userObject).setId(value);
@@ -228,8 +228,8 @@ public class MyExperimentXmlParserRules {
@Override
public void handleParsedCharacters(XMLParser parser, String text, Object userObject) {
- mWorkflow.setWorkflow_datecreated(text);
- ((Workflow) userObject).setWorkflow_datecreated(text);
+ mWorkflow.setWorkflowDatecreated(text);
+ ((Workflow) userObject).setWorkflowDatecreated(text);
}
}
@@ -243,8 +243,8 @@ public class MyExperimentXmlParserRules {
@Override
public void handleParsedCharacters(XMLParser parser, String text, Object userObject) {
- mWorkflow.setWorkflow_preview(text);
- ((Workflow) userObject).setWorkflow_preview(text);
+ mWorkflow.setWorkflowPreview(text);
+ ((Workflow) userObject).setWorkflowPreview(text);
}
}
@@ -263,8 +263,8 @@ public class MyExperimentXmlParserRules {
@Override
public void handleParsedCharacters(XMLParser parser, String text, Object userObject) {
- mWorkflow.setWorkflow_licence_type("Licence By " + text);
- ((Workflow) userObject).setWorkflow_licence_type("Licence By " + text);
+ mWorkflow.setWorkflowLicenceType("Licence By " + text);
+ ((Workflow) userObject).setWorkflowLicenceType("Licence By " + text);
}
}
@@ -278,8 +278,8 @@ public class MyExperimentXmlParserRules {
@Override
public void handleParsedCharacters(XMLParser parser, String text, Object userObject) {
- mWorkflow.setWorkflow_remote_url(text);
- ((Workflow) userObject).setWorkflow_remote_url(text);
+ mWorkflow.setWorkflowRemoteUrl(text);
+ ((Workflow) userObject).setWorkflowRemoteUrl(text);
}
}
@@ -292,8 +292,8 @@ public class MyExperimentXmlParserRules {
@Override
public void handleParsedCharacters(XMLParser parser, String text, Object userObject) {
- mWorkflow.setWorkflow_content_type(text);
- ((Workflow) userObject).setWorkflow_content_type(text);
+ mWorkflow.setWorkflowContentType(text);
+ ((Workflow) userObject).setWorkflowContentType(text);
}
}
@@ -312,9 +312,9 @@ public class MyExperimentXmlParserRules {
@Override
public void handleParsedCharacters(XMLParser parser, String text, Object userObject) {
- mWorkflow.setWorkflow_tags(new ArrayList<String>() {
+ mWorkflow.setWorkflowTags(new ArrayList<String>() {
});
- ((Workflow) userObject).setWorkflow_tags(new ArrayList<String>() {
+ ((Workflow) userObject).setWorkflowTags(new ArrayList<String>() {
});
}
@@ -367,9 +367,9 @@ public class MyExperimentXmlParserRules {
workflowListObject) {
//add the workflow to the workflow list
this.workflow = new Workflow("", desc, id, url);
- this.workflow.setWorkflow_details_url(uri);
- this.workflow.setWorkflow_title(text);
- this.workflow.setWorkflow_author("");
+ this.workflow.setWorkflowDetailsUrl(uri);
+ this.workflow.setWorkflowTitle(text);
+ this.workflow.setWorkflowAuthor("");
wlist.add(this.workflow);
//WorkflowLoader.loadedWorkflows.add(this.workflow);
((List<Workflow>) workflowListObject).add(this.workflow);
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e25d011a/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/WorkflowDetailParser.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/WorkflowDetailParser.java b/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/WorkflowDetailParser.java
index 4c80085..9ec0bcd 100644
--- a/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/WorkflowDetailParser.java
+++ b/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/WorkflowDetailParser.java
@@ -49,7 +49,8 @@ public class WorkflowDetailParser extends XMLParser {
protected void doEndDocument(Object userObject) {
if (userObject instanceof User) {
WorkflowItemFragment.startLoadingAvatar((User) userObject);
- } else
+ } else {
WorkflowdetailFragment.setWorkflowDetails((Workflow) userObject);
+ }
}
}
[06/18] incubator-taverna-mobile git commit: refactor code using
CheckStyle
Posted by st...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/broadcastreceivers/WorkflowDownloadReceiver.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/broadcastreceivers/WorkflowDownloadReceiver.java b/app/src/main/java/org/apache/taverna/mobile/broadcastreceivers/WorkflowDownloadReceiver.java
index 0657b46..383f707 100644
--- a/app/src/main/java/org/apache/taverna/mobile/broadcastreceivers/WorkflowDownloadReceiver.java
+++ b/app/src/main/java/org/apache/taverna/mobile/broadcastreceivers/WorkflowDownloadReceiver.java
@@ -2,10 +2,10 @@ package org.apache.taverna.mobile.broadcastreceivers;
/**
* Apache Taverna Mobile
* Copyright 2015 The Apache Software Foundation
-
+ *
* This product includes software developed at
* The Apache Software Foundation (http://www.apache.org/).
-
+ *
* 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
@@ -23,15 +23,16 @@ package org.apache.taverna.mobile.broadcastreceivers;
* specific language governing permissions and limitations
* under the License.
*/
+
+import org.apache.taverna.mobile.R;
+import org.apache.taverna.mobile.utils.WorkflowDownloadManager;
+
import android.app.DownloadManager;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.database.Cursor;
-import org.apache.taverna.mobile.R;
-import org.apache.taverna.mobile.utils.WorkflowDownloadManager;
-
public class WorkflowDownloadReceiver extends BroadcastReceiver {
public WorkflowDownloadReceiver() {
}
@@ -43,19 +44,21 @@ public class WorkflowDownloadReceiver extends BroadcastReceiver {
DownloadManager mgr = (DownloadManager) context.getSystemService(Context.DOWNLOAD_SERVICE);
WorkflowDownloadManager wdm = new WorkflowDownloadManager(context, mgr);
- DownloadManager.Query query = new DownloadManager.Query(); //ask for information about the download queue
+ DownloadManager.Query query = new DownloadManager.Query(); //ask for information about
+ // the download queue
query.setFilterById(receivedID);
Cursor cur = mgr.query(query);
int index = cur.getColumnIndex(DownloadManager.COLUMN_STATUS);
-// String workflow = cur.getString(cur.getColumnIndex(DownloadManager.COLUMN_LOCAL_FILENAME));
+// String workflow = cur.getString(cur.getColumnIndex(DownloadManager
+// .COLUMN_LOCAL_FILENAME));
- if(cur.moveToFirst()) {
- if(cur.getInt(index) == DownloadManager.STATUS_SUCCESSFUL){
+ if (cur.moveToFirst()) {
+ if (cur.getInt(index) == DownloadManager.STATUS_SUCCESSFUL) {
wdm.sendNotification(context.getResources().getString(R.string.downloadcomplete));
- }else{
+ } else {
wdm.sendNotification(context.getResources().getString(R.string.downloadfailed));
}
- }else{
+ } else {
wdm.sendNotification(context.getResources().getString(R.string.downloadfailed));
}
cur.close();
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/customviews/WorkflowPreviewImageView.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/customviews/WorkflowPreviewImageView.java b/app/src/main/java/org/apache/taverna/mobile/customviews/WorkflowPreviewImageView.java
index 5f5276e..fb0b497 100644
--- a/app/src/main/java/org/apache/taverna/mobile/customviews/WorkflowPreviewImageView.java
+++ b/app/src/main/java/org/apache/taverna/mobile/customviews/WorkflowPreviewImageView.java
@@ -2,10 +2,10 @@ package org.apache.taverna.mobile.customviews;
/**
* Apache Taverna Mobile
* Copyright 2015 The Apache Software Foundation
-
+ *
* This product includes software developed at
* The Apache Software Foundation (http://www.apache.org/).
-
+ *
* 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
@@ -37,13 +37,12 @@ import android.widget.ImageView;
/**
* Created by Akah Harvey on 6/29/15.
*/
-public class WorkflowPreviewImageView extends ImageView{
- Matrix matrix = new Matrix();
-
+public class WorkflowPreviewImageView extends ImageView {
static final int NONE = 0;
static final int DRAG = 1;
static final int ZOOM = 2;
static final int CLICK = 3;
+ Matrix matrix = new Matrix();
int mode = NONE;
PointF last = new PointF();
@@ -60,8 +59,7 @@ public class WorkflowPreviewImageView extends ImageView{
ScaleGestureDetector mScaleDetector;
Context context;
- public WorkflowPreviewImageView(Context context, AttributeSet attr)
- {
+ public WorkflowPreviewImageView(Context context, AttributeSet attr) {
super(context, attr);
super.setClickable(true);
this.context = context;
@@ -71,12 +69,10 @@ public class WorkflowPreviewImageView extends ImageView{
setImageMatrix(matrix);
setScaleType(ScaleType.MATRIX);
- setOnTouchListener(new OnTouchListener()
- {
+ setOnTouchListener(new OnTouchListener() {
@Override
- public boolean onTouch(View v, MotionEvent event)
- {
+ public boolean onTouch(View v, MotionEvent event) {
mScaleDetector.onTouchEvent(event);
matrix.getValues(m);
@@ -84,8 +80,7 @@ public class WorkflowPreviewImageView extends ImageView{
float y = m[Matrix.MTRANS_Y];
PointF curr = new PointF(event.getX(), event.getY());
- switch (event.getAction())
- {
+ switch (event.getAction()) {
//when one finger is touching
//set the mode to DRAG
case MotionEvent.ACTION_DOWN:
@@ -105,38 +100,36 @@ public class WorkflowPreviewImageView extends ImageView{
case MotionEvent.ACTION_MOVE:
//if the mode is ZOOM or
//if the mode is DRAG and already zoomed
- if (mode == ZOOM || (mode == DRAG && saveScale > minScale))
- {
- float deltaX = curr.x - last.x;// x difference
- float deltaY = curr.y - last.y;// y difference
- float scaleWidth = Math.round(origWidth * saveScale);// width after applying current scale
- float scaleHeight = Math.round(origHeight * saveScale);// height after applying current scale
+ if (mode == ZOOM || (mode == DRAG && saveScale > minScale)) {
+ float deltaX = curr.x - last.x; // x difference
+ float deltaY = curr.y - last.y; // y difference
+ float scaleWidth = Math.round(origWidth * saveScale); // width after
+ // applying current scale
+ float scaleHeight = Math.round(origHeight * saveScale); // height
+ // after applying current scale
//if scaleWidth is smaller than the views width
//in other words if the image width fits in the view
//limit left and right movement
- if (scaleWidth < width)
- {
+ if (scaleWidth < width) {
deltaX = 0;
- if (y + deltaY > 0)
+ if (y + deltaY > 0) {
deltaY = -y;
- else if (y + deltaY < -bottom)
+ } else if (y + deltaY < -bottom) {
deltaY = -(y + bottom);
- }
- //if scaleHeight is smaller than the views height
- //in other words if the image height fits in the view
- //limit up and down movement
- else if (scaleHeight < height)
- {
+ }
+ } else if (scaleHeight < height) {
+ //if scaleHeight is smaller than the views height
+ //in other words if the image height fits in the view
+ //limit up and down movement
deltaY = 0;
- if (x + deltaX > 0)
+ if (x + deltaX > 0) {
deltaX = -x;
- else if (x + deltaX < -right)
+ } else if (x + deltaX < -right) {
deltaX = -(x + right);
- }
+ }
+ } else {
//if the image doesnt fit in the width or height
//limit both up and down and left and right
- else
- {
if (x + deltaX > 0)
deltaX = -x;
else if (x + deltaX < -right)
@@ -175,65 +168,80 @@ public class WorkflowPreviewImageView extends ImageView{
}
@Override
- public void setImageBitmap(Bitmap bm)
- {
+ public void setImageBitmap(Bitmap bm) {
super.setImageBitmap(bm);
bmWidth = bm.getWidth();
bmHeight = bm.getHeight();
}
- public void setMaxZoom(float x)
- {
+ public void setMaxZoom(float x) {
maxScale = x;
}
- private class ScaleListener extends ScaleGestureDetector.SimpleOnScaleGestureListener
- {
+ @Override
+ protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
+ super.onMeasure(widthMeasureSpec, heightMeasureSpec);
+ width = MeasureSpec.getSize(widthMeasureSpec);
+ height = MeasureSpec.getSize(heightMeasureSpec);
+ //Fit to screen.
+ float scale;
+ float scaleX = width / bmWidth;
+ float scaleY = height / bmHeight;
+ scale = Math.min(scaleX, scaleY);
+ matrix.setScale(scale, scale);
+ setImageMatrix(matrix);
+ saveScale = 1f;
+
+ // Center the image
+ redundantYSpace = height - (scale * bmHeight);
+ redundantXSpace = width - (scale * bmWidth);
+ redundantYSpace /= 2;
+ redundantXSpace /= 2;
+
+ matrix.postTranslate(redundantXSpace, redundantYSpace);
+
+ origWidth = width - 2 * redundantXSpace;
+ origHeight = height - 2 * redundantYSpace;
+ right = width * saveScale - width - (2 * redundantXSpace * saveScale);
+ bottom = height * saveScale - height - (2 * redundantYSpace * saveScale);
+ setImageMatrix(matrix);
+ }
+
+ private class ScaleListener extends ScaleGestureDetector.SimpleOnScaleGestureListener {
@Override
- public boolean onScaleBegin(ScaleGestureDetector detector)
- {
+ public boolean onScaleBegin(ScaleGestureDetector detector) {
mode = ZOOM;
return true;
}
@Override
- public boolean onScale(ScaleGestureDetector detector)
- {
+ public boolean onScale(ScaleGestureDetector detector) {
float mScaleFactor = detector.getScaleFactor();
float origScale = saveScale;
saveScale *= mScaleFactor;
- if (saveScale > maxScale)
- {
+ if (saveScale > maxScale) {
saveScale = maxScale;
mScaleFactor = maxScale / origScale;
- }
- else if (saveScale < minScale)
- {
+ } else if (saveScale < minScale) {
saveScale = minScale;
mScaleFactor = minScale / origScale;
}
right = width * saveScale - width - (2 * redundantXSpace * saveScale);
bottom = height * saveScale - height - (2 * redundantYSpace * saveScale);
- if (origWidth * saveScale <= width || origHeight * saveScale <= height)
- {
+ if (origWidth * saveScale <= width || origHeight * saveScale <= height) {
matrix.postScale(mScaleFactor, mScaleFactor, width / 2, height / 2);
- if (mScaleFactor < 1)
- {
+ if (mScaleFactor < 1) {
matrix.getValues(m);
float x = m[Matrix.MTRANS_X];
float y = m[Matrix.MTRANS_Y];
- if (mScaleFactor < 1)
- {
- if (Math.round(origWidth * saveScale) < width)
- {
+ if (mScaleFactor < 1) {
+ if (Math.round(origWidth * saveScale) < width) {
if (y < -bottom)
matrix.postTranslate(0, -(y + bottom));
else if (y > 0)
matrix.postTranslate(0, -y);
- }
- else
- {
+ } else {
if (x < -right)
matrix.postTranslate(-(x + right), 0);
else if (x > 0)
@@ -241,10 +249,9 @@ public class WorkflowPreviewImageView extends ImageView{
}
}
}
- }
- else
- {
- matrix.postScale(mScaleFactor, mScaleFactor, detector.getFocusX(), detector.getFocusY());
+ } else {
+ matrix.postScale(mScaleFactor, mScaleFactor, detector.getFocusX(), detector
+ .getFocusY());
matrix.getValues(m);
float x = m[Matrix.MTRANS_X];
float y = m[Matrix.MTRANS_Y];
@@ -262,34 +269,4 @@ public class WorkflowPreviewImageView extends ImageView{
return true;
}
}
-
- @Override
- protected void onMeasure (int widthMeasureSpec, int heightMeasureSpec)
- {
- super.onMeasure(widthMeasureSpec, heightMeasureSpec);
- width = MeasureSpec.getSize(widthMeasureSpec);
- height = MeasureSpec.getSize(heightMeasureSpec);
- //Fit to screen.
- float scale;
- float scaleX = width / bmWidth;
- float scaleY = height / bmHeight;
- scale = Math.min(scaleX, scaleY);
- matrix.setScale(scale, scale);
- setImageMatrix(matrix);
- saveScale = 1f;
-
- // Center the image
- redundantYSpace = height - (scale * bmHeight) ;
- redundantXSpace = width - (scale * bmWidth);
- redundantYSpace /= 2;
- redundantXSpace /= 2;
-
- matrix.postTranslate(redundantXSpace, redundantYSpace);
-
- origWidth = width - 2 * redundantXSpace;
- origHeight = height - 2 * redundantYSpace;
- right = width * saveScale - width - (2 * redundantXSpace * saveScale);
- bottom = height * saveScale - height - (2 * redundantYSpace * saveScale);
- setImageMatrix(matrix);
- }
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/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 d41accf..52863e3 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
@@ -1,7 +1,7 @@
package org.apache.taverna.mobile.data;
-import org.apache.taverna.mobile.data.model.DetailAnnouncement;
import org.apache.taverna.mobile.data.model.Announcements;
+import org.apache.taverna.mobile.data.model.DetailAnnouncement;
import org.apache.taverna.mobile.data.remote.BaseApiManager;
import rx.Observable;
@@ -13,22 +13,20 @@ public class DataManager {
public BaseApiManager mBaseApiManager = new BaseApiManager();
- public DataManager(){
+ public DataManager() {
}
/**
- *
* @return List of all Announcement
*/
- public Observable<Announcements> getAllAnnouncement(int pageNumber){
+ public Observable<Announcements> getAllAnnouncement(int pageNumber) {
return mBaseApiManager.getTavernaApi().getAllAnnouncements(pageNumber);
}
/**
- *
* @return Detail of Announcement
*/
- public Observable<DetailAnnouncement> getAnnouncementDetail(String id){
+ public Observable<DetailAnnouncement> getAnnouncementDetail(String id) {
return mBaseApiManager.getTavernaApi().getAnnouncement(id);
}
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/data/model/Announcement.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/data/model/Announcement.java b/app/src/main/java/org/apache/taverna/mobile/data/model/Announcement.java
index 7f32e5a..3904374 100644
--- a/app/src/main/java/org/apache/taverna/mobile/data/model/Announcement.java
+++ b/app/src/main/java/org/apache/taverna/mobile/data/model/Announcement.java
@@ -1,30 +1,48 @@
package org.apache.taverna.mobile.data.model;
-import android.os.Parcel;
-import android.os.Parcelable;
-
import org.simpleframework.xml.Attribute;
import org.simpleframework.xml.Text;
+import android.os.Parcel;
+import android.os.Parcelable;
+
/**
* Created by Sagar
*/
public class Announcement implements Parcelable {
+ public static final Parcelable.Creator<Announcement> CREATOR = new Parcelable
+ .Creator<Announcement>() {
+ @Override
+ public Announcement createFromParcel(Parcel source) {
+ return new Announcement(source);
+ }
+
+ @Override
+ public Announcement[] newArray(int size) {
+ return new Announcement[size];
+ }
+ };
@Attribute(name = "resource", required = false)
String resource;
-
-
@Attribute(name = "uri", required = false)
String uri;
-
-
@Attribute(name = "id", required = false)
String id;
-
@Text
String content;
+ public Announcement() {
+ }
+
+
+ protected Announcement(Parcel in) {
+ this.resource = in.readString();
+ this.uri = in.readString();
+ this.id = in.readString();
+ this.content = in.readString();
+ }
+
public String getContent() {
return content;
}
@@ -33,7 +51,6 @@ public class Announcement implements Parcelable {
this.content = content;
}
-
public String getResource() {
return this.resource;
}
@@ -42,7 +59,6 @@ public class Announcement implements Parcelable {
this.resource = _value;
}
-
public String getUri() {
return this.uri;
}
@@ -51,7 +67,6 @@ public class Announcement implements Parcelable {
this.uri = _value;
}
-
public String getId() {
return this.id;
}
@@ -60,7 +75,6 @@ public class Announcement implements Parcelable {
this.id = _value;
}
-
@Override
public int describeContents() {
return 0;
@@ -73,26 +87,4 @@ public class Announcement implements Parcelable {
dest.writeString(this.id);
dest.writeString(this.content);
}
-
- public Announcement() {
- }
-
- protected Announcement(Parcel in) {
- this.resource = in.readString();
- this.uri = in.readString();
- this.id = in.readString();
- this.content = in.readString();
- }
-
- public static final Parcelable.Creator<Announcement> CREATOR = new Parcelable.Creator<Announcement>() {
- @Override
- public Announcement createFromParcel(Parcel source) {
- return new Announcement(source);
- }
-
- @Override
- public Announcement[] newArray(int size) {
- return new Announcement[size];
- }
- };
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/data/model/Announcements.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/data/model/Announcements.java b/app/src/main/java/org/apache/taverna/mobile/data/model/Announcements.java
index 01454da..3050637 100644
--- a/app/src/main/java/org/apache/taverna/mobile/data/model/Announcements.java
+++ b/app/src/main/java/org/apache/taverna/mobile/data/model/Announcements.java
@@ -1,10 +1,11 @@
package org.apache.taverna.mobile.data.model;
-import android.os.Parcel;
-import android.os.Parcelable;
import org.simpleframework.xml.ElementList;
import org.simpleframework.xml.Root;
+import android.os.Parcel;
+import android.os.Parcelable;
+
import java.util.List;
/**
@@ -13,15 +14,36 @@ import java.util.List;
@Root(name = "announcements")
public class Announcements implements Parcelable {
+ public static final Parcelable.Creator<Announcements> CREATOR = new Parcelable
+ .Creator<Announcements>() {
+ @Override
+ public Announcements createFromParcel(Parcel source) {
+ return new Announcements(source);
+ }
+
+ @Override
+ public Announcements[] newArray(int size) {
+ return new Announcements[size];
+ }
+ };
@ElementList(name = "announcement", inline = true, required = false)
List<Announcement> announcement;
+ public Announcements() {
+ }
+ protected Announcements(Parcel in) {
+ this.announcement = in.createTypedArrayList(Announcement.CREATOR);
+ }
- public List<Announcement> getAnnouncement() { return this.announcement; }
- public void setAnnouncement(List<Announcement> _value) { this.announcement = _value; }
+ public List<Announcement> getAnnouncement() {
+ return this.announcement;
+ }
+ public void setAnnouncement(List<Announcement> _value) {
+ this.announcement = _value;
+ }
@Override
public int describeContents() {
@@ -32,23 +54,4 @@ public class Announcements implements Parcelable {
public void writeToParcel(Parcel dest, int flags) {
dest.writeTypedList(this.announcement);
}
-
- public Announcements() {
- }
-
- protected Announcements(Parcel in) {
- this.announcement = in.createTypedArrayList(Announcement.CREATOR);
- }
-
- public static final Parcelable.Creator<Announcements> CREATOR = new Parcelable.Creator<Announcements>() {
- @Override
- public Announcements createFromParcel(Parcel source) {
- return new Announcements(source);
- }
-
- @Override
- public Announcements[] newArray(int size) {
- return new Announcements[size];
- }
- };
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/data/model/Author.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/data/model/Author.java b/app/src/main/java/org/apache/taverna/mobile/data/model/Author.java
index 111f64f..09df99f 100644
--- a/app/src/main/java/org/apache/taverna/mobile/data/model/Author.java
+++ b/app/src/main/java/org/apache/taverna/mobile/data/model/Author.java
@@ -1,82 +1,89 @@
package org.apache.taverna.mobile.data.model;
-import android.os.Parcel;
-import android.os.Parcelable;
-
import org.simpleframework.xml.Attribute;
import org.simpleframework.xml.Text;
+import android.os.Parcel;
+import android.os.Parcelable;
+
/**
* Created by Sagar
*/
public class Author implements Parcelable {
- @Attribute(name="resource", required = false)
- String resource;
-
-
- @Attribute(name="uri", required = false)
- String uri;
-
-
- @Attribute(name="id", required = false)
- String id;
-
- @Text
- String content;
-
- public String getContent() {
- return content;
- }
- public void setContent(String content) {
- this.content = content;
- }
-
-
- public String getResource() { return this.resource; }
- public void setResource(String _value) { this.resource = _value; }
-
-
- public String getUri() { return this.uri; }
- public void setUri(String _value) { this.uri = _value; }
-
-
- public String getId() { return this.id; }
- public void setId(String _value) { this.id = _value; }
-
-
+ public static final Parcelable.Creator<Author> CREATOR = new Parcelable.Creator<Author>() {
@Override
- public int describeContents() {
- return 0;
+ public Author createFromParcel(Parcel source) {
+ return new Author(source);
}
@Override
- public void writeToParcel(Parcel dest, int flags) {
- dest.writeString(this.resource);
- dest.writeString(this.uri);
- dest.writeString(this.id);
- dest.writeString(this.content);
- }
-
- public Author() {
+ public Author[] newArray(int size) {
+ return new Author[size];
}
-
- protected Author(Parcel in) {
- this.resource = in.readString();
- this.uri = in.readString();
- this.id = in.readString();
- this.content = in.readString();
- }
-
- public static final Parcelable.Creator<Author> CREATOR = new Parcelable.Creator<Author>() {
- @Override
- public Author createFromParcel(Parcel source) {
- return new Author(source);
- }
-
- @Override
- public Author[] newArray(int size) {
- return new Author[size];
- }
- };
+ };
+ @Attribute(name = "resource", required = false)
+ String resource;
+ @Attribute(name = "uri", required = false)
+ String uri;
+ @Attribute(name = "id", required = false)
+ String id;
+ @Text
+ String content;
+
+ public Author() {
+ }
+
+
+ protected Author(Parcel in) {
+ this.resource = in.readString();
+ this.uri = in.readString();
+ this.id = in.readString();
+ this.content = in.readString();
+ }
+
+ public String getContent() {
+ return content;
+ }
+
+ public void setContent(String content) {
+ this.content = content;
+ }
+
+ public String getResource() {
+ return this.resource;
+ }
+
+ public void setResource(String _value) {
+ this.resource = _value;
+ }
+
+ public String getUri() {
+ return this.uri;
+ }
+
+ public void setUri(String _value) {
+ this.uri = _value;
+ }
+
+ public String getId() {
+ return this.id;
+ }
+
+ public void setId(String _value) {
+ this.id = _value;
+ }
+
+ @Override
+ public int describeContents() {
+ return 0;
+ }
+
+ @Override
+ public void writeToParcel(Parcel dest, int flags) {
+ dest.writeString(this.resource);
+ dest.writeString(this.uri);
+ dest.writeString(this.id);
+ dest.writeString(this.content);
+ }
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/data/model/DetailAnnouncement.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/data/model/DetailAnnouncement.java b/app/src/main/java/org/apache/taverna/mobile/data/model/DetailAnnouncement.java
index d291fe3..2715d88 100644
--- a/app/src/main/java/org/apache/taverna/mobile/data/model/DetailAnnouncement.java
+++ b/app/src/main/java/org/apache/taverna/mobile/data/model/DetailAnnouncement.java
@@ -1,44 +1,61 @@
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;
+
/**
* Created by Sagar
*/
@Root(name = "announcement")
public class DetailAnnouncement implements Parcelable {
+ public static final Parcelable.Creator<DetailAnnouncement> CREATOR = new Parcelable
+ .Creator<DetailAnnouncement>() {
+ @Override
+ public DetailAnnouncement createFromParcel(Parcel source) {
+ return new DetailAnnouncement(source);
+ }
+
+ @Override
+ public DetailAnnouncement[] newArray(int size) {
+ return new DetailAnnouncement[size];
+ }
+ };
+ @Attribute(name = "resource", required = false)
+ String resource;
+ @Attribute(name = "uri", required = false)
+ String uri;
+ @Attribute(name = "id", required = false)
+ String id;
@Element(name = "author")
private Author author;
-
@Element(name = "title")
private String title;
-
@Element(name = "text")
private String text;
-
@Element(name = "created-at")
private String date;
-
- @Attribute(name = "resource", required = false)
- String resource;
-
-
- @Attribute(name = "uri", required = false)
- String uri;
-
-
- @Attribute(name = "id", required = false)
- String id;
-
@Element(name = "id")
private String idElement;
+ public DetailAnnouncement() {
+ }
+
+ protected DetailAnnouncement(Parcel in) {
+ this.author = in.readParcelable(Author.class.getClassLoader());
+ this.title = in.readString();
+ this.text = in.readString();
+ this.date = in.readString();
+ this.resource = in.readString();
+ this.uri = in.readString();
+ this.id = in.readString();
+ this.idElement = in.readString();
+ }
+
public String getIdElement() {
return idElement;
}
@@ -55,7 +72,6 @@ public class DetailAnnouncement implements Parcelable {
this.resource = _value;
}
-
public String getUri() {
return this.uri;
}
@@ -64,7 +80,6 @@ public class DetailAnnouncement implements Parcelable {
this.uri = _value;
}
-
public String getId() {
return this.id;
}
@@ -73,7 +88,6 @@ public class DetailAnnouncement implements Parcelable {
this.id = _value;
}
-
public Author getAuthor() {
return author;
}
@@ -106,7 +120,6 @@ public class DetailAnnouncement implements Parcelable {
this.date = date;
}
-
@Override
public int describeContents() {
return 0;
@@ -123,32 +136,6 @@ public class DetailAnnouncement implements Parcelable {
dest.writeString(this.id);
dest.writeString(this.idElement);
}
-
- public DetailAnnouncement() {
- }
-
- protected DetailAnnouncement(Parcel in) {
- this.author = in.readParcelable(Author.class.getClassLoader());
- this.title = in.readString();
- this.text = in.readString();
- this.date = in.readString();
- this.resource = in.readString();
- this.uri = in.readString();
- this.id = in.readString();
- this.idElement = in.readString();
- }
-
- public static final Parcelable.Creator<DetailAnnouncement> CREATOR = new Parcelable.Creator<DetailAnnouncement>() {
- @Override
- public DetailAnnouncement createFromParcel(Parcel source) {
- return new DetailAnnouncement(source);
- }
-
- @Override
- public DetailAnnouncement[] newArray(int size) {
- return new DetailAnnouncement[size];
- }
- };
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/data/remote/BaseApiManager.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/data/remote/BaseApiManager.java b/app/src/main/java/org/apache/taverna/mobile/data/remote/BaseApiManager.java
index ec97b34..4fa690b 100644
--- a/app/src/main/java/org/apache/taverna/mobile/data/remote/BaseApiManager.java
+++ b/app/src/main/java/org/apache/taverna/mobile/data/remote/BaseApiManager.java
@@ -10,13 +10,12 @@ import retrofit2.converter.simplexml.SimpleXmlConverterFactory;
public class BaseApiManager {
- String ENDPOINT = "http://www.myexperiment.org/";
-
public TavernaService mTavernaService;
+ String ENDPOINT = "http://www.myexperiment.org/";
- public BaseApiManager(){
+ public BaseApiManager() {
- mTavernaService = createApi(TavernaService.class,ENDPOINT);
+ mTavernaService = createApi(TavernaService.class, ENDPOINT);
}
/******** Helper class that sets up a new services *******/
@@ -29,10 +28,10 @@ public class BaseApiManager {
.addCallAdapterFactory(RxJavaCallAdapterFactory.create())
.build();
- return retrofit.create(clazz);
+ return retrofit.create(clazz);
}
- public TavernaService getTavernaApi(){
+ public TavernaService getTavernaApi() {
return mTavernaService;
}
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/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 f483490..cbc05e3 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
@@ -1,7 +1,7 @@
package org.apache.taverna.mobile.data.remote;
-import org.apache.taverna.mobile.data.model.DetailAnnouncement;
import org.apache.taverna.mobile.data.model.Announcements;
+import org.apache.taverna.mobile.data.model.DetailAnnouncement;
import retrofit2.http.GET;
import retrofit2.http.Query;
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/fragments/FavoriteFragment.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/fragments/FavoriteFragment.java b/app/src/main/java/org/apache/taverna/mobile/fragments/FavoriteFragment.java
index dccaa01..86278a8 100644
--- a/app/src/main/java/org/apache/taverna/mobile/fragments/FavoriteFragment.java
+++ b/app/src/main/java/org/apache/taverna/mobile/fragments/FavoriteFragment.java
@@ -25,6 +25,12 @@ package org.apache.taverna.mobile.fragments;
* under the License.
*/
+import org.apache.taverna.mobile.R;
+import org.apache.taverna.mobile.adapters.FavoriteWorkflowAdapter;
+import org.apache.taverna.mobile.adapters.WorkflowAdapter;
+import org.apache.taverna.mobile.utils.WorkflowDB;
+import org.json.JSONException;
+
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v7.widget.LinearLayoutManager;
@@ -34,16 +40,9 @@ import android.view.LayoutInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
-import android.widget.AdapterView;
import android.widget.TextView;
import android.widget.Toast;
-import org.apache.taverna.mobile.R;
-import org.apache.taverna.mobile.adapters.FavoriteWorkflowAdapter;
-import org.apache.taverna.mobile.adapters.WorkflowAdapter;
-import org.apache.taverna.mobile.utils.Workflow_DB;
-import org.json.JSONException;
-
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
@@ -51,16 +50,19 @@ import java.util.List;
/**
* Created by Larry Akah on 6/6/15.
*/
-public class FavoriteFragment extends Fragment implements RecyclerView.OnCreateContextMenuListener{
+public class FavoriteFragment extends Fragment implements RecyclerView.OnCreateContextMenuListener {
/**
* The fragment argument representing the section number for this
* fragment.
*/
private static final String ARG_SECTION_NUMBER = "SECTION_NUMBER";
public FavoriteWorkflowAdapter favoriteAdapter;
+ public WorkflowDB myWorkflowDb;
private RecyclerView wFavoriteListView;
private RecyclerView.AdapterDataObserver dataObserver;
- public Workflow_DB myWorkflowDb;
+
+ public FavoriteFragment() {
+ }
/**
* Returns a new instance of this fragment for the given section
@@ -75,22 +77,19 @@ public class FavoriteFragment extends Fragment implements RecyclerView.OnCreateC
return fragment;
}
- public FavoriteFragment() {
- }
-
@Override
- public void onCreate(Bundle savedInstanceState){
+ public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- dataObserver = new RecyclerView.AdapterDataObserver(){
+ dataObserver = new RecyclerView.AdapterDataObserver() {
@Override
public void onChanged() {
super.onChanged();
- // Toast.makeText(getActivity(), "data changed", Toast.LENGTH_SHORT).show();
+ // Toast.makeText(getActivity(), "data changed", Toast.LENGTH_SHORT).show();
setUpFavoriteData();
setUpListView();
}
};
- setUpFavoriteData();
+ setUpFavoriteData();
}
@@ -98,7 +97,7 @@ public class FavoriteFragment extends Fragment implements RecyclerView.OnCreateC
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_dashboard_main, container, false);
- wFavoriteListView = (RecyclerView)rootView.findViewById(R.id.favoriteList);
+ wFavoriteListView = (RecyclerView) rootView.findViewById(R.id.favoriteList);
wFavoriteListView.setHasFixedSize(true);
wFavoriteListView.setLayoutManager(new LinearLayoutManager(getActivity()));
wFavoriteListView.setAdapter(favoriteAdapter);
@@ -108,15 +107,16 @@ public class FavoriteFragment extends Fragment implements RecyclerView.OnCreateC
/**
* Prepare the data to be used in the list as favorite items
*/
- private void setUpFavoriteData(){
- myWorkflowDb = new Workflow_DB(getActivity(), WorkflowAdapter.WORKFLOW_FAVORITE_KEY);
+ private void setUpFavoriteData() {
+ myWorkflowDb = new WorkflowDB(getActivity(), WorkflowAdapter.WORKFLOW_FAVORITE_KEY);
try {
List<ArrayList<Object>> mfavorites = myWorkflowDb.get();
favoriteAdapter = new FavoriteWorkflowAdapter(getActivity(), mfavorites);
favoriteAdapter.registerAdapterDataObserver(dataObserver);
} catch (JSONException e) {
e.printStackTrace();
- favoriteAdapter = new FavoriteWorkflowAdapter(getActivity(), Collections.<ArrayList<Object>>emptyList());
+ favoriteAdapter = new FavoriteWorkflowAdapter(getActivity(), Collections
+ .<ArrayList<Object>>emptyList());
favoriteAdapter.registerAdapterDataObserver(dataObserver);
}
}
@@ -124,9 +124,10 @@ public class FavoriteFragment extends Fragment implements RecyclerView.OnCreateC
/**
* Populate the listview using the adapter
*/
- private void setUpListView(){
+ private void setUpListView() {
wFavoriteListView.setAdapter(favoriteAdapter);
}
+
/**
* Called when a context menu for the {@code view} is about to be shown.
* Unlike {@link #onCreateOptionsMenu}, this will be called every
@@ -143,14 +144,11 @@ public class FavoriteFragment extends Fragment implements RecyclerView.OnCreateC
* <p/>
* It is not safe to hold onto the context menu after this method returns.
* {@inheritDoc}
- *
- * @param menu
- * @param v
- * @param menuInfo
*/
@Override
- public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
- // super.onCreateContextMenu(menu, v, menuInfo);
+ public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo
+ menuInfo) {
+ // super.onCreateContextMenu(menu, v, menuInfo);
menu.add("View");
menu.add("Remove");
menu.setHeaderIcon(R.mipmap.ic_launcher);
@@ -178,14 +176,13 @@ public class FavoriteFragment extends Fragment implements RecyclerView.OnCreateC
@Override
public boolean onContextItemSelected(MenuItem item) {
String title = (String) item.getTitle();
- if(title.equals("View")){
- Toast.makeText(getActivity(),"View", Toast.LENGTH_SHORT).show();
+ if (title.equals("View")) {
+ Toast.makeText(getActivity(), "View", Toast.LENGTH_SHORT).show();
return true;
- }
- else if (title.equals("Remove")){
- Toast.makeText(getActivity(),"Removing", Toast.LENGTH_SHORT).show();
+ } else if (title.equals("Remove")) {
+ Toast.makeText(getActivity(), "Removing", Toast.LENGTH_SHORT).show();
return true;
- }else
+ } else
return super.onContextItemSelected(item);
}
@@ -198,7 +195,7 @@ public class FavoriteFragment extends Fragment implements RecyclerView.OnCreateC
@Override
public void onResume() {
super.onResume();
- // setUpListView();
+ // setUpListView();
//wFavoriteListView.setOnCreateContextMenuListener(this);
//registerForContextMenu(wFavoriteListView);
@@ -218,9 +215,9 @@ public class FavoriteFragment extends Fragment implements RecyclerView.OnCreateC
/**
* Causes the empty textView to be set and become visible
*/
- private void setEmptyText(){
+ private void setEmptyText() {
View emptyView = wFavoriteListView.getChildAt(1);
- if(emptyView instanceof TextView){
+ if (emptyView instanceof TextView) {
emptyView.setVisibility(View.VISIBLE);
}
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/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 2b83374..98523a1 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
@@ -2,10 +2,10 @@ package org.apache.taverna.mobile.fragments;
/**
* Apache Taverna Mobile
* Copyright 2015 The Apache Software Foundation
-
+ *
* This product includes software developed at
* The Apache Software Foundation (http://www.apache.org/).
-
+ *
* 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
@@ -24,6 +24,13 @@ package org.apache.taverna.mobile.fragments;
* under the License.
*/
+import org.apache.taverna.mobile.R;
+import org.apache.taverna.mobile.adapters.WorkflowAdapter;
+import org.apache.taverna.mobile.tavernamobile.User;
+import org.apache.taverna.mobile.tavernamobile.Workflow;
+import org.apache.taverna.mobile.utils.AvatarLoader;
+import org.apache.taverna.mobile.utils.WorkflowLoader;
+
import android.app.Activity;
import android.app.ProgressDialog;
import android.app.SearchManager;
@@ -52,14 +59,6 @@ import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
-import org.apache.taverna.mobile.R;
-import org.apache.taverna.mobile.activities.DashboardMainActivity;
-import org.apache.taverna.mobile.adapters.WorkflowAdapter;
-import org.apache.taverna.mobile.tavernamobile.User;
-import org.apache.taverna.mobile.tavernamobile.Workflow;
-import org.apache.taverna.mobile.utils.AvatarLoader;
-import org.apache.taverna.mobile.utils.WorkflowLoader;
-
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
@@ -73,43 +72,47 @@ import java.util.List;
* with a GridView.
* <p/>
*/
-public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout.OnRefreshListener,SearchView.OnQueryTextListener {
+public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
+ .OnRefreshListener, SearchView.OnQueryTextListener {
// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER
private static final String ARG_PARAM1 = "param1";
private static final String ARG_PARAM2 = "param2";
-
- private Animation in;
- private ProgressDialog mProgressDialog; //progressbar used to indicate the state of the workflow loaders
-
- private String mParam1;
- private String mParam2;
-
+ public static Context cx;
+ //variables controlling the different kinds of data loading
+ public static boolean isLoadMoreData = false;
+ public static boolean isRefreshData = false;
/**
* The fragment's ListView/GridView.
*/
private static RecyclerView mListView;
- private SwipeRefreshLayout swipeRefreshLayout;
-
private static View rootView;
- public static Context cx;
private static boolean STATE_ON = false;
private static TextView noDataText;
private static LruCache<String, Bitmap> avatarCache;
- private LinearLayoutManager mLinearLayoutManager;
private static WorkflowAdapter workflowAdapter;
-
//variables for controlling the infinite scroll mechanism
private static int previousTotal = 0;
+ private Animation in;
+ private ProgressDialog mProgressDialog; //progressbar used to indicate the state of the
+ // workflow loaders
+ private String mParam1;
+ private String mParam2;
+ private SwipeRefreshLayout swipeRefreshLayout;
+ private LinearLayoutManager mLinearLayoutManager;
private int visibleThreshold = 3;
private int firstVisibleItem, visibleItemCount, totalItemCount;
private int currentPage = 1;
- private boolean loading = true;
+ private boolean loading = true;
private InfiniteScrollListener scrollListener;
private RecyclerView.AdapterDataObserver workflowObserver;
- //variables controlling the different kinds of data loading
- public static boolean isLoadMoreData = false;
- public static boolean isRefreshData = false;
+
+ /**
+ * Mandatory empty constructor for the fragment manager to instantiate the
+ * fragment (e.g. upon screen orientation changes).
+ */
+ public WorkflowItemFragment() {
+ }
public static WorkflowItemFragment newInstance(String param1, String param2) {
WorkflowItemFragment fragment = new WorkflowItemFragment();
@@ -120,13 +123,77 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
return fragment;
}
+ public static void updateWorkflowUI(final List<Workflow> data) {
+
+ ((Activity) cx).runOnUiThread(new Runnable() {
+ @Override
+ public void run() {
+ WorkflowItemFragment.workflowAdapter = new WorkflowAdapter(cx, data);
+ if (isLoadMoreData) {
+ isLoadMoreData = false;
+ isRefreshData = false;
+ ((WorkflowAdapter) mListView.getAdapter()).addItems(data, previousTotal);
+ } else
+ mListView.swapAdapter(workflowAdapter, false);
+
+ if (WorkflowItemFragment.workflowAdapter.getItemCount() == 0) {
+ mListView.setVisibility(View.GONE);
+ noDataText.setVisibility(View.VISIBLE);
+ // Toast.makeText(cx, cx.getResources().getString(R.string
+ // .err_workflow_conn), Toast.LENGTH_LONG).show();
+ } else {
+ mListView.setVisibility(View.VISIBLE);
+ noDataText.setVisibility(View.GONE);
+ }
+ }
+ });
+ }
+
+ public static void startLoadingAvatar(final User author) {
+
+ ((Activity) cx).runOnUiThread(new Runnable() {
+ @Override
+ public void run() {
+ synchronized (this) {
+ author.getUserViewHolder().author_name.setText(author.getName());
+ //((TextView) rootView.findViewById(R.id.workflow_author)).setText(author
+ // .getName());
+ //check whether avatar is already in the cache before trying to download it
+ // from remote resource
+ if (avatarCache.get(author.getDetails_uri()) == null)
+ new AvatarLoader(author.getUserViewHolder()).execute(author
+ .getDetails_uri(), author.getRow_id());
+ else {
+ author.getUserViewHolder().author_profile.setImageBitmap(avatarCache.get
+ (author.getDetails_uri()));
+// ((ImageView) rootView.findViewById(R.id.author_profile_image))
+// .setImageBitmap(avatarCache.get(author.getDetails_uri()));
+ }
+ System.out.println("Author cached ID " + author.getDetails_uri() + "\n Name: " +
+ "" + author.getName());
+ }
+ }
+ });
+ }
+
/**
- * Mandatory empty constructor for the fragment manager to instantiate the
- * fragment (e.g. upon screen orientation changes).
+ * Called when avatar xml has finished parsing. fetches the avatar remotely and updates the item
+ * in the list view
+ *
+ * @param author the author avatar to load
*/
- public WorkflowItemFragment() {
- }
+ public static void updateAvatar(final User author) {
+ ((Activity) cx).runOnUiThread(new Runnable() {
+ @Override
+ public void run() {
+ // new LoadAuthorAvatar((ImageView) rootView.findViewById(R.id
+ // .author_profile_image),author.getDetails_uri()).execute(author.getAvatar_url());
+ new LoadAuthorAvatar(author.getUserViewHolder().author_profile, author
+ .getDetails_uri()).execute(author.getAvatar_url());
+ }
+ });
+ }
@Override
public void onCreate(Bundle savedInstanceState) {
@@ -135,13 +202,14 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
cx = getActivity();
mLinearLayoutManager = new LinearLayoutManager(cx);
scrollListener = new InfiniteScrollListener();
- workflowObserver= new RecyclerView.AdapterDataObserver() {
+ workflowObserver = new RecyclerView.AdapterDataObserver() {
@Override
public void onItemRangeInserted(int positionStart, int itemCount) {
super.onItemRangeInserted(positionStart, itemCount);
- mListView.swapAdapter(workflowAdapter,false);
- Toast.makeText(getActivity(), "adding more workflows to listview", Toast.LENGTH_SHORT).show();
+ mListView.swapAdapter(workflowAdapter, false);
+ Toast.makeText(getActivity(), "adding more workflows to listview", Toast
+ .LENGTH_SHORT).show();
}
};
workflowAdapter = new WorkflowAdapter(getActivity());
@@ -151,11 +219,12 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
mParam1 = getArguments().getString(ARG_PARAM1);
mParam2 = getArguments().getString(ARG_PARAM2);
}
- in = AnimationUtils.loadAnimation(getActivity(),android.R.anim.slide_in_left);
+ in = AnimationUtils.loadAnimation(getActivity(), android.R.anim.slide_in_left);
}
@Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
+ public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle
+ savedInstanceState) {
rootView = inflater.inflate(R.layout.fragment_item, container, false);
noDataText = (TextView) rootView.findViewById(android.R.id.empty);
swipeRefreshLayout = (SwipeRefreshLayout) rootView.findViewById(R.id.refresh);
@@ -171,12 +240,13 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
mListView.setItemAnimator(new DefaultItemAnimator());
final int maxMemory = (int) (Runtime.getRuntime().maxMemory() / 1024);
- // Use 1/8th of the available memory for this memory cache. up to 4MB for high screen densities and 1.2Mb for low sds
+ // Use 1/8th of the available memory for this memory cache. up to 4MB for high screen
+ // densities and 1.2Mb for low sds
final int cacheSize = maxMemory / 8;
- avatarCache = new LruCache<String, Bitmap>(cacheSize){
+ avatarCache = new LruCache<String, Bitmap>(cacheSize) {
@Override
- protected int sizeOf(String key, Bitmap bitmap){
- // The cache size will be measured in kilobytes
+ protected int sizeOf(String key, Bitmap bitmap) {
+ // The cache size will be measured in kilobytes
return bitmap.getByteCount() / 1024;
}
};
@@ -189,7 +259,7 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
super.onAttach(activity);
try {
- // ((DashboardMainActivity) activity).onSectionAttached(1);
+ // ((DashboardMainActivity) activity).onSectionAttached(1);
} catch (ClassCastException e) {
throw new ClassCastException(activity.toString()
+ " must implement OnFragmentInteractionListener");
@@ -214,8 +284,8 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
@Override
public void onResume() {
super.onResume();
- if(!STATE_ON) {
- new WorkflowLoader(getActivity(), swipeRefreshLayout).execute(""+currentPage);
+ if (!STATE_ON) {
+ new WorkflowLoader(getActivity(), swipeRefreshLayout).execute("" + currentPage);
if (mListView.getAdapter().getItemCount() == 0) {
mListView.setVisibility(View.GONE);
@@ -226,7 +296,8 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
noDataText.setVisibility(View.GONE);
}
}
-// ((RecyclerView)(getActivity()).findViewById(R.id.favoriteList)).getAdapter().notifyDataSetChanged();
+// ((RecyclerView)(getActivity()).findViewById(R.id.favoriteList)).getAdapter()
+// .notifyDataSetChanged();
}
@Override
@@ -239,12 +310,14 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
super.onCreateOptionsMenu(menu, inflater);
//menu.clear();
- if(menu.size() == 1) {
+ if (menu.size() == 1) {
//get the searchview and set the searchable configuration
- SearchManager searchManager = (SearchManager) getActivity().getSystemService(Context.SEARCH_SERVICE);
+ SearchManager searchManager = (SearchManager) getActivity().getSystemService(Context
+ .SEARCH_SERVICE);
SearchView searchView = (SearchView) menu.findItem(R.id.action_search).getActionView();
//assuming this activity is the searchable activity
- searchView.setSearchableInfo(searchManager.getSearchableInfo(getActivity().getComponentName()));
+ searchView.setSearchableInfo(searchManager.getSearchableInfo(getActivity()
+ .getComponentName()));
searchView.setSubmitButtonEnabled(true);
searchView.setOnQueryTextListener(this);
// searchView.setOnSearchClickListener(this);
@@ -257,8 +330,8 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
@Override
public boolean onOptionsItemSelected(MenuItem item) {
- if(item.getTitle().equals("Refresh")){
- new WorkflowLoader(getActivity(),swipeRefreshLayout).execute("1");
+ if (item.getTitle().equals("Refresh")) {
+ new WorkflowLoader(getActivity(), swipeRefreshLayout).execute("1");
return true;
}
return super.onOptionsItemSelected(item);
@@ -267,15 +340,15 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
@Override
public void onDestroy() {
super.onDetach();
- // workflowAdapter.unregisterAdapterDataObserver(workflowObserver);
+ // workflowAdapter.unregisterAdapterDataObserver(workflowObserver);
}
//handle a request to query for given workflows
- private void performSearch(String search){
+ private void performSearch(String search) {
WorkflowAdapter ladapter = new WorkflowAdapter(getActivity());
WorkflowAdapter wk = workflowAdapter;
- if(!TextUtils.isEmpty(search)) {
+ if (!TextUtils.isEmpty(search)) {
if (null != wk)
for (int i = 0; i < wk.getItemCount(); i++) {
Workflow workflow = wk.getItem(i);
@@ -286,7 +359,8 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
mListView.swapAdapter(ladapter, true);
if (ladapter.getItemCount() == 0)
- Toast.makeText(getActivity(), "No workflows found matching criteria", Toast.LENGTH_SHORT).show();
+ Toast.makeText(getActivity(), "No workflows found matching criteria", Toast
+ .LENGTH_SHORT).show();
}
}
@@ -295,11 +369,13 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
isRefreshData = true;
isLoadMoreData = false;
- new WorkflowLoader(getActivity(),swipeRefreshLayout).execute(""+1);
+ new WorkflowLoader(getActivity(), swipeRefreshLayout).execute("" + 1);
}
/**
- * Search action triggered, handle the search request. Filter the workflows by name/title and swap current adapter with the new adapter
+ * Search action triggered, handle the search request. Filter the workflows by name/title and
+ * swap current adapter with the new adapter
+ *
* @param query Search string criteria
* @return whether or not user handled request 'manually'
*/
@@ -315,66 +391,6 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
return true;
}
- public static void updateWorkflowUI(final List<Workflow> data) {
-
- ((Activity)cx).runOnUiThread(new Runnable() {
- @Override
- public void run() {
- WorkflowItemFragment.workflowAdapter = new WorkflowAdapter(cx,data);
- if(isLoadMoreData) {
- isLoadMoreData = false;
- isRefreshData = false;
- ((WorkflowAdapter)mListView.getAdapter()).addItems(data, previousTotal);
- }else
- mListView.swapAdapter(workflowAdapter, false);
-
- if(WorkflowItemFragment.workflowAdapter.getItemCount() == 0){
- mListView.setVisibility(View.GONE);
- noDataText.setVisibility(View.VISIBLE);
- // Toast.makeText(cx, cx.getResources().getString(R.string.err_workflow_conn), Toast.LENGTH_LONG).show();
- }else{
- mListView.setVisibility(View.VISIBLE);
- noDataText.setVisibility(View.GONE);
- }
- }
- });
- }
-
- public static void startLoadingAvatar(final User author) {
-
- ((Activity)cx).runOnUiThread(new Runnable() {
- @Override
- public void run() {
- synchronized (this) {
- author.getUserViewHolder().author_name.setText(author.getName());
- //((TextView) rootView.findViewById(R.id.workflow_author)).setText(author.getName());
- //check whether avatar is already in the cache before trying to download it from remote resource
- if(avatarCache.get(author.getDetails_uri()) == null)
- new AvatarLoader(author.getUserViewHolder()).execute(author.getDetails_uri(), author.getRow_id());
- else{
- author.getUserViewHolder().author_profile.setImageBitmap(avatarCache.get(author.getDetails_uri()));
-// ((ImageView) rootView.findViewById(R.id.author_profile_image)).setImageBitmap(avatarCache.get(author.getDetails_uri()));
- }
- System.out.println("Author cached ID "+author.getDetails_uri()+"\n Name: "+author.getName());
- }
- }
- });
- }
-
- /**
- * Called when avatar xml has finished parsing. fetches the avatar remotely and updates the item in the list view
- * @param author the author avatar to load
- */
- public static void updateAvatar(final User author) {
-
- ((Activity)cx).runOnUiThread(new Runnable() {
- @Override
- public void run() {
- // new LoadAuthorAvatar((ImageView) rootView.findViewById(R.id.author_profile_image),author.getDetails_uri()).execute(author.getAvatar_url());
- new LoadAuthorAvatar( author.getUserViewHolder().author_profile,author.getDetails_uri()).execute(author.getAvatar_url());
- }
- });
- }
/**
* Load the Author Avatar from a background Task
*/
@@ -413,13 +429,13 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
try {
avatarCache.put(row_id_as_key, bitmap);
- }catch(NullPointerException np){
+ } catch (NullPointerException np) {
}
}
}
- private class InfiniteScrollListener extends RecyclerView.OnScrollListener{
+ private class InfiniteScrollListener extends RecyclerView.OnScrollListener {
/**
* Callback method to be invoked when the RecyclerView has been scrolled. This will be
* called after the scroll has completed.
@@ -437,18 +453,19 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout
visibleItemCount = mListView.getChildCount();
totalItemCount = mLinearLayoutManager.getItemCount();
firstVisibleItem = mLinearLayoutManager.findFirstVisibleItemPosition();
- if(loading){
- if(totalItemCount > previousTotal){
+ if (loading) {
+ if (totalItemCount > previousTotal) {
loading = false;
previousTotal = totalItemCount;
}
}
- if(!loading && (totalItemCount - visibleItemCount) <= (firstVisibleItem+visibleThreshold)){
+ if (!loading && (totalItemCount - visibleItemCount) <= (firstVisibleItem +
+ visibleThreshold)) {
//list has reached end, load more.
Toast.makeText(getActivity(), "Loading more", Toast.LENGTH_SHORT).show();
isLoadMoreData = true;
currentPage++;
- new WorkflowLoader(getActivity(),swipeRefreshLayout).execute(""+currentPage);
+ new WorkflowLoader(getActivity(), swipeRefreshLayout).execute("" + currentPage);
System.out.println(currentPage);
loading = true;
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/fragments/WorkflowViewpager.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/fragments/WorkflowViewpager.java b/app/src/main/java/org/apache/taverna/mobile/fragments/WorkflowViewpager.java
new file mode 100644
index 0000000..0d5acb6
--- /dev/null
+++ b/app/src/main/java/org/apache/taverna/mobile/fragments/WorkflowViewpager.java
@@ -0,0 +1,114 @@
+package org.apache.taverna.mobile.fragments;
+
+import org.apache.taverna.mobile.R;
+
+import android.os.Bundle;
+import android.support.design.widget.TabLayout;
+import android.support.v4.app.Fragment;
+import android.support.v4.app.FragmentManager;
+import android.support.v4.app.FragmentPagerAdapter;
+import android.support.v4.view.ViewPager;
+import android.support.v7.app.ActionBar;
+import android.support.v7.app.AppCompatActivity;
+import android.support.v7.widget.Toolbar;
+import android.util.Log;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Created by rajan on 8/3/16.
+ */
+public class WorkflowViewpager extends Fragment {
+
+ private final String LOG_TAG = getClass().getSimpleName();
+
+ ViewPager viewPager;
+ TabLayout tabLayout;
+
+
+ public static WorkflowViewpager getInstance(int position) {
+ WorkflowViewpager myFragment = new WorkflowViewpager();
+ Bundle args = new Bundle();
+ args.putInt("position", position);
+ myFragment.setArguments(args);
+ return myFragment;
+ }
+
+ @Override
+ public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle
+ savedInstanceState) {
+ View workflow_pager = inflater.inflate(R.layout.viewpager_workflow, container, false);
+
+ /**
+ * Setting the tool bar in MainActivity for all fragment
+ */
+ Toolbar toolbar = (Toolbar) workflow_pager.findViewById(R.id.toolbar);
+ ((AppCompatActivity) getActivity()).setSupportActionBar(toolbar);
+
+ final ActionBar ab = ((AppCompatActivity) getActivity()).getSupportActionBar();
+ ab.setHomeAsUpIndicator(R.drawable.ic_menu);
+ ab.setDisplayHomeAsUpEnabled(true);
+
+
+ viewPager = (ViewPager) workflow_pager.findViewById(R.id.mviewpager);
+ final Adapter adapter = new Adapter(getChildFragmentManager());
+
+ /**
+ * Dynamically Adding tabs
+ * To add the new Tab "Go to res/values/category_id and add new title and category id"
+ */
+ adapter.addFragment(new WorkflowItemFragment(), getResources().getString(R.string
+ .title_explore));
+ adapter.addFragment(new FavoriteFragment(), getResources().getString(R.string
+ .title_favorite));
+
+ viewPager.setAdapter(adapter);
+ viewPager.setOffscreenPageLimit(2);
+ tabLayout = (TabLayout) workflow_pager.findViewById(R.id.mtablayout);
+ tabLayout.setupWithViewPager(viewPager);
+
+ return workflow_pager;
+ }
+
+
+ @Override
+ public void onViewCreated(View view, Bundle savedInstanceState) {
+ super.onViewCreated(view, savedInstanceState);
+ Log.i(LOG_TAG, "Workflow_viewpager.onCreate");
+
+ }
+
+ static class Adapter extends FragmentPagerAdapter {
+ private final List<Fragment> mFragments = new ArrayList<>();
+ private final List<String> mFragmentTitles = new ArrayList<>();
+
+ public Adapter(FragmentManager fm) {
+ super(fm);
+ }
+
+ public void addFragment(Fragment fragment, String title) {
+ mFragments.add(fragment);
+ mFragmentTitles.add(title);
+ }
+
+ @Override
+ public Fragment getItem(int position) {
+ return mFragments.get(position);
+ }
+
+ @Override
+ public int getCount() {
+ return mFragments.size();
+ }
+
+
+ @Override
+ public CharSequence getPageTitle(int position) {
+ return mFragmentTitles.get(position);
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/e752e97d/app/src/main/java/org/apache/taverna/mobile/fragments/Workflow_viewpager.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/fragments/Workflow_viewpager.java b/app/src/main/java/org/apache/taverna/mobile/fragments/Workflow_viewpager.java
deleted file mode 100644
index 753645f..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/fragments/Workflow_viewpager.java
+++ /dev/null
@@ -1,113 +0,0 @@
-package org.apache.taverna.mobile.fragments;
-
-import android.os.Bundle;
-import android.support.design.widget.TabLayout;
-import android.support.v4.app.Fragment;
-import android.support.v4.app.FragmentPagerAdapter;
-import android.support.v4.view.ViewPager;
-import android.support.v7.app.ActionBar;
-import android.support.v7.app.AppCompatActivity;
-import android.support.v7.widget.Toolbar;
-import android.util.Log;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-import android.support.v4.app.FragmentManager;
-import org.apache.taverna.mobile.R;
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * Created by rajan on 8/3/16.
- */
-public class Workflow_viewpager extends Fragment{
-
- private final String LOG_TAG = getClass().getSimpleName();
-
- ViewPager viewPager;
- TabLayout tabLayout;
-
-
- public static Workflow_viewpager getInstance(int position) {
- Workflow_viewpager myFragment = new Workflow_viewpager();
- Bundle args = new Bundle();
- args.putInt("position", position);
- myFragment.setArguments(args);
- return myFragment;
- }
-
- @Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
- View workflow_pager = inflater.inflate(R.layout.viewpager_workflow, container, false);
-
- /**
- * Setting the tool bar in MainActivity for all fragment
- */
- Toolbar toolbar = (Toolbar) workflow_pager.findViewById(R.id.toolbar);
- ((AppCompatActivity) getActivity()).setSupportActionBar(toolbar);
-
- final ActionBar ab = ((AppCompatActivity) getActivity()).getSupportActionBar();
- ab.setHomeAsUpIndicator(R.drawable.ic_menu);
- ab.setDisplayHomeAsUpEnabled(true);
-
-
- viewPager = (ViewPager) workflow_pager.findViewById(R.id.mviewpager);
- final Adapter adapter = new Adapter(getChildFragmentManager());
-
- /**
- * Dynamically Adding tabs
- * To add the new Tab "Go to res/values/category_id and add new title and category id"
- */
- adapter.addFragment(new WorkflowItemFragment() , getResources().getString(R.string.title_explore));
- adapter.addFragment(new FavoriteFragment(), getResources().getString(R.string.title_favorite));
-
- viewPager.setAdapter(adapter);
- viewPager.setOffscreenPageLimit(2);
- tabLayout = (TabLayout) workflow_pager.findViewById(R.id.mtablayout);
- tabLayout.setupWithViewPager(viewPager);
-
- return workflow_pager;
- }
-
-
-
- @Override
- public void onViewCreated(View view, Bundle savedInstanceState)
- {
- super.onViewCreated(view, savedInstanceState);
- Log.i(LOG_TAG, "Workflow_viewpager.onCreate");
-
- }
-
- static class Adapter extends FragmentPagerAdapter
- {
- private final List<Fragment> mFragments = new ArrayList<>();
- private final List<String> mFragmentTitles = new ArrayList<>();
-
- public Adapter(FragmentManager fm) {
- super(fm);
- }
-
- public void addFragment(Fragment fragment, String title) {
- mFragments.add(fragment);
- mFragmentTitles.add(title);
- }
-
- @Override
- public Fragment getItem(int position) {
- return mFragments.get(position);
- }
-
- @Override
- public int getCount() {
- return mFragments.size();
- }
-
-
-
- @Override
- public CharSequence getPageTitle(int position) {
- return mFragmentTitles.get(position);
- }
- }
-}