You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@taverna.apache.org by sa...@apache.org on 2016/10/31 09:30:09 UTC

[1/7] incubator-taverna-mobile git commit: clear codebase

Repository: incubator-taverna-mobile
Updated Branches:
  refs/heads/master c850e0593 -> ed7298ffa


http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/src/main/res/layout/fragment_run_result.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/layout/fragment_run_result.xml b/app/src/main/res/layout/fragment_run_result.xml
deleted file mode 100644
index 676c307..0000000
--- a/app/src/main/res/layout/fragment_run_result.xml
+++ /dev/null
@@ -1,164 +0,0 @@
-<!--
-    Apache Taverna Mobile
-    Copyright 2016 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.
--->
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
-    android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
-    android:paddingRight="@dimen/activity_horizontal_margin"
-    android:paddingTop="@dimen/activity_vertical_margin"
-    android:paddingBottom="@dimen/activity_vertical_margin"
-    android:orientation="vertical"
-    >
-
-    <LinearLayout
-        android:orientation="horizontal"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:layout_marginBottom="10dp">
-
-        <TextView
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:textAppearance="?android:attr/textAppearanceLarge"
-            android:id="@+id/textView_runName"
-            android:layout_weight="2" />
-
-    </LinearLayout>
-
-    <LinearLayout
-        android:orientation="horizontal"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content">
-
-        <TextView
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:textAppearance="?android:attr/textAppearanceMedium"
-            android:text="@string/runid_text"
-            android:id="@+id/textView24"
-            android:layout_weight="1" />
-
-        <TextView
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:background="@drawable/round_shape"
-            android:id="@+id/textview_runid"
-            android:layout_gravity="left"
-            android:text="1"
-            android:gravity="center" />
-
-    </LinearLayout>
-
-    <LinearLayout
-        android:orientation="horizontal"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:layout_marginBottom="10dp">
-
-        <ImageButton
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:id="@+id/statusButton"
-            android:src="@android:drawable/presence_online"
-            android:background="#eee" />
-
-        <TextView
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:textAppearance="?android:attr/textAppearanceMedium"
-            android:text="Medium Text"
-            android:id="@+id/statusTextView" />
-    </LinearLayout>
-
-    <TextView
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:textAppearance="?android:attr/textAppearanceMedium"
-        android:text="@string/runstarted"
-        android:id="@+id/textView11"
-        android:gravity="center"
-        android:layout_gravity="center_horizontal"
-        android:textSize="25dp" />
-
-    <TextView
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:textAppearance="?android:attr/textAppearanceMedium"
-        android:id="@+id/start_time"
-        android:hint="started" />
-
-    <TextView
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:textAppearance="?android:attr/textAppearanceLarge"
-        android:text="@string/run_finishtime"
-        android:id="@+id/textView12"
-        android:textSize="25dp"
-        android:layout_gravity="center_horizontal" />
-
-    <TextView
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:textAppearance="?android:attr/textAppearanceMedium"
-        android:id="@+id/runfinish"
-        android:hint="finish" />
-
-    <TextView
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:textAppearance="?android:attr/textAppearanceLarge"
-        android:text="inputs from run"
-        android:id="@+id/runinputsTextView"
-        android:minLines="5"
-        android:scrollbars="vertical"
-        android:layout_marginTop="10dp"
-        android:layout_weight="1.5"
-        android:layout_marginBottom="10dp" />
-
-    <LinearLayout
-        android:orientation="horizontal"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content">
-
-        <Button
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:text="download output"
-            android:id="@+id/buttonWorkflowDownloadOutput"
-            android:layout_weight="1"
-            android:background="#1F9FEA"
-            android:layout_marginRight="5dp" />
-
-        <Button
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:text="Download Logs"
-            android:id="@+id/downloadRunLogs"
-            android:layout_gravity="center_horizontal"
-            android:layout_weight="1"
-            android:background="#1F9FEA"
-            android:layout_marginLeft="5dp" />
-    </LinearLayout>
-
-</LinearLayout>

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/src/main/res/layout/fragment_workflow_about.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/layout/fragment_workflow_about.xml b/app/src/main/res/layout/fragment_workflow_about.xml
deleted file mode 100644
index fb78aed..0000000
--- a/app/src/main/res/layout/fragment_workflow_about.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-<!--
-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.
--->
-<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    tools:context="org.apache.taverna.mobile.fragments.workflowdetails.WorkflowAboutFragment"
-    android:background="@color/button_material_light">
-
-    <TextView android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:text="@string/hello_blank_fragment"
-        android:elevation="5sp"
-        android:layout_margin="2dp"
-        android:backgroundTintMode="screen"
-        android:ellipsize="start"
-        android:id="@+id/aboutworkflowTextView"
-        android:typeface="serif"
-        android:scrollbars="vertical"
-        android:fadeScrollbars="true"
-        android:textIsSelectable="true" />
-
-</FrameLayout>

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/src/main/res/layout/fragment_workflow_detail.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/layout/fragment_workflow_detail.xml b/app/src/main/res/layout/fragment_workflow_detail.xml
deleted file mode 100644
index 8016f44..0000000
--- a/app/src/main/res/layout/fragment_workflow_detail.xml
+++ /dev/null
@@ -1,190 +0,0 @@
-<!--
-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.
--->
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:tools="http://schemas.android.com/tools"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    tools:context="org.apache.taverna.mobile.activities.WorkflowDetailActivity$PlaceholderFragment"
-    android:orientation="vertical"
-    android:padding="5dp"
-    android:background="@color/button_material_light">
-
-    <ScrollView
-        android:layout_width="match_parent"
-        android:layout_height="0dp"
-        android:id="@+id/scrollView"
-        android:layout_weight="1" >
-
-        <LinearLayout
-            android:orientation="vertical"
-            android:layout_width="fill_parent"
-            android:layout_height="fill_parent">
-
-            <TextView
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:textAppearance="?android:attr/textAppearanceLarge"
-                android:id="@+id/wtitle"
-                android:layout_marginTop="5dp"
-                android:hint="@string/detail_title_section1" />
-            <LinearLayout
-                android:orientation="horizontal"
-                android:layout_width="fill_parent"
-                android:layout_height="wrap_content">
-
-                <TextView android:id="@+id/wkf_author"
-                    android:layout_width="wrap_content"
-                    android:layout_height="wrap_content"
-                    android:typeface="serif"
-                    android:textStyle="normal"
-                    android:text="@string/workflow_author"
-                    android:textIsSelectable="true"
-                    android:layout_gravity="center"
-                    android:textAppearance="?android:attr/textAppearanceMedium"
-                    android:layout_marginRight="5dp" />
-
-                <TextView
-                    android:layout_width="wrap_content"
-                    android:layout_height="wrap_content"
-                    android:id="@+id/wkf_author_text"
-                    android:layout_gravity="center"
-                    android:textStyle="bold"
-                    android:textAppearance="?android:attr/textAppearanceMedium" />
-            </LinearLayout>
-            <TextView
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:textAppearance="?android:attr/textAppearanceMedium"
-                android:id="@+id/wcreatedat"
-                android:layout_marginTop="5dp"
-                android:text="@string/created"
-                android:phoneNumber="false" />
-
-           <!-- <TextView
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:textAppearance="?android:attr/textAppearanceMedium"
-                android:id="@+id/wupdatedat"
-                android:layout_marginTop="5dp"
-                android:text="@string/modified" />-->
-            <TextView
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:textAppearance="?android:attr/textAppearanceMedium"
-                android:id="@+id/wtype"
-                android:layout_marginTop="5dp"
-                android:text="@string/workflow_type_text"
-                android:singleLine="true" />
-
-            <TextView
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:textAppearance="?android:attr/textAppearanceLarge"
-                android:id="@+id/wdescription"
-                android:layout_marginTop="5dp"
-                android:minLines="3"
-                android:hint="@string/description" />
-
-
-
-
-
-            <ImageView
-                android:layout_width="fill_parent"
-                android:layout_height="wrap_content"
-                android:id="@+id/wkf_image"
-                android:src="@mipmap/ic_loading"
-                android:backgroundTint="@color/accent_material_light"
-                android:backgroundTintMode="src_atop"
-                android:adjustViewBounds="true"
-                android:scaleType="fitCenter"
-                android:layout_marginLeft="10dp"
-                android:layout_marginRight="10dp" />
-
-        </LinearLayout>
-    </ScrollView>
-    <LinearLayout
-        android:orientation="horizontal"
-        android:layout_marginTop="10dp"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:layout_gravity="bottom|center"
-        android:gravity="bottom|right">
-
-        <ImageButton
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:id="@+id/saveToDropboxButton"
-            android:src="@drawable/dropbox_icon"
-            android:layout_gravity="left"
-            android:layout_marginRight="20dp"
-            android:background="@color/button_material_light" />
-
-        <ImageButton
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:id="@+id/saveToGoogleDriveButton"
-            android:src="@drawable/google_drive_icon"
-            android:layout_gravity="right"
-            android:background="@color/button_material_light" />
-    </LinearLayout>
-    <LinearLayout
-        android:orientation="horizontal"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:id="@+id/actionLayout">
-
-        <Button
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:textStyle="normal"
-            android:layout_weight="0.33"
-            android:background="#33b5e5"
-            style="android:buttonBarButtonStyle"
-            android:text="@string/play_workflow"
-            android:drawableLeft="@android:drawable/ic_menu_edit"
-            android:id="@+id/run_wk" />
-        <Button
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:textStyle="normal"
-            android:layout_weight="0.33"
-            android:background="#33b5e5"
-            style="android:buttonBarButtonStyle"
-            android:text="@string/workflow_download"
-            android:layout_marginLeft="2dp"
-            android:layout_marginRight="2dp"
-            android:id="@+id/download_wk"
-            android:paddingLeft="5dp"
-            android:elegantTextHeight="true"
-            android:drawableLeft="@drawable/ic_download__web" />
-        <Button
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:textStyle="normal"
-            android:layout_weight="0.33"
-            android:background="#33b5e5"
-            style="android:buttonBarButtonStyle"
-            android:text="@string/workflow_mark"
-            android:drawableLeft="@android:drawable/btn_star_big_off"
-            android:id="@+id/mark_wk" />
-    </LinearLayout>
-
-</LinearLayout>

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/src/main/res/layout/fragment_workflow_licence.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/layout/fragment_workflow_licence.xml b/app/src/main/res/layout/fragment_workflow_licence.xml
deleted file mode 100644
index 9b15538..0000000
--- a/app/src/main/res/layout/fragment_workflow_licence.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-<!--
-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.
--->
-<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    tools:context="org.apache.taverna.mobile.fragments.workflowdetails.WorkflowLicenceFragment"
-    android:background="@color/button_material_light">
-
-    <!-- TODO: Update blank fragment layout -->
-    <TextView android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:text="@string/hello_blank_fragment"
-        android:elevation="5sp"
-        android:layout_margin="2dp"
-        android:scrollbars="vertical"
-        android:fadeScrollbars="true"
-        android:id="@+id/workflowpolicyTextView"
-        android:textAlignment="center"
-        android:typeface="serif"
-        android:textIsSelectable="true" />
-
-</FrameLayout>

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/src/main/res/layout/fragment_workflow_run_history.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/layout/fragment_workflow_run_history.xml b/app/src/main/res/layout/fragment_workflow_run_history.xml
deleted file mode 100644
index b1d075f..0000000
--- a/app/src/main/res/layout/fragment_workflow_run_history.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-<!--
-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.
--->
-<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    tools:context="org.apache.taverna.mobile.fragments.workflowdetails.WorkflowRunHistoryFragment">
-
-    <android.support.v7.widget.RecyclerView
-        xmlns:recycler_view="http://schemas.android.com/apk/res-auto"
-        android:id="@android:id/list"
-        android:theme="@style/Theme.AppCompat.Light"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:background="@color/button_material_light"
-        >
-
-    </android.support.v7.widget.RecyclerView>
-
-    <TextView
-        android:id="@android:id/empty"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:gravity="center"
-        android:visibility="gone"
-        android:text="@string/workflow_run_empty"/>
-
-</FrameLayout>

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/src/main/res/layout/menu_item_layout.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/layout/menu_item_layout.xml b/app/src/main/res/layout/menu_item_layout.xml
deleted file mode 100644
index 08c28f8..0000000
--- a/app/src/main/res/layout/menu_item_layout.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-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.
--->
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:orientation="horizontal"
-    android:layout_width="match_parent"
-    android:layout_height="wrap_content"
-    >
-
-    <ImageView
-        android:layout_width="wrap_content"
-        android:layout_height="match_parent"
-        android:id="@+id/menuIcon"
-        android:src="@drawable/abc_btn_radio_to_on_mtrl_015"
-        android:layout_margin="5dp"
-        android:layout_gravity="top|left"
-        android:accessibilityLiveRegion="polite"
-        android:contentDescription="@string/app_name" />
-
-    <TextView
-        android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:textAppearance="?android:attr/textAppearanceLarge"
-        android:id="@+id/menuItemText"
-        android:hint="@string/action_example"
-        android:layout_margin="5dp" />
-</LinearLayout>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/src/main/res/layout/viewpager_workflow.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/layout/viewpager_workflow.xml b/app/src/main/res/layout/viewpager_workflow.xml
deleted file mode 100644
index a8b72c0..0000000
--- a/app/src/main/res/layout/viewpager_workflow.xml
+++ /dev/null
@@ -1,56 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2015 The Android Open Source Project
-  ~
-  ~ Licensed 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.
-  -->
-
-<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:app="http://schemas.android.com/apk/res-auto"
-    android:id="@+id/main_content"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent">
-
-    <android.support.design.widget.AppBarLayout
-        android:id="@+id/appbar"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        app:layout_scrollFlags="scroll|exitUntilCollapsed"
-        android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
-
-        <android.support.v7.widget.Toolbar
-            android:id="@+id/toolbar"
-            android:layout_width="match_parent"
-            android:layout_height="?attr/actionBarSize"
-            android:background="?attr/colorPrimary"
-            android:paddingTop="@dimen/app_bar_top_padding"
-            app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
-            app:layout_scrollFlags="scroll|enterAlways"
-	        />
-
-        <android.support.design.widget.TabLayout
-            android:id="@+id/mtablayout"
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"/>
-
-    </android.support.design.widget.AppBarLayout>
-
-    <android.support.v4.view.ViewPager
-        android:id="@+id/mviewpager"
-        android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:layout_below="@+id/appbar"
-        android:layout_alignParentRight="true"
-        android:layout_alignParentEnd="true"/>
-
-</RelativeLayout>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/src/main/res/layout/workflow_item_layout.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/layout/workflow_item_layout.xml b/app/src/main/res/layout/workflow_item_layout.xml
deleted file mode 100644
index 01fee20..0000000
--- a/app/src/main/res/layout/workflow_item_layout.xml
+++ /dev/null
@@ -1,173 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-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.
-
--->
-<android.support.v7.widget.CardView
-	xmlns:android="http://schemas.android.com/apk/res/android"
-	xmlns:card_view="http://schemas.android.com/apk/res-auto"
-	xmlns:materialdesign="http://schemas.android.com/apk/res-auto"
-	android:layout_width="match_parent"
-	android:layout_height="wrap_content"
-	card_view:cardBackgroundColor="@color/background_floating_material_light"
-	card_view:cardCornerRadius="2dp"
-	card_view:cardElevation="@dimen/abc_text_size_menu_material"
-	android:layout_marginBottom="@dimen/cardMarginVertical"
-	android:layout_marginLeft="@dimen/cardMarginHorizontal"
-	android:layout_marginRight="@dimen/cardMarginHorizontal"
-	android:layout_marginTop="@dimen/cardMarginVertical"
-	card_view:paddingEnd="2dp"
-	card_view:paddingStart="2dp">
-
-	<LinearLayout
-		android:layout_width="match_parent"
-		android:layout_height="match_parent"
-		android:orientation="vertical">
-
-		<RelativeLayout
-			android:layout_width="fill_parent"
-			android:layout_height="wrap_content"
-			android:padding="10dp">
-
-			<ImageView
-				android:id="@+id/author_profile_image"
-				android:layout_width="116dp"
-				android:layout_height="116dp"
-				android:layout_marginRight="10dp"
-				/>
-
-			<TextView
-				android:id="@+id/workflow_author"
-				android:layout_width="wrap_content"
-				android:layout_height="wrap_content"
-				android:layout_toRightOf="@+id/author_profile_image"
-				android:textSize="16dp"
-				android:hint="@string/workflow_authorhint" />
-
-			<TextView
-				android:id="@+id/workflow_title"
-				android:layout_width="wrap_content"
-				android:layout_height="wrap_content"
-				android:layout_below="@+id/workflow_author"
-				android:layout_marginTop="5dp"
-				android:layout_toRightOf="@+id/author_profile_image"
-				android:textSize="18dp"
-				android:hint="@string/wktitle" />
-
-		</RelativeLayout>
-
-		<LinearLayout
-			android:id="@+id/layoutinfo"
-			android:layout_width="match_parent"
-			android:layout_height="wrap_content"
-			android:dividerPadding="1dp"
-			android:orientation="vertical"
-			android:showDividers="middle|beginning"
-			android:visibility="gone">
-
-			<!-- <TextView
-					android:layout_width="wrap_content"
-					android:layout_height="wrap_content"
-					android:textAppearance="?android:attr/textAppearanceLarge"
-					android:text="@string/created"
-					android:id="@+id/workflow_datecreated"
-					android:gravity="center" />
-
-				<TextView
-					android:layout_width="wrap_content"
-					android:layout_height="wrap_content"
-					android:textAppearance="?android:attr/textAppearanceLarge"
-					android:text="@string/modified"
-					android:id="@+id/workflow_dateupdated"
-					android:layout_gravity="center_vertical"
-					android:gravity="center" />-->
-			<TextView
-				android:id="@+id/workflow_brief_description"
-				android:layout_width="match_parent"
-				android:layout_height="wrap_content"
-				android:layout_gravity="center_vertical"
-				android:hint="@string/description"
-				android:minLines="2"
-				android:textAppearance="?android:attr/textAppearanceLarge"/>
-		</LinearLayout>
-
-		<ImageView
-			android:id="@+id/workflow_image"
-			android:layout_width="match_parent"
-			android:layout_height="wrap_content"
-			android:contentDescription="@string/workflow_component"
-			android:src="@drawable/tavernalogo"
-			android:visibility="gone"/>
-
-		<TextView
-			android:id="@+id/show_more"
-			android:layout_width="match_parent"
-			android:layout_height="wrap_content"
-			android:background="@color/material_deep_teal_200"
-			android:text="@string/abc_activity_chooser_view_see_all"
-			android:textAppearance="?android:attr/textAppearanceLarge"
-			android:typeface="serif"
-			/>
-
-		<LinearLayout
-			android:layout_width="match_parent"
-			android:layout_height="wrap_content"
-			android:layout_margin="10dp">
-
-			<Button
-				android:id="@+id/button_view_workflow"
-				style="android:buttonBarButtonStyle"
-				android:layout_width="wrap_content"
-				android:layout_height="wrap_content"
-				android:layout_marginLeft="3dp"
-				android:layout_weight="0.33"
-				android:background="#33b5e5"
-				android:drawableLeft="@android:drawable/ic_menu_view"
-				android:text="@string/workflow_read"
-				android:textStyle="normal"/>
-
-			<Button
-				android:id="@+id/button_download_workflow"
-				style="android:buttonBarButtonStyle"
-				android:layout_width="wrap_content"
-				android:layout_height="wrap_content"
-				android:layout_marginLeft="2dp"
-				android:layout_marginRight="2dp"
-				android:layout_weight="0.33"
-				android:background="#33b5e5"
-				android:drawableLeft="@drawable/download"
-				android:text="@string/workflow_download"
-				android:textStyle="normal"
-				android:visibility="gone"/>
-
-			<Button
-				android:id="@+id/button_mark_workflow"
-				style="android:buttonBarButtonStyle"
-				android:layout_width="wrap_content"
-				android:layout_height="wrap_content"
-				android:layout_marginLeft="3dp"
-				android:layout_weight="0.33"
-				android:background="#33b5e5"
-				android:drawableLeft="@android:drawable/btn_star_big_off"
-				android:text="@string/workflow_mark"
-				android:textStyle="normal"/>
-		</LinearLayout>
-	</LinearLayout>
-
-</android.support.v7.widget.CardView>

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/src/main/res/layout/workflow_layout.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/layout/workflow_layout.xml b/app/src/main/res/layout/workflow_layout.xml
deleted file mode 100644
index 6bc3160..0000000
--- a/app/src/main/res/layout/workflow_layout.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-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.
--->
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:orientation="vertical"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent">
-
-
-    <android.support.v7.widget.RecyclerView
-        xmlns:recycler_view="http://schemas.android.com/apk/res-auto"
-        android:id="@+id/recycler_list"
-        android:theme="@style/Theme.AppCompat.Light"
-        android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:background="@color/button_material_light">
-
-        </android.support.v7.widget.RecyclerView>
-</LinearLayout>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/src/main/res/layout/workflow_run_item.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/layout/workflow_run_item.xml b/app/src/main/res/layout/workflow_run_item.xml
deleted file mode 100644
index ce05d85..0000000
--- a/app/src/main/res/layout/workflow_run_item.xml
+++ /dev/null
@@ -1,136 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-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.
--->
-<android.support.v7.widget.CardView
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:card_view="http://schemas.android.com/apk/res-auto"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    card_view:cardElevation="5dp"
-    card_view:cardBackgroundColor="@color/background_floating_material_light"
-    card_view:cardCornerRadius="2dp"
-    card_view:paddingEnd="2dp"
-    card_view:paddingStart="2dp" >
-
-    <LinearLayout
-        android:orientation="vertical"
-        android:layout_width="match_parent"
-        android:layout_height="match_parent">
-
-        <TextView
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:textAppearance="?android:attr/textAppearanceLarge"
-            android:text="runtitile"
-            android:id="@+id/runtitle"
-            android:layout_gravity="center_horizontal" />
-
-        <TextView
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:textAppearance="?android:attr/textAppearanceLarge"
-            android:text="author"
-            android:id="@+id/run_authorTextview" />
-
-        <LinearLayout
-            android:orientation="horizontal"
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:layout_margin="5dp">
-
-            <LinearLayout
-                android:orientation="vertical"
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:layout_gravity="center_horizontal"
-                android:layout_weight="1">
-
-                <TextView
-                    android:layout_width="match_parent"
-                    android:layout_height="wrap_content"
-                    android:textAppearance="?android:attr/textAppearanceLarge"
-                    android:text="Started"
-                    android:id="@+id/textView13"
-                    android:layout_gravity="center_vertical" />
-
-                <TextView
-                    android:layout_width="wrap_content"
-                    android:layout_height="wrap_content"
-                    android:textAppearance="?android:attr/textAppearanceMedium"
-                    android:text="now"
-                    android:id="@+id/runstarted" />
-            </LinearLayout>
-
-            <TextView
-                android:layout_width="wrap_content"
-                android:layout_height="match_parent"
-                android:textAppearance="?android:attr/textAppearanceLarge"
-                android:text="|"
-                android:id="@+id/textView14"
-                android:layout_weight="1"
-                android:background="#111" />
-
-            <LinearLayout
-                android:orientation="vertical"
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:layout_gravity="center_horizontal"
-                android:layout_weight="1">
-
-                <TextView
-                    android:layout_width="match_parent"
-                    android:layout_height="wrap_content"
-                    android:textAppearance="?android:attr/textAppearanceLarge"
-                    android:text="Finished"
-                    android:id="@+id/textView15"
-                    android:layout_weight="1" />
-
-                <TextView
-                    android:layout_width="wrap_content"
-                    android:layout_height="wrap_content"
-                    android:textAppearance="?android:attr/textAppearanceMedium"
-                    android:text="later"
-                    android:id="@+id/runfinished" />
-            </LinearLayout>
-        </LinearLayout>
-
-        <LinearLayout
-            android:orientation="horizontal"
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content">
-
-            <ImageButton
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:id="@+id/imageButtonState"
-                android:layout_margin="5dp"
-                android:src="@android:drawable/presence_online"
-                android:background="#fff" />
-
-            <TextView
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:textAppearance="?android:attr/textAppearanceLarge"
-                android:text="State"
-                android:id="@+id/textState" />
-        </LinearLayout>
-    </LinearLayout>
-
-</android.support.v7.widget.CardView>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/src/main/res/menu/run_result.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/menu/run_result.xml b/app/src/main/res/menu/run_result.xml
deleted file mode 100644
index 3e4a309..0000000
--- a/app/src/main/res/menu/run_result.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-<!--
-    Apache Taverna Mobile
-    Copyright 2016 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.
--->
-<menu xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:app="http://schemas.android.com/apk/res-auto"
-    xmlns:tools="http://schemas.android.com/tools"
-    tools:context="org.apache.taverna.mobile.fragments.workflowdetails.RunFragment">
-
-    <item android:id="@+id/action_refresh"
-        android:title="Refresh"
-        app:showAsAction="always|withText"
-        android:icon="@android:drawable/stat_notify_sync"/>
-</menu>

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/src/main/res/values-large/refs.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/values-large/refs.xml b/app/src/main/res/values-large/refs.xml
deleted file mode 100644
index 32bdd10..0000000
--- a/app/src/main/res/values-large/refs.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<!--
-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.
--->
-<resources>
-
-    <!--
-    Layout alias to replace the single-pane version of the layout with a
-    two-pane version on Large screens.
-
-    For more on layout aliases, see:
-    http://developer.android.com/training/multiscreen/screensizes.html#TaskUseAliasFilters
-    -->
-    <item name="fragment_item" type="layout">@layout/fragment_item_grid</item>
-
-</resources>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/src/main/res/values-large/strings.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/values-large/strings.xml b/app/src/main/res/values-large/strings.xml
deleted file mode 100644
index 04157a7..0000000
--- a/app/src/main/res/values-large/strings.xml
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-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.
--->
-<resources>
-    <string name="completebrand">Powered By Apache Taverna</string>
-    <string name="play_workflow">Run</string>
-    <string name="usage_login_accounts">When the app is started you are initially prompted with an accounts page to login. Use Your myExperiment account to login. You will need to configure a Taverna player account in the settings when you have successfully logged-in to the app. you can also choose to remain logged-in or not from the login page.</string>
-    <string name="usage_dashboard">Usage | Dashboard</string>
-    <string name="usage_dashboard_Text">Once logged-in to the app, a stream of workflows appears as a stream from which you could view, mark workflows for offline viewing. There are two tabs on the dashboard, the second tab presents a list of marked workflows. there is a menu button the pulls out a navigation drawer menu from the left corner of the dashboard. You can also swipe finger from the extreme left of the screen to pull out the menu. Scrolling to the bottom of the workflow screen will load more workflows. You can pull down to refresh workflows for the initial workflow list. the search bar is used to fetch amongst currently loaded workflows.</string>
-    <string name="usage_menus">Usage | Menus</string>
-
-    <string name="usage_menu_Text">The navigation drawer brings up a menu. The workflow menu item allows one to quickly return to the workflow streams page from any screen. The \'Open Workflow\' item allows users to pick a valid workflow from external storage and run it against a Taverna Server through a Taverna Player. Settings allow user to configure player accounts and portal urls. Logout allows users to log-out of the app</string>
-    <string name="usage_detail">Usage | Workfow Detail</string>
-    <string name="usage_detail_text">The details screen allows users to run particular worklows and provides detailed information about the workflows. Workflows can also be downloaded from here. Workflows can also be marked from this screen which would save much more data for offline use than on the dashboard screen. This screen also provides a set of runs for the workflow from other users</string>
-
-</resources>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/src/main/res/values-sw600dp/refs.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/values-sw600dp/refs.xml b/app/src/main/res/values-sw600dp/refs.xml
deleted file mode 100644
index 32bdd10..0000000
--- a/app/src/main/res/values-sw600dp/refs.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<!--
-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.
--->
-<resources>
-
-    <!--
-    Layout alias to replace the single-pane version of the layout with a
-    two-pane version on Large screens.
-
-    For more on layout aliases, see:
-    http://developer.android.com/training/multiscreen/screensizes.html#TaskUseAliasFilters
-    -->
-    <item name="fragment_item" type="layout">@layout/fragment_item_grid</item>
-
-</resources>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/src/main/res/values-sw600dp/strings.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/values-sw600dp/strings.xml b/app/src/main/res/values-sw600dp/strings.xml
deleted file mode 100644
index acbb78f..0000000
--- a/app/src/main/res/values-sw600dp/strings.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-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.
--->
-<resources>
-    <string name="completebrand">Powered By Apache Taverna</string>
-    <string name="usage_login_accounts">When the app is started you are initially prompted with an accounts page to login. Use Your myExperiment account to login. You will need to configure a Taverna player account in the settings when you have successfully logged-in to the app. you can also choose to remain logged-in or not from the login page.</string>
-    <string name="usage_dashboard">Usage | Dashboard</string>
-</resources>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/src/main/res/values-w820dp/strings.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/values-w820dp/strings.xml b/app/src/main/res/values-w820dp/strings.xml
deleted file mode 100644
index 0abd9c2..0000000
--- a/app/src/main/res/values-w820dp/strings.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-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.
--->
-<resources>
-    <string name="completebrand">Powered By Apache Taverna</string>
-    <string name="usage_login_accounts">When the app is started you are initially prompted with an accounts page to login. Use Your myExperiment account to login. You will need to configure a Taverna player account in the settings when you have successfully logged-in to the app. you can also choose to remain logged-in or not from the login page.</string>
-    <string name="usage_dashboard">Usage | Dashboard</string>
-    <string name="usage_menu_Text">The navigation drawer brings up a menu. The workflow menu item allows one to quickly return to the workflow streams page from any screen. The \'Open Workflow\' item allows users to pick a valid workflow from external storage and run it against a Taverna Server through a Taverna Player. Settings allow user to configure player accounts and portal urls. Logout allows users to log-out of the app</string>
-    <string name="usage_detail">Usage | Workfow Detail</string>
-    <string name="usage_detail_text">The details screen allows users to run particular worklows and provides detailed information about the workflows. Workflows can also be downloaded from here. Workflows can also be marked from this screen which would save much more data for offline use than on the dashboard screen. This screen also provides a set of runs for the workflow from other users</string>
-</resources>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/src/main/res/values/refs.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/values/refs.xml b/app/src/main/res/values/refs.xml
deleted file mode 100644
index 5315aa8..0000000
--- a/app/src/main/res/values/refs.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<!--
-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.
--->
-<resources>
-
-    <!--
-    Layout alias to replace the single-pane version of the layout with a
-    two-pane version on Large screens.
-
-    For more on layout aliases, see:
-    http://developer.android.com/training/multiscreen/screensizes.html#TaskUseAliasFilters
-    -->
-    <item name="fragment_item" type="layout">@layout/fragment_item_list</item>
-
-</resources>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/src/main/res/values/strings.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index fe0ef68..be96d13 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -181,4 +181,26 @@ limitations under the License.
     <string name="please_wait">Please Wait ...</string>
     <string name="headline_taverna_player_portal_login">Taverna Player Portal Login</string>
     <string name="button_text_login">Login</string>
+
+
+    <string name="title_activity_settings">Settings</string>
+
+    <!-- Strings related to Settings -->
+
+    <string name="pref_header_general">General</string>
+
+    <!-- Login status info-->
+    <string name="pref_remainLogged_in">Remain Logged-in</string>
+    <string name="pref_login_description">Decide whether or not to be automatically logged-in when the app starts</string>
+    <!-- Player Portal url info -->
+    <string name="pref_player_default"> http://heater.cs.man.ac.uk:3000/</string>   <!-- default value -->
+    <string name="pref_player_title">Configure Taverna player portal</string>
+    <string name="pref_player_des">Configure a different player URL for the app to use. End with the mount point(/)</string>
+
+    <!-- Server Portal url info -->
+    <string name="pref_server_default"> http://heater.cs.man.ac.uk:8090/</string>   <!-- default value -->
+    <string name="pref_server_title">Configure Taverna Server </string>
+    <string name="pref_server_des">Configure a different Taverna Server for the app</string>
+
+    <!-- Strings related to Settings -->
 </resources>

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/src/main/res/values/strings_activity_settings.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/values/strings_activity_settings.xml b/app/src/main/res/values/strings_activity_settings.xml
deleted file mode 100644
index 2744a15..0000000
--- a/app/src/main/res/values/strings_activity_settings.xml
+++ /dev/null
@@ -1,46 +0,0 @@
-<!--
-    Apache Taverna Mobile
-    Copyright 2016 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.
--->
-<resources>
-    <string name="title_activity_settings">Settings</string>
-
-    <!-- Strings related to Settings -->
-
-    <!-- Example General settings -->
-    <string name="pref_header_general">General</string>
-
-    <!-- Login status info-->
-    <string name="pref_remainLogged_in">Remain Logged-in</string>
-    <string name="pref_login_description">Decide whether or not to be automatically logged-in when the app starts</string>
-    <!-- Player Portal url info -->
-    <string name="pref_player_default"> http://heater.cs.man.ac.uk:3000/</string>   <!-- default value -->
-    <string name="pref_player_title">Configure Taverna player portal</string>
-    <string name="pref_player_des">Configure a different player URL for the app to use. End with the mount point(/)</string>
-
-    <!-- Server Portal url info -->
-    <string name="pref_server_default"> http://heater.cs.man.ac.uk:8090/</string>   <!-- default value -->
-    <string name="pref_server_title">Configure Taverna Server </string>
-    <string name="pref_server_des">Configure a different Taverna Server for the app</string>
-
-</resources>


[7/7] incubator-taverna-mobile git commit: remove checkstyle and PMD error

Posted by sa...@apache.org.
remove checkstyle and PMD 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/ed7298ff
Tree: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/tree/ed7298ff
Diff: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/diff/ed7298ff

Branch: refs/heads/master
Commit: ed7298ffa388069f9cba2eec53e0688ac65af97b
Parents: 22d058d
Author: Sagar <ku...@gmail.com>
Authored: Tue Oct 18 19:54:19 2016 +0530
Committer: Sagar <ku...@gmail.com>
Committed: Tue Oct 18 19:54:19 2016 +0530

----------------------------------------------------------------------
 .../mobile/data/model/licence/LicenceContent.java       |  3 ---
 .../taverna/mobile/ui/licence/LicenceFragment.java      | 12 ++++++------
 2 files changed, 6 insertions(+), 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/ed7298ff/app/src/main/java/org/apache/taverna/mobile/data/model/licence/LicenceContent.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/data/model/licence/LicenceContent.java b/app/src/main/java/org/apache/taverna/mobile/data/model/licence/LicenceContent.java
index a3e93ba..74b2d42 100644
--- a/app/src/main/java/org/apache/taverna/mobile/data/model/licence/LicenceContent.java
+++ b/app/src/main/java/org/apache/taverna/mobile/data/model/licence/LicenceContent.java
@@ -1,8 +1,5 @@
 package org.apache.taverna.mobile.data.model.licence;
 
-import com.google.gson.annotations.SerializedName;
-
-
 public class LicenceContent {
 
     private String name;

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/ed7298ff/app/src/main/java/org/apache/taverna/mobile/ui/licence/LicenceFragment.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/ui/licence/LicenceFragment.java b/app/src/main/java/org/apache/taverna/mobile/ui/licence/LicenceFragment.java
index e8cc856..19ac78f 100644
--- a/app/src/main/java/org/apache/taverna/mobile/ui/licence/LicenceFragment.java
+++ b/app/src/main/java/org/apache/taverna/mobile/ui/licence/LicenceFragment.java
@@ -24,6 +24,7 @@ import android.support.annotation.Nullable;
 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;
@@ -37,7 +38,6 @@ import org.apache.taverna.mobile.ui.adapter.LicenceRecyclerViewAdapter;
 
 import java.io.IOException;
 import java.io.InputStream;
-import java.lang.reflect.Type;
 import java.util.List;
 
 /**
@@ -46,7 +46,7 @@ import java.util.List;
 public class LicenceFragment extends Fragment {
 
 
-    //private List<LicenceContent> itemList;
+    private static final String TAG = LicenceFragment.class.getSimpleName();
 
     private Gson gson;
 
@@ -91,12 +91,12 @@ public class LicenceFragment extends Fragment {
             is.close();
             json = new String(buffer, "UTF-8");
         } catch (IOException ex) {
-            ex.printStackTrace();
+            Log.i(TAG, IOException.class.getSimpleName());
             return null;
         }
-        Type type = new TypeToken<List<LicenceContent>>() {
-        }.getType();
-        itemList = gson.fromJson(json, type);
+        TypeToken<List<LicenceContent>> typeToken = new TypeToken<List<LicenceContent>>() {
+        };
+        itemList = gson.fromJson(json, typeToken.getType());
 
         return itemList;
     }


[5/7] incubator-taverna-mobile git commit: clear codebase

Posted by sa...@apache.org.
clear codebase


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

Branch: refs/heads/master
Commit: b93d871c7e94541d6f2fd2da3f56279aa61e23f0
Parents: c850e05
Author: Sagar <ku...@gmail.com>
Authored: Tue Oct 18 17:22:25 2016 +0530
Committer: Sagar <ku...@gmail.com>
Committed: Tue Oct 18 19:13:36 2016 +0530

----------------------------------------------------------------------
 app/libs/dropbox-android-sdk-1.6.3.jar          | Bin 168350 -> 0 bytes
 app/libs/json_simple-1.1.jar                    | Bin 16046 -> 0 bytes
 app/libs/sjxp-2.2.jar                           | Bin 24390 -> 0 bytes
 .../taverna/mobile/activities/RunResult.java    |  56 --
 .../activities/WorkflowDetailActivity.java      | 142 ----
 .../adapters/FavoriteWorkflowAdapter.java       | 198 -----
 .../taverna/mobile/adapters/RunAdapter.java     | 158 ----
 .../mobile/adapters/SliderMenuAdapter.java      | 114 ---
 .../mobile/adapters/WorkflowAdapter.java        | 352 --------
 .../WorkflowDownloadReceiver.java               |  66 --
 .../customviews/WorkflowPreviewImageView.java   | 277 -------
 .../mobile/fragments/FavoriteFragment.java      | 228 ------
 .../mobile/fragments/WorkflowItemFragment.java  | 492 -----------
 .../mobile/fragments/WorkflowViewpager.java     | 140 ----
 .../fragments/workflowdetails/RunFragment.java  | 321 --------
 .../workflowdetails/WorkflowAboutFragment.java  |  87 --
 .../WorkflowLicenceFragment.java                |  93 ---
 .../WorkflowRunHistoryFragment.java             | 172 ----
 .../workflowdetails/WorkflowdetailFragment.java | 811 -------------------
 .../taverna/mobile/tavernamobile/Runs.java      | 113 ---
 .../mobile/tavernamobile/TavernaPlayerAPI.java  | 107 ---
 .../taverna/mobile/tavernamobile/User.java      | 171 ----
 .../taverna/mobile/tavernamobile/Workflow.java  | 361 ---------
 .../mobile/tavernamobile/WorkflowComponent.java |  36 -
 .../taverna/mobile/utils/AvatarLoader.java      |  84 --
 .../apache/taverna/mobile/utils/DBUtility.java  |  65 --
 .../taverna/mobile/utils/DetailsLoader.java     | 280 -------
 .../apache/taverna/mobile/utils/HttpUtil.java   | 108 ---
 .../apache/taverna/mobile/utils/RunTask.java    | 124 ---
 .../apache/taverna/mobile/utils/WorkflowDB.java | 328 --------
 .../mobile/utils/WorkflowDataCallback.java      |  39 -
 .../mobile/utils/WorkflowDownloadManager.java   | 118 ---
 .../taverna/mobile/utils/WorkflowLoader.java    | 106 ---
 .../mobile/utils/WorkflowLoaderMain.java        |  45 -
 .../taverna/mobile/utils/WorkflowOpen.java      | 339 --------
 .../utils/xmlparsers/AvatarXMLParser.java       |  47 --
 .../xmlparsers/MyExperimentXmlParserRules.java  | 380 ---------
 .../utils/xmlparsers/WorkflowDetailParser.java  |  56 --
 .../mobile/utils/xmlparsers/WorkflowParser.java |  52 --
 app/src/main/res/layout/activity_run_result.xml |  28 -
 .../res/layout/activity_workflow_detail.xml     |  39 -
 .../main/res/layout/favorite_item_layout.xml    | 138 ----
 .../main/res/layout/fragment_dashboard_main.xml |  39 -
 app/src/main/res/layout/fragment_item_grid.xml  |  51 --
 app/src/main/res/layout/fragment_item_list.xml  |  50 --
 app/src/main/res/layout/fragment_run_result.xml | 164 ----
 .../main/res/layout/fragment_workflow_about.xml |  39 -
 .../res/layout/fragment_workflow_detail.xml     | 190 -----
 .../res/layout/fragment_workflow_licence.xml    |  39 -
 .../layout/fragment_workflow_run_history.xml    |  44 -
 app/src/main/res/layout/menu_item_layout.xml    |  44 -
 app/src/main/res/layout/viewpager_workflow.xml  |  56 --
 .../main/res/layout/workflow_item_layout.xml    | 173 ----
 app/src/main/res/layout/workflow_layout.xml     |  36 -
 app/src/main/res/layout/workflow_run_item.xml   | 136 ----
 app/src/main/res/menu/run_result.xml            |  34 -
 app/src/main/res/values-large/refs.xml          |  31 -
 app/src/main/res/values-large/strings.xml       |  33 -
 app/src/main/res/values-sw600dp/refs.xml        |  31 -
 app/src/main/res/values-sw600dp/strings.xml     |  25 -
 app/src/main/res/values-w820dp/strings.xml      |  28 -
 app/src/main/res/values/refs.xml                |  31 -
 app/src/main/res/values/strings.xml             |  22 +
 .../res/values/strings_activity_settings.xml    |  46 --
 64 files changed, 22 insertions(+), 8191 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/libs/dropbox-android-sdk-1.6.3.jar
----------------------------------------------------------------------
diff --git a/app/libs/dropbox-android-sdk-1.6.3.jar b/app/libs/dropbox-android-sdk-1.6.3.jar
deleted file mode 100644
index 1a0ee36..0000000
Binary files a/app/libs/dropbox-android-sdk-1.6.3.jar and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/libs/json_simple-1.1.jar
----------------------------------------------------------------------
diff --git a/app/libs/json_simple-1.1.jar b/app/libs/json_simple-1.1.jar
deleted file mode 100644
index f395f41..0000000
Binary files a/app/libs/json_simple-1.1.jar and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/libs/sjxp-2.2.jar
----------------------------------------------------------------------
diff --git a/app/libs/sjxp-2.2.jar b/app/libs/sjxp-2.2.jar
deleted file mode 100644
index 67960bc..0000000
Binary files a/app/libs/sjxp-2.2.jar and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index 8034706..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/activities/RunResult.java
+++ /dev/null
@@ -1,56 +0,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.
- */
-package org.apache.taverna.mobile.activities;
-
-import android.os.Bundle;
-import android.support.v7.app.AppCompatActivity;
-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 AppCompatActivity {
-
-    @Override
-    protected void onCreate(Bundle savedInstanceState) {
-        super.onCreate(savedInstanceState);
-        setContentView(R.layout.activity_run_result);
-        if (savedInstanceState == null) {
-            getSupportFragmentManager().beginTransaction()
-                    .add(R.id.container, RunFragment.newInstance())
-                    .commit();
-        }
-    }
-
-    @Override
-    public boolean onCreateOptionsMenu(Menu menu) {
-        // Inflate the menu; this adds items to the action bar if it is present.
-        return false;
-    }
-
-    @Override
-    public boolean onOptionsItemSelected(MenuItem item) {
-
-        this.finish();
-
-        return super.onOptionsItemSelected(item);
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index 2ee4384..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/activities/WorkflowDetailActivity.java
+++ /dev/null
@@ -1,142 +0,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.
- */
-package org.apache.taverna.mobile.activities;
-
-
-import android.os.Bundle;
-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.AppCompatActivity;
-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 AppCompatActivity {
-
-    /**
-     * The {@link android.support.v4.view.PagerAdapter} that will provide
-     * fragments for each of the sections. We use a
-     * {@link FragmentPagerAdapter} derivative, which will keep every
-     * loaded fragment in memory. If this becomes too memory intensive, it
-     * may be best to switch to a
-     * {@link android.support.v4.app.FragmentStatePagerAdapter}.
-     */
-    SectionsPagerAdapter mSectionsPagerAdapter;
-
-    /**
-     * The {@link ViewPager} that will host the section contents.
-     */
-    ViewPager mViewPager;
-
-    @Override
-    protected void onCreate(Bundle savedInstanceState) {
-        super.onCreate(savedInstanceState);
-        setContentView(R.layout.activity_workflow_detail);
-        // Create the adapter that will return a fragment for each of the three
-        // primary sections of the activity.
-        mSectionsPagerAdapter = new SectionsPagerAdapter(getSupportFragmentManager());
-
-        // Set up the ViewPager with the sections adapter.
-        mViewPager = (ViewPager) findViewById(R.id.pager);
-        if (mViewPager != null) {
-            mViewPager.setAdapter(mSectionsPagerAdapter);
-        }
-    }
-
-    @Override
-    public boolean onCreateOptionsMenu(Menu menu) {
-        return false;
-    }
-
-    @Override
-    public boolean onOptionsItemSelected(MenuItem item) {
-        // Handle action bar item clicks here. The action bar will
-        if (item.getItemId() == android.R.id.home) {
-            finish();
-            this.overridePendingTransition(android.R.anim.fade_in, android.R.anim.slide_out_right);
-        }
-        return super.onOptionsItemSelected(item);
-    }
-
-    @Override
-    public void onBackPressed() {
-        finish();
-        this.overridePendingTransition(android.R.anim.fade_in, android.R.anim.slide_out_right);
-    }
-
-    /**
-     * A {@link FragmentPagerAdapter} that returns a fragment corresponding to
-     * one of the sections/tabs/pages.
-     */
-    public class SectionsPagerAdapter extends FragmentPagerAdapter {
-
-        public SectionsPagerAdapter(FragmentManager fm) {
-            super(fm);
-        }
-
-        @Override
-        public Fragment getItem(int position) {
-            switch (position + 1) {
-                case 1:
-                    return WorkflowdetailFragment.newInstance(position + 1);
-                case 2:
-                    //System.out.println(""+getIntent().getStringExtra("wtitle"));
-                    return WorkflowRunHistoryFragment.newInstance(getIntent().getStringExtra
-                            ("wtitle"));
-                case 3:
-                    return WorkflowLicenceFragment.newInstance("", "");
-                case 4:
-                    return WorkflowAboutFragment.newInstance("", "");
-            }
-            return WorkflowdetailFragment.newInstance(position + 1);
-        }
-
-        @Override
-        public int getCount() {
-            // Show 4 total pages.
-            return 3;
-        }
-
-        @Override
-        public CharSequence getPageTitle(int position) {
-            Locale l = Locale.getDefault();
-            switch (position) {
-                case 0:
-                    return getString(R.string.detail_title_section1).toUpperCase(l);
-                case 1:
-                    return getString(R.string.detail_title_section2).toUpperCase(l);
-                case 2:
-                    return getString(R.string.detail_title_section3).toUpperCase(l);
-                case 3:
-                    return getString(R.string.detail_title_section4).toUpperCase(l);
-            }
-            return "";
-        }
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index 9522a3a..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/adapters/FavoriteWorkflowAdapter.java
+++ /dev/null
@@ -1,198 +0,0 @@
-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
- * 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.utils.WorkflowDB;
-import org.json.JSONException;
-
-import android.app.Dialog;
-import android.content.Context;
-import android.content.SharedPreferences;
-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;
-import android.widget.Button;
-import android.widget.ImageView;
-import android.widget.TextView;
-import android.widget.Toast;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
-/**
- * Created by Larry Akah on 6/9/15.
- */
-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;
-
-    public FavoriteWorkflowAdapter(Context c, List<ArrayList<Object>> data) {
-        context = c;
-        dataSet = data;
-        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);
-        FViewHolder vh = new FViewHolder(itemview);
-        return vh;
-    }
-
-    /**
-     * Register a new observer to listen for data changes.
-     * <p/>
-     * <p>The adapter may publish a variety of events describing specific changes.
-     * Not all adapters may support all change types and some may fall back to a generic
-     * {@link android.support.v7.widget.RecyclerView.AdapterDataObserver#onChanged()
-     * "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)
-     * unregistering} those observers when finished.</p>
-     *
-     * @param observer Observer to register
-     * @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/>
-     * <p>The unregistered observer will no longer receive events about changes
-     * to the adapter.</p>
-     *
-     * @param observer Observer to unregister
-     * @see #registerAdapterDataObserver(android.support.v7.widget.RecyclerView.AdapterDataObserver)
-     */
-    @Override
-    public void unregisterAdapterDataObserver(RecyclerView.AdapterDataObserver observer) {
-        super.unregisterAdapterDataObserver(observer);
-    }
-
-    @Override
-    public void onBindViewHolder(FViewHolder fViewHolder, int i) {
-        //get data 0,1,3 from set;
-        final ArrayList<Object> data = dataSet.get(i);
-
-        //String[] mdata = dataSet.get(i);
-        fViewHolder.author.setText((CharSequence) data.get(6));
-        fViewHolder.title.setText((CharSequence) data.get(2));
-        fViewHolder.dateMarked.setText((CharSequence) data.get(4));
-        fViewHolder.btn_delete.setOnClickListener(new FloatingActionButton.OnClickListener() {
-            @Override
-            public void onClick(View view) {
-                try {
-                    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) {
-                    Log.e(TAG, "onClick: ", e);
-                } catch (Exception ex) {
-                    Log.e(TAG, "onClick: ", ex);
-                }
-
-            }
-        });
-        fViewHolder.btn_view_fav.setOnClickListener(new View.OnClickListener() {
-            @Override
-            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);
-                textView.setText(text);
-                textView.setTextSize(22);
-                textView.setTextColor(Color.BLACK);
-                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)) {
-                charsequence[i] = '0';
-                break;
-            }
-        }
-        sharedPreferences.edit().putString(WorkflowAdapter.FAVORITE_LIST_DB, Arrays.toString
-                (charsequence)
-        ).apply();
-    }
-
-    @Override
-    public int getItemCount() {
-        return dataSet.size();
-    }
-
-    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 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_view_fav = (Button) itemView.findViewById(R.id.buttonOpenFavorite);
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index b6a0e23..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/adapters/RunAdapter.java
+++ /dev/null
@@ -1,158 +0,0 @@
-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
- * 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.tavernamobile.Runs;
-
-import android.content.Context;
-import android.support.v7.widget.RecyclerView;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.ImageButton;
-import android.widget.TextView;
-
-import java.util.List;
-
-
-/**
- * Created by root on 6/14/15.
- */
-public class RunAdapter extends RecyclerView.Adapter<RunAdapter.RunHolder> {
-    private Context context;
-    private List<Runs> runList;
-
-    public RunAdapter(Context context, List<Runs> runs) {
-        this.context = context;
-        this.runList = runs;
-    }
-
-    /**
-     * 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
-     * of the given type. You can either create a new View manually or inflate it from an XML
-     * layout file.
-     * <p/>
-     * The new ViewHolder will be used to display items of the adapter using
-     * . Since it will be re-used to display different
-     * items in the data set, it is a good idea to cache references to sub views of the View to
-     * avoid unnecessary {@link android.view.View#findViewById(int)} calls.
-     *
-     * @param parent   The ViewGroup into which the new View will be added after it is bound to
-     *                 an adapter position.
-     * @param viewType The view type of the new View.
-     * @return A new ViewHolder that holds a View of the given view type.
-     * @see #getItemViewType(int)
-     */
-    @Override
-    public RunHolder onCreateViewHolder(ViewGroup parent, int viewType) {
-        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
-     * the given position.
-     * <p/>
-     * Note that unlike {@link android.widget.ListView}, RecyclerView will not call this
-     * method again if the position of the item changes in the data set unless the item itself
-     * 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
-     * the updated adapter position.
-     *
-     * @param holder   The ViewHolder which should be updated to represent the contents of the
-     *                 item at the given position in the data set.
-     * @param position The position of the item within the adapter's data set.
-     */
-    @Override
-    public void onBindViewHolder(RunHolder holder, int position) {
-        Runs lRun = runList.get(position);
-        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);
-                holder.textState.setText("Running");
-                break;
-            case FINISHED:
-                holder.runStatus.setImageResource(android.R.drawable.presence_online);
-                holder.textState.setText("Finished");
-                break;
-            case FAILED:
-                holder.runStatus.setImageResource(android.R.drawable.presence_offline);
-                holder.textState.setText("Failed");
-                break;
-        }
-
-    }
-
-    public List<Runs> getRunList() {
-        return this.runList;
-    }
-
-    public void setRunList(List<Runs> runList) {
-        this.runList = runList;
-    }
-
-    /**
-     * Returns the total number of items in the data set hold by the adapter.
-     *
-     * @return The total number of items in this adapter.
-     */
-    @Override
-    public int getItemCount() {
-        //return 0;
-        return runList.size();
-    }
-
-    public static class RunHolder extends RecyclerView.ViewHolder {
-        public final TextView runtitle, runstarted, runfinished, textState, runAuthor;
-        public final ImageButton runStatus;
-
-        public RunHolder(View itemView) {
-            super(itemView);
-            runtitle = (TextView) itemView.findViewById(R.id.runtitle);
-            runAuthor = (TextView) itemView.findViewById(R.id.run_authorTextview);
-            runstarted = (TextView) itemView.findViewById(R.id.runstarted);
-            runfinished = (TextView) itemView.findViewById(R.id.runfinished);
-            runStatus = (ImageButton) itemView.findViewById(R.id.imageButtonState);
-            textState = (TextView) itemView.findViewById(R.id.textState);
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index 5a4bbc2..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/adapters/SliderMenuAdapter.java
+++ /dev/null
@@ -1,114 +0,0 @@
-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
- * 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 android.content.Context;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.BaseAdapter;
-import android.widget.ImageView;
-import android.widget.TextView;
-
-import java.util.List;
-
-/**
- * Created by root on 6/7/15.
- */
-public class SliderMenuAdapter extends BaseAdapter {
-
-    private List<String> dataItems;
-    private Context context;
-
-    public SliderMenuAdapter(Context c, List<String> items) {
-        dataItems = items;
-        context = c;
-    }
-
-    @Override
-    public int getCount() {
-        return dataItems.size();
-    }
-
-    @Override
-    public String getItem(int i) {
-        return dataItems.get(i);
-    }
-
-    @Override
-    public long getItemId(int i) {
-        return 0;
-    }
-
-    @Override
-    public View getView(int i, View view, ViewGroup viewGroup) {
-
-        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) {
-            case 1:
-                menuicon.setImageResource(R.mipmap.ic_dashboard_home);
-                menuitem.setText(dataItems.get(i));
-                break;
-            case 2:
-                menuicon.setImageResource(R.mipmap.ic_openwk);
-                menuitem.setText(dataItems.get(i));
-                break;
-            case 3:
-                menuicon.setImageResource(R.mipmap.ic_usage);
-                menuitem.setText(dataItems.get(i));
-                break;
-            case 4:
-                menuicon.setImageResource(R.mipmap.ic_about);
-                menuitem.setText(dataItems.get(i));
-                break;
-            case 5:
-                menuicon.setImageResource(R.mipmap.ic_workflows);
-                menuitem.setText(dataItems.get(i));
-                break;
-            case 6:
-                menuicon.setImageResource(R.mipmap.ic_logout);
-                menuitem.setText(dataItems.get(i));
-                break;
-        }
-        return menuitemview;
-    }
-
-    public static class ViewHolder {
-        public final ImageView menuicon;
-        public final TextView menuitem;
-
-        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/b93d871c/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
deleted file mode 100644
index 03c28fe..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/adapters/WorkflowAdapter.java
+++ /dev/null
@@ -1,352 +0,0 @@
-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
- * 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 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;
-import android.os.AsyncTask;
-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;
-import android.widget.Button;
-import android.widget.ImageView;
-import android.widget.LinearLayout;
-import android.widget.TextView;
-import android.widget.Toast;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.HttpURLConnection;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-
-/**
- * Created by Larry Akah on 6/8/15.
- */
-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";
-    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;
-    private List<Workflow> workflowList; //workflow data to bind to the UI
-    private WorkflowAdapter.ViewHolder mViewHolder;
-
-    // display in the list.
-    public WorkflowAdapter(Context c, List<Workflow> wk) {
-        context = c;
-        workflowList = wk;
-        favDB = new WorkflowDB(context, WORKFLOW_FAVORITE_KEY);
-    }
-
-    public WorkflowAdapter(Context c) {
-        context = c;
-        workflowList = new ArrayList<Workflow>();
-        favDB = new WorkflowDB(context, WORKFLOW_FAVORITE_KEY);
-    }
-
-    public void addItems(List<Workflow> workflow, int position) throws ClassCastException {
-        //add items to the current list of list
-        //workflowList.add(position,workflow);
-        workflowList.addAll(workflow);
-        notifyItemRangeInserted(position + 24, 25);
-    }
-
-    public void removeItem(Workflow workflow) {
-        workflowList.remove(workflow);
-        //notifyItemRemoved();
-    }
-
-    /**
-     * Register a new observer to listen for data changes.
-     * <p/>
-     * <p>The adapter may publish a variety of events describing specific changes.
-     * Not all adapters may support all change types and some may fall back to a generic
-     * {@link android.support.v7.widget.RecyclerView.AdapterDataObserver#onChanged()
-     * "something changed"} event if more specific data is not available.</p>
-     * <p/>
-     * <p>Components registering observers with an adapter are responsible for
-     * {@link #registerAdapterDataObserver(android.support.v7.widget.RecyclerView
-     * .AdapterDataObserver)
-     * unregistering} those observers when finished.</p>
-     *
-     * @param observer Observer to register
-     * @see #registerAdapterDataObserver(android.support.v7.widget.RecyclerView
-     * .AdapterDataObserver)
-     */
-    @Override
-    public void registerAdapterDataObserver(RecyclerView.AdapterDataObserver observer) {
-        super.registerAdapterDataObserver(observer);
-    }
-
-    /**
-     * Unregister an observer currently listening for data changes.
-     * <p/>
-     * <p>The unregistered observer will no longer receive events about changes
-     * to the adapter.</p>
-     *
-     * @param observer Observer to unregister
-     * @see #registerAdapterDataObserver(android.support.v7.widget.RecyclerView.AdapterDataObserver)
-     */
-    @Override
-    public void unregisterAdapterDataObserver(RecyclerView.AdapterDataObserver observer) {
-        super.unregisterAdapterDataObserver(observer);
-    }
-
-    @Override
-    public WorkflowAdapter.ViewHolder onCreateViewHolder(ViewGroup parentViewGroup, int viewType) {
-        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.
-     */
-    @Override
-    public void onBindViewHolder(final ViewHolder viewHolder, int i) {
-
-        final long wid = workflowList.get(i).getId();
-        final String author = workflowList.get(i).getWorkflowAuthor();
-//        final String author = workflowList.get(i).getUploader().getName();
-        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) + " ...";
-        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();
-        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.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) {
-                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);
-            }
-        });
-
-        viewHolder.btn_mark_workflow.setOnClickListener(new View.OnClickListener() {
-            @Override
-            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(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);
-
-                    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();
-                }
-            }
-        });
-        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) {
-                if (viewHolder.infolayout.getVisibility() == View.GONE) {
-                    viewHolder.infolayout.setVisibility(View.VISIBLE);
-                } else {
-                    viewHolder.infolayout.setVisibility(View.GONE);
-                }
-            }
-        });
-
-        synchronized (this) {
-            new DetailLinkLoader(viewHolder).execute(uri, String.valueOf(i));
-        }
-    }
-
-    public void setData(List<Workflow> workflowList) {
-        this.workflowList = workflowList;
-    }
-
-    @Override
-    public long getItemId(int i) {
-        return workflowList.get(i).getId();
-    }
-
-    @Override
-    public int getItemCount() {
-        return workflowList.size();
-    }
-
-    public Workflow getItem(int position) {
-        return workflowList.get(position);
-    }
-
-    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 Button btn_view_workflow;
-        public final Button btn_download_workflow;
-        public final Button btn_mark_workflow;
-        public final LinearLayout infolayout;
-
-        public ViewHolder(View v) {
-            super(v);
-            infolayout = (LinearLayout) v.findViewById(R.id.layoutinfo);
-            //cache text fields
-            author_profile = (ImageView) v.findViewById(R.id.author_profile_image);
-            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_description = (TextView) v.findViewById(R.id.workflow_brief_description);
-            //cache buttons
-            btn_download_workflow = (Button) v.findViewById(R.id.button_download_workflow);
-            btn_mark_workflow = (Button) v.findViewById(R.id.button_mark_workflow);
-            btn_view_workflow = (Button) v.findViewById(R.id.button_view_workflow);
-        }
-    }
-
-    /**
-     * Loads partially details of a given workflow to retrieve author information
-     */
-    private class DetailLinkLoader extends AsyncTask<String, Void, Void> {
-        ViewHolder mViewHolder;
-
-        public DetailLinkLoader(ViewHolder vh) {
-            this.mViewHolder = vh;
-        }
-
-        @Override
-        protected Void doInBackground(String... strings) {
-            URL url = null;
-            HttpURLConnection connection = null;
-            try {
-                url = new URL(strings[0]); //fetch workflow detail
-                connection = (HttpURLConnection) url.openConnection();
-                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});
-                detailMinParser.parse(input, new User(strings[1], this.mViewHolder));
-
-            } catch (MalformedURLException e) {
-                Log.e(TAG, "doInBackground: ", e);
-            } catch (IOException e) {
-                Log.e(TAG, "doInBackground: ", e);
-            }
-            return null;
-        }
-
-        @Override
-        protected void onPostExecute(Void aVoid) {
-
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index 383f707..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/broadcastreceivers/WorkflowDownloadReceiver.java
+++ /dev/null
@@ -1,66 +0,0 @@
-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
- * 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.utils.WorkflowDownloadManager;
-
-import android.app.DownloadManager;
-import android.content.BroadcastReceiver;
-import android.content.Context;
-import android.content.Intent;
-import android.database.Cursor;
-
-public class WorkflowDownloadReceiver extends BroadcastReceiver {
-    public WorkflowDownloadReceiver() {
-    }
-
-    @Override
-    public void onReceive(Context context, Intent intent) {
-
-        long receivedID = intent.getLongExtra(DownloadManager.EXTRA_DOWNLOAD_ID, -1L);
-        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
-        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));
-
-        if (cur.moveToFirst()) {
-            if (cur.getInt(index) == DownloadManager.STATUS_SUCCESSFUL) {
-                wdm.sendNotification(context.getResources().getString(R.string.downloadcomplete));
-            } else {
-                wdm.sendNotification(context.getResources().getString(R.string.downloadfailed));
-            }
-        } else {
-            wdm.sendNotification(context.getResources().getString(R.string.downloadfailed));
-        }
-        cur.close();
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index 32a9389..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/customviews/WorkflowPreviewImageView.java
+++ /dev/null
@@ -1,277 +0,0 @@
-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
- * 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 android.content.Context;
-import android.graphics.Bitmap;
-import android.graphics.Matrix;
-import android.graphics.PointF;
-import android.util.AttributeSet;
-import android.view.MotionEvent;
-import android.view.ScaleGestureDetector;
-import android.view.View;
-import android.widget.ImageView;
-
-/**
- * Created by Akah Harvey on 6/29/15.
- */
-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();
-    PointF start = new PointF();
-    float minScale = 1f;
-    float maxScale = 4f;
-    float[] m;
-
-    float redundantXSpace, redundantYSpace;
-    float width, height;
-    float saveScale = 1f;
-    float right, bottom, origWidth, origHeight, bmWidth, bmHeight;
-
-    ScaleGestureDetector mScaleDetector;
-    Context context;
-
-    public WorkflowPreviewImageView(Context context, AttributeSet attr) {
-        super(context, attr);
-        super.setClickable(true);
-        this.context = context;
-        mScaleDetector = new ScaleGestureDetector(context, new ScaleListener());
-        matrix.setTranslate(1f, 1f);
-        m = new float[9];
-        setImageMatrix(matrix);
-        setScaleType(ScaleType.MATRIX);
-
-        setOnTouchListener(new OnTouchListener() {
-
-            @Override
-            public boolean onTouch(View v, MotionEvent event) {
-                mScaleDetector.onTouchEvent(event);
-
-                matrix.getValues(m);
-                float x = m[Matrix.MTRANS_X];
-                float y = m[Matrix.MTRANS_Y];
-                PointF curr = new PointF(event.getX(), event.getY());
-
-                switch (event.getAction()) {
-                    //when one finger is touching
-                    //set the mode to DRAG
-                    case MotionEvent.ACTION_DOWN:
-                        last.set(event.getX(), event.getY());
-                        start.set(last);
-                        mode = DRAG;
-                        break;
-                    //when two fingers are touching
-                    //set the mode to ZOOM
-                    case MotionEvent.ACTION_POINTER_DOWN:
-                        last.set(event.getX(), event.getY());
-                        start.set(last);
-                        mode = ZOOM;
-                        break;
-                    //when a finger moves
-                    //If mode is applicable move image
-                    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 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) {
-                                deltaX = 0;
-                                if (y + deltaY > 0) {
-                                    deltaY = -y;
-                                } else if (y + deltaY < -bottom) {
-                                    deltaY = -(y + bottom);
-                                }
-                            } 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) {
-                                    deltaX = -x;
-                                } 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
-                                if (x + deltaX > 0) {
-                                    deltaX = -x;
-                                } else if (x + deltaX < -right) {
-                                    deltaX = -(x + right);
-                                }
-                                if (y + deltaY > 0) {
-                                    deltaY = -y;
-                                } else if (y + deltaY < -bottom) {
-                                    deltaY = -(y + bottom);
-                                }
-                            }
-                            //move the image with the matrix
-                            matrix.postTranslate(deltaX, deltaY);
-                            //set the last touch location to the current
-                            last.set(curr.x, curr.y);
-                        }
-                        break;
-                    //first finger is lifted
-                    case MotionEvent.ACTION_UP:
-                        mode = NONE;
-                        int xDiff = (int) Math.abs(curr.x - start.x);
-                        int yDiff = (int) Math.abs(curr.y - start.y);
-                        if (xDiff < CLICK && yDiff < CLICK)
-                            performClick();
-                        break;
-                    // second finger is lifted
-                    case MotionEvent.ACTION_POINTER_UP:
-                        mode = NONE;
-                        break;
-                }
-                setImageMatrix(matrix);
-                invalidate();
-                return true;
-            }
-
-        });
-    }
-
-    @Override
-    public void setImageBitmap(Bitmap bm) {
-        super.setImageBitmap(bm);
-        bmWidth = bm.getWidth();
-        bmHeight = bm.getHeight();
-    }
-
-    public void setMaxZoom(float x) {
-        maxScale = x;
-    }
-
-    @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) {
-            mode = ZOOM;
-            return true;
-        }
-
-        @Override
-        public boolean onScale(ScaleGestureDetector detector) {
-            float mScaleFactor = detector.getScaleFactor();
-            float origScale = saveScale;
-            saveScale *= mScaleFactor;
-            if (saveScale > maxScale) {
-                saveScale = maxScale;
-                mScaleFactor = maxScale / origScale;
-            } 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) {
-                matrix.postScale(mScaleFactor, mScaleFactor, width / 2, height / 2);
-                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 (y < -bottom) {
-                                matrix.postTranslate(0, -(y + bottom));
-                            } else if (y > 0) {
-                                matrix.postTranslate(0, -y);
-                            }
-                        } else {
-                            if (x < -right) {
-                                matrix.postTranslate(-(x + right), 0);
-                            } else if (x > 0) {
-                                matrix.postTranslate(-x, 0);
-                            }
-                        }
-                    }
-                }
-            } else {
-                matrix.postScale(mScaleFactor, mScaleFactor, detector.getFocusX(), detector
-                        .getFocusY());
-                matrix.getValues(m);
-                float x = m[Matrix.MTRANS_X];
-                float y = m[Matrix.MTRANS_Y];
-                if (mScaleFactor < 1) {
-                    if (x < -right) {
-                        matrix.postTranslate(-(x + right), 0);
-                    } else if (x > 0) {
-                        matrix.postTranslate(-x, 0);
-                    }
-                    if (y < -bottom) {
-                        matrix.postTranslate(0, -(y + bottom));
-                    } else if (y > 0) {
-                        matrix.postTranslate(0, -y);
-                    }
-                }
-            }
-            return true;
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index 3cca379..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/fragments/FavoriteFragment.java
+++ /dev/null
@@ -1,228 +0,0 @@
-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
-* 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.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;
-import android.support.v7.widget.RecyclerView;
-import android.util.Log;
-import android.view.ContextMenu;
-import android.view.LayoutInflater;
-import android.view.MenuItem;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.TextView;
-import android.widget.Toast;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-/**
- * Created by Larry Akah on 6/6/15.
- */
-public class FavoriteFragment extends Fragment implements RecyclerView.OnCreateContextMenuListener {
-    /**
-     * 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;
-    private RecyclerView wFavoriteListView;
-    private RecyclerView.AdapterDataObserver dataObserver;
-
-    public FavoriteFragment() {
-    }
-
-    /**
-     * Returns a new instance of this fragment for the given section
-     * number.
-     */
-    public static FavoriteFragment newInstance(int sectionNumber) {
-        FavoriteFragment fragment = new FavoriteFragment();
-        Bundle args = new Bundle();
-        args.putInt(ARG_SECTION_NUMBER, sectionNumber);
-        fragment.setArguments(args);
-
-        return fragment;
-    }
-
-    @Override
-    public void onCreate(Bundle savedInstanceState) {
-        super.onCreate(savedInstanceState);
-        dataObserver = new RecyclerView.AdapterDataObserver() {
-            @Override
-            public void onChanged() {
-                super.onChanged();
-                // Toast.makeText(getActivity(), "data changed", Toast.LENGTH_SHORT).show();
-                setUpFavoriteData();
-                setUpListView();
-            }
-        };
-        setUpFavoriteData();
-
-    }
-
-    @Override
-    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.setHasFixedSize(true);
-        wFavoriteListView.setLayoutManager(new LinearLayoutManager(getActivity()));
-        wFavoriteListView.setAdapter(favoriteAdapter);
-        return rootView;
-    }
-
-    /**
-     * Prepare the data to be used in the list as favorite items
-     */
-    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) {
-            Log.e(TAG, "setUpFavoriteData: ", e);
-            favoriteAdapter = new FavoriteWorkflowAdapter(getActivity(), Collections
-                    .<ArrayList<Object>>emptyList());
-            favoriteAdapter.registerAdapterDataObserver(dataObserver);
-        }
-    }
-
-    /**
-     * Populate the listview using the adapter
-     */
-    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
-     * time the context menu is about to be shown and should be populated for
-     * the view (or item inside the view for {@link android.widget.AdapterView} subclasses,
-     * this can be found in the {@code menuInfo})).
-     * <p/>
-     * Use {@link #onContextItemSelected(android.view.MenuItem)} to know when an
-     * item has been selected.
-     * <p/>
-     * The default implementation calls up to
-     * {@link android.app.Activity#onCreateContextMenu Activity.onCreateContextMenu}, though
-     * you can not call this implementation if you don't want that behavior.
-     * <p/>
-     * It is not safe to hold onto the context menu after this method returns.
-     * {@inheritDoc}
-     */
-    @Override
-    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);
-        menu.setHeaderTitle("Favorite");
-
-    }
-
-    /**
-     * This hook is called whenever an item in a context menu is selected. The
-     * default implementation simply returns false to have the normal processing
-     * happen (calling the item's Runnable or sending a message to its Handler
-     * as appropriate). You can use this method for any items for which you
-     * would like to do processing without those other facilities.
-     * <p/>
-     * Use {@link android.view.MenuItem#getMenuInfo()} to get extra information set by the
-     * View that added this menu item.
-     * <p/>
-     * Derived classes should call through to the base class for it to perform
-     * the default menu handling.
-     *
-     * @param item The context menu item that was selected.
-     * @return boolean Return false to allow normal context menu processing to
-     * proceed, true to consume it here.
-     */
-    @Override
-    public boolean onContextItemSelected(MenuItem item) {
-        String title = (String) item.getTitle();
-        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();
-            return true;
-        } else {
-            return super.onContextItemSelected(item);
-        }
-    }
-
-    /**
-     * Called when the fragment is visible to the user and actively running.
-     * This is generally
-     * tied to {@link android.app.Activity#onResume() Activity.onResume} of the containing
-     * Activity's lifecycle.
-     */
-    @Override
-    public void onResume() {
-        super.onResume();
-        // setUpListView();
-        //wFavoriteListView.setOnCreateContextMenuListener(this);
-        //registerForContextMenu(wFavoriteListView);
-
-    }
-
-    /**
-     * Called when the fragment is no longer in use.  This is called
-     * after {@link #onStop()} and before {@link #onDetach()}.
-     */
-    @Override
-    public void onDestroy() {
-        super.onDestroy();
-        favoriteAdapter.unregisterAdapterDataObserver(dataObserver);
-        unregisterForContextMenu(wFavoriteListView);
-    }
-
-    /**
-     * Causes the empty textView to be set and become visible
-     */
-    private void setEmptyText() {
-        View emptyView = wFavoriteListView.getChildAt(1);
-        if (emptyView instanceof TextView) {
-            emptyView.setVisibility(View.VISIBLE);
-        }
-    }
-
-}


[4/7] incubator-taverna-mobile git commit: clear codebase

Posted by sa...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index 6b4e89d..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/fragments/WorkflowItemFragment.java
+++ /dev/null
@@ -1,492 +0,0 @@
-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
- * 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.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;
-import android.content.Context;
-import android.graphics.Bitmap;
-import android.graphics.BitmapFactory;
-import android.os.AsyncTask;
-import android.os.Bundle;
-import android.support.v4.app.Fragment;
-import android.support.v4.util.LruCache;
-import android.support.v4.widget.SwipeRefreshLayout;
-import android.support.v7.widget.DefaultItemAnimator;
-import android.support.v7.widget.LinearLayoutManager;
-import android.support.v7.widget.RecyclerView;
-import android.support.v7.widget.SearchView;
-import android.text.TextUtils;
-import android.util.Log;
-import android.view.LayoutInflater;
-import android.view.Menu;
-import android.view.MenuInflater;
-import android.view.MenuItem;
-import android.view.View;
-import android.view.ViewGroup;
-import android.view.animation.Animation;
-import android.view.animation.AnimationUtils;
-import android.widget.ImageView;
-import android.widget.TextView;
-import android.widget.Toast;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.HttpURLConnection;
-import java.net.URL;
-import java.util.List;
-
-/**
- * A fragment representing a list of Items.
- * <p/>
- * Large screen devices (such as tablets) are supported by replacing the ListView
- * with a GridView.
- * <p/>
- */
-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;
-    //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 static View rootView;
-    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
-    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 InfiniteScrollListener scrollListener;
-    private RecyclerView.AdapterDataObserver workflowObserver;
-
-    /**
-     * Mandatory empty constructor for the fragment manager to instantiate the
-     * fragment (e.g. upon screen orientation changes).
-     */
-    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();
-        args.putString(ARG_PARAM1, param1);
-        args.putString(ARG_PARAM2, param2);
-        fragment.setArguments(args);
-        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) {
-                    setIsLoadMoreData(false);
-                    setIsRefreshData(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.getDetailsUri()) == null) {
-                        new AvatarLoader(author.getUserViewHolder()).execute(author
-                                .getDetailsUri(), author.getRowId());
-                    } else {
-                        author.getUserViewHolder().author_profile.setImageBitmap(avatarCache.get
-                                (author.getDetailsUri()));
-//                        ((ImageView) rootView.findViewById(R.id.author_profile_image))
-// .setImageBitmap(avatarCache.get(author.getDetailsUri()));
-                    }
-                    Log.d(TAG, "Author cached ID " + author.getDetailsUri() + "\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.getDetailsUri()).execute(author.getAvatarUrl());
-                new LoadAuthorAvatar(author.getUserViewHolder().author_profile, author
-                        .getDetailsUri()).execute(author.getAvatarUrl());
-            }
-        });
-    }
-
-    @Override
-    public void onCreate(Bundle savedInstanceState) {
-        super.onCreate(savedInstanceState);
-        setHasOptionsMenu(true);
-        setCx(getActivity());
-        mLinearLayoutManager = new LinearLayoutManager(cx);
-        scrollListener = new InfiniteScrollListener();
-        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();
-            }
-        };
-        workflowAdapter = new WorkflowAdapter(getActivity());
-        workflowAdapter.registerAdapterDataObserver(workflowObserver);
-
-        if (getArguments() != null) {
-            mParam1 = getArguments().getString(ARG_PARAM1);
-            mParam2 = getArguments().getString(ARG_PARAM2);
-        }
-        in = AnimationUtils.loadAnimation(getActivity(), android.R.anim.slide_in_left);
-    }
-
-    @Override
-    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle
-            savedInstanceState) {
-        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);
-
-        // Set the adapter
-        mListView = (RecyclerView) rootView.findViewById(android.R.id.list);
-        mListView.setHasFixedSize(true);
-        mListView.setLayoutManager(mLinearLayoutManager);
-        mListView.setAnimation(in);
-        mListView.setAdapter(workflowAdapter);
-        mListView.setOnScrollListener(scrollListener);
-        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
-        final int cacheSize = maxMemory / 8;
-        avatarCache = new LruCache<String, Bitmap>(cacheSize) {
-            @Override
-            protected int sizeOf(String key, Bitmap bitmap) {
-                // The cache size will be measured in kilobytes
-                return bitmap.getByteCount() / 1024;
-            }
-        };
-
-        return rootView;
-    }
-
-    @Override
-    public void onAttach(Activity activity) {
-        super.onAttach(activity);
-        try {
-
-            // ((DashboardMainActivity) activity).onSectionAttached(1);
-        } catch (ClassCastException e) {
-            throw new ClassCastException(activity.toString()
-                    + " must implement OnFragmentInteractionListener");
-        }
-    }
-
-    /**
-     * Called when the view previously created by {@link #onCreateView} has
-     * been detached from the fragment.  The next time the fragment needs
-     * to be displayed, a new view will be created.  This is called
-     * after {@link #onStop()} and before {@link #onDestroy()}.  It is called
-     * <em>regardless</em> of whether {@link #onCreateView} returned a
-     * non-null view.  Internally it is called after the view's state has
-     * been saved but before it has been removed from its parent.
-     */
-    @Override
-    public void onDestroyView() {
-        super.onDestroyView();
-        setRootView(null);
-    }
-
-    @Override
-    public void onResume() {
-        super.onResume();
-        if (!stateOn) {
-            new WorkflowLoader(getActivity(), swipeRefreshLayout).execute("" + currentPage);
-
-            if (mListView.getAdapter().getItemCount() == 0) {
-                mListView.setVisibility(View.GONE);
-                noDataText.setVisibility(View.VISIBLE);
-
-            } else {
-                mListView.setVisibility(View.VISIBLE);
-                noDataText.setVisibility(View.GONE);
-            }
-        }
-//        ((RecyclerView)(getActivity()).findViewById(R.id.favoriteList)).getAdapter()
-// .notifyDataSetChanged();
-    }
-
-    @Override
-    public void onSaveInstanceState(Bundle outState) {
-        super.onSaveInstanceState(outState);
-        stateOn = true;
-    }
-
-    @Override
-    public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
-        super.onCreateOptionsMenu(menu, inflater);
-        //menu.clear();
-        if (menu.size() == 1) {
-            //get the searchview and set the searchable configuration
-            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.setSubmitButtonEnabled(true);
-            searchView.setOnQueryTextListener(this);
-//            searchView.setOnSearchClickListener(this);
-//            searchView.setIconifiedByDefault(false);
-            MenuItem mit = menu.add("Refresh");
-            mit.setIcon(android.R.drawable.stat_notify_sync);
-            mit.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
-        }
-    }
-
-    @Override
-    public boolean onOptionsItemSelected(MenuItem item) {
-        if (item.getTitle().equals("Refresh")) {
-            new WorkflowLoader(getActivity(), swipeRefreshLayout).execute("1");
-            return true;
-        }
-        return super.onOptionsItemSelected(item);
-    }
-
-    @Override
-    public void onDestroy() {
-        super.onDetach();
-        //  workflowAdapter.unregisterAdapterDataObserver(workflowObserver);
-    }
-
-    //handle a request to query for given workflows
-    private void performSearch(String search) {
-        WorkflowAdapter ladapter = new WorkflowAdapter(getActivity());
-        WorkflowAdapter wk = workflowAdapter;
-
-        if (!TextUtils.isEmpty(search)) {
-            if (null != wk)
-                for (int i = 0; i < wk.getItemCount(); i++) {
-                    Workflow workflow = wk.getItem(i);
-                    if (workflow.getWorkflowTitle().toLowerCase().contains(search.toLowerCase())) {
-                        ladapter.addWorkflow(workflow);
-                    }
-                }
-
-            mListView.swapAdapter(ladapter, true);
-            if (ladapter.getItemCount() == 0)
-                Toast.makeText(getActivity(), "No workflows found matching criteria", Toast
-                        .LENGTH_SHORT).show();
-        }
-    }
-
-    @Override
-    public void onRefresh() {
-        setIsRefreshData(true);
-        setIsLoadMoreData(false);
-
-        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
-     *
-     * @param query Search string criteria
-     * @return whether or not user handled request 'manually'
-     */
-    @Override
-    public boolean onQueryTextSubmit(String query) {
-        performSearch(query);
-        return true;
-    }
-
-    @Override
-    public boolean onQueryTextChange(String s) {
-        performSearch(s);
-        return true;
-    }
-
-    /**
-     * Load the Author Avatar from a background Task
-     */
-    private static class LoadAuthorAvatar extends AsyncTask<String, Void, Bitmap> {
-        ImageView img;
-        String row_id_as_key;
-
-        public LoadAuthorAvatar(ImageView imageView, String rowid) {
-            img = imageView;
-            row_id_as_key = rowid;
-        }
-
-        @Override
-        protected Bitmap doInBackground(String... strings) {
-            Bitmap myBitmap = null;
-            try {
-                URL url = new URL(strings[0]);
-                HttpURLConnection connection = null;
-                connection = (HttpURLConnection) url.openConnection();
-                connection.setDoInput(true);
-                connection.connect();
-                InputStream input = connection.getInputStream();
-                myBitmap = BitmapFactory.decodeStream(input);
-                input.close();
-
-            } catch (IOException e) {
-                Log.e(TAG, "doInBackground: ", e);
-            }
-            return myBitmap;
-        }
-
-        @Override
-        protected void onPostExecute(Bitmap bitmap) {
-            img.setImageBitmap(bitmap);
-            //cache this image for faster loading next time
-            try {
-                avatarCache.put(row_id_as_key, bitmap);
-
-            } catch (NullPointerException np) {
-
-            }
-        }
-    }
-
-    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.
-         * <p/>
-         * This callback will also be called if visible item range changes after a layout
-         * calculation. In that case, dx and dy will be 0.
-         *
-         * @param recyclerView The RecyclerView which scrolled.
-         * @param dx           The amount of horizontal scroll.
-         * @param dy           The amount of vertical scroll.
-         */
-        @Override
-        public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
-            super.onScrolled(recyclerView, dx, dy);
-            visibleItemCount = mListView.getChildCount();
-            totalItemCount = mLinearLayoutManager.getItemCount();
-            firstVisibleItem = mLinearLayoutManager.findFirstVisibleItemPosition();
-            if (loading && totalItemCount > previousTotal) {
-                loading = false;
-                previousTotal = totalItemCount;
-            }
-            if (!loading && (totalItemCount - visibleItemCount) <= (firstVisibleItem +
-                    visibleThreshold)) {
-                //list has reached end, load more.
-                Toast.makeText(getActivity(), "Loading more", Toast.LENGTH_SHORT).show();
-                setIsLoadMoreData(true);
-                currentPage++;
-                new WorkflowLoader(getActivity(), swipeRefreshLayout).execute("" + currentPage);
-                Log.d(TAG, currentPage + "");
-                loading = true;
-            }
-        }
-
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index df4b0bc..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/fragments/WorkflowViewpager.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*
-* Apache Taverna Mobile
-* Copyright 2016 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.
-*/
-
-package org.apache.taverna.mobile.fragments;
-
-import org.apache.taverna.mobile.R;
-import org.apache.taverna.mobile.ui.workflow.WorkflowFragment;
-
-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 WorkflowFragment(), 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/b93d871c/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
deleted file mode 100644
index 3f9d57e..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/RunFragment.java
+++ /dev/null
@@ -1,321 +0,0 @@
-/*
-* Apache Taverna Mobile
-* Copyright 2016 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.
-*/
-
-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;
-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;
-import android.view.MenuItem;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.Button;
-import android.widget.ImageButton;
-import android.widget.TextView;
-import android.widget.Toast;
-
-import java.io.BufferedReader;
-import java.io.File;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.net.HttpURLConnection;
-import java.net.URL;
-import java.util.Timer;
-import java.util.TimerTask;
-
-import static org.apache.taverna.mobile.activities.DashboardMainActivity.APP_DIRECTORY_NAME;
-
-/**
- * A simple {@link Fragment} subclass.
- * Use the {@link RunFragment#newInstance} factory method to
- * create an instance of this fragment.
- */
-public class RunFragment extends Fragment implements View.OnClickListener {
-
-    private static final String TAG = "RunFragment";
-    private View rootView;
-    private TextView runIdTextView, runNameTextView;
-    private ImageButton status;
-    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.
-     *
-     * @return A new instance of fragment RunFragment.
-     */
-    public static RunFragment newInstance() {
-        RunFragment fragment = new RunFragment();
-        Bundle args = new Bundle();
-        fragment.setArguments(args);
-        return fragment;
-    }
-
-    @Override
-    public void onCreate(Bundle savedInstanceState) {
-        super.onCreate(savedInstanceState);
-        setHasOptionsMenu(true);
-    }
-
-    @Override
-    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);
-
-        return rootView;
-    }
-
-    @Override
-    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;
-    }
-
-    @Override
-    public void onResume() {
-        super.onResume();
-        String runresult = getActivity().getIntent().getStringExtra("runresult");
-        try {
-            JSONObject resultObject = new JSONObject(runresult);
-            String runName = resultObject.getString("name");
-            run_id = (int) resultObject.get("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);
-
-            if (runState.contains("Pending")) {
-                status.setImageResource(android.R.drawable.presence_busy);
-            } else if (runState.contains("Running")) {
-                status.setImageResource(android.R.drawable.presence_away);
-            } else if (runState.contains("Finished")) {
-                status.setImageResource(android.R.drawable.presence_online);
-            } else if (runState.contains("Failed")) {
-                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());
-
-            downloadOutput.setOnClickListener(this);
-            downloadLogs.setOnClickListener(this);
-            reloadRunResult();
-        } catch (JSONException e) {
-            Log.e(TAG, "onResume: ", e);
-        }
-    }
-
-    @Override
-    public boolean onOptionsItemSelected(MenuItem item) {
-        // Handle action bar item clicks here. The action bar will
-        // automatically handle clicks on the Home/Up button, so long
-        // as you specify a parent activity in AndroidManifest.xml.
-        int id = item.getItemId();
-        if (id == R.id.action_refresh) {
-            reloadRunResult();
-            return true;
-        }
-        if (id == android.R.id.home) {
-            //getActivity().finish();
-            return true;
-        }
-        return super.onOptionsItemSelected(item);
-    }
-
-    private void reloadRunResult() {
-        Timer t = new Timer();
-        // 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()) {
-            case R.id.buttonWorkflowDownloadOutput:
-                try {
-                    Log.d(TAG, "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()).mPlayerRunUrl +
-                                        run_output_url.substring(0, 5));
-                    }
-                } catch (Exception e) {
-                    Log.e(TAG, "onClick: ", e);
-                    Toast.makeText(getActivity(), "Error downloading run output", Toast
-                            .LENGTH_LONG).show();
-                }
-                break;
-            case R.id.downloadRunLogs:
-                try {
-                    Log.d(TAG, "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()).mPlayerRunUrl + run_logs_url
-                                        .substring(0, 5));
-                    }
-                } catch (Exception e) {
-                    Log.e(TAG, "onClick: ", e);
-                    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) {
-                        Log.e(TAG, "run: ", e);
-                    }
-                }
-            });
-    }
-
-    private class RunTimerTask extends TimerTask {
-
-        private Context context;
-        private int runid;
-
-        public RunTimerTask(Context context, int runID) {
-            this.context = context;
-            this.runid = runID;
-        }
-
-        @Override
-        public void run() {
-            //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).mPlayerRunUrl +
-                        this.runid);
-                HttpURLConnection connection = (HttpURLConnection) workflowurl.openConnection();
-
-                connection.setRequestProperty("Accept", "application/json");
-                connection.setRequestMethod("GET");
-                connection.connect(); //send request
-
-                InputStream dis = connection.getInputStream();
-                BufferedReader br = new BufferedReader(new InputStreamReader(dis, "UTF-8"));
-
-                String jsonData = "";
-                while ((jsonData = br.readLine()) != null) {
-                    //json results of the full workflow details
-                    sb.append(jsonData);
-                }
-                dis.close();
-                br.close();
-                connection.disconnect();
-
-                JSONObject runInfo = new JSONObject(sb.toString());
-                updateRun(this.context, runInfo);
-
-            } catch (IOException ex) {
-                Log.e(TAG, "run: ", ex);
-            } catch (JSONException e) {
-                Log.e(TAG, "run: ", e);
-            }
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index 1a8192d..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/WorkflowAboutFragment.java
+++ /dev/null
@@ -1,87 +0,0 @@
-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
- * 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 android.os.Bundle;
-import android.support.v4.app.Fragment;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-
-/**
- * A simple {@link Fragment} subclass.
- * Use the {@link WorkflowAboutFragment#newInstance} factory method to
- * create an instance of this fragment.
- */
-public class WorkflowAboutFragment extends Fragment {
-    // TODO: Rename parameter arguments, choose names that match
-    // the fragment initialization parameters, e.g. ARG_ITEM_NUMBER
-    private static final String ARG_PARAM1 = "param1";
-    private static final String ARG_PARAM2 = "param2";
-
-    // TODO: Rename and change types of parameters
-    private String mParam1;
-    private String mParam2;
-
-    public WorkflowAboutFragment() {
-    }
-
-    /**
-     * Use this factory method to create a new instance of
-     * this fragment using the provided parameters.
-     *
-     * @param param1 Parameter 1.
-     * @param param2 Parameter 2.
-     * @return A new instance of fragment WorkflowAboutFragment.
-     */
-    // TODO: Rename and change types and number of parameters
-    public static WorkflowAboutFragment newInstance(String param1, String param2) {
-        WorkflowAboutFragment fragment = new WorkflowAboutFragment();
-        Bundle args = new Bundle();
-        args.putString(ARG_PARAM1, param1);
-        args.putString(ARG_PARAM2, param2);
-        fragment.setArguments(args);
-        return fragment;
-    }
-
-    @Override
-    public void onCreate(Bundle savedInstanceState) {
-        super.onCreate(savedInstanceState);
-        if (getArguments() != null) {
-            mParam1 = getArguments().getString(ARG_PARAM1);
-            mParam2 = getArguments().getString(ARG_PARAM2);
-        }
-    }
-
-    @Override
-    public View onCreateView(LayoutInflater inflater, ViewGroup container,
-                             Bundle savedInstanceState) {
-        // Inflate the layout for this fragment
-        return inflater.inflate(R.layout.fragment_workflow_about, container, false);
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index a4865b7..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/WorkflowLicenceFragment.java
+++ /dev/null
@@ -1,93 +0,0 @@
-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
- * 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 android.os.Bundle;
-import android.support.v4.app.Fragment;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-
-/**
- * A simple {@link Fragment} subclass.
- * Use the {@link WorkflowLicenceFragment#newInstance} factory method to
- * create an instance of this fragment.
- */
-public class WorkflowLicenceFragment extends Fragment {
-    // TODO: Rename parameter arguments, choose names that match
-    // the fragment initialization parameters, e.g. ARG_ITEM_NUMBER
-    private static final String ARG_PARAM1 = "param1";
-    private static final String ARG_PARAM2 = "param2";
-
-    // TODO: Rename and change types of parameters
-    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.
-     *
-     * @param param1 Parameter 1.
-     * @param param2 Parameter 2.
-     * @return A new instance of fragment WorkflowLicenceFragment.
-     */
-    // TODO: Rename and change types and number of parameters
-    public static WorkflowLicenceFragment newInstance(String param1, String param2) {
-        WorkflowLicenceFragment fragment = new WorkflowLicenceFragment();
-        Bundle args = new Bundle();
-        args.putString(ARG_PARAM1, param1);
-        args.putString(ARG_PARAM2, param2);
-        fragment.setArguments(args);
-        return fragment;
-    }
-
-    @Override
-    public void onCreate(Bundle savedInstanceState) {
-        super.onCreate(savedInstanceState);
-        if (getArguments() != null) {
-            mParam1 = getArguments().getString(ARG_PARAM1);
-            mParam2 = getArguments().getString(ARG_PARAM2);
-        }
-    }
-
-    @Override
-    public View onCreateView(LayoutInflater inflater, ViewGroup container,
-                             Bundle savedInstanceState) {
-        // Inflate the layout for this fragment
-        return inflater.inflate(R.layout.fragment_workflow_licence, container, false);
-    }
-
-    @Override
-    public void onDetach() {
-        super.onDetach();
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index 774a197..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/WorkflowRunHistoryFragment.java
+++ /dev/null
@@ -1,172 +0,0 @@
-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
- * 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.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;
-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;
-import android.widget.TextView;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * A simple {@link Fragment} subclass.
- * Use the {@link WorkflowRunHistoryFragment#newInstance} factory method to
- * create an instance of this fragment.
- */
-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
-    List<Runs> runsList;
-    private ProgressDialog progressDialog;
-    private RecyclerView mRecyclerView;
-    private TextView emptyRunHistoryTextView;
-    private RunAdapter runAdapter;
-
-    public WorkflowRunHistoryFragment() {
-        // Required empty public constructor
-    }
-
-    /**
-     * Use this factory method to create a new instance of
-     * this fragment using the provided parameters.
-     *
-     * @param param2 Parameter 2.
-     * @return A new instance of fragment WorkflowRunHistoryFragment.
-     */
-    public static WorkflowRunHistoryFragment newInstance(String param2) {
-        WorkflowRunHistoryFragment fragment = new WorkflowRunHistoryFragment();
-        Bundle args = new Bundle();
-        workflowID = param2;
-        args.putString(ARG_PARAM2, param2);
-        fragment.setArguments(args);
-        return fragment;
-    }
-
-    @Override
-    public void onCreate(Bundle savedInstanceState) {
-        super.onCreate(savedInstanceState);
-        runsList = new ArrayList<Runs>();
-/*        runsList.add(new Runs("Test Run1 ",
-                SimpleDateFormat.getDateTimeInstance().format(new Date()).toString()
-                ,SimpleDateFormat.getDateTimeInstance().format(new Date()).toString(),"failed"));
-        runsList.add(new Runs("Test Run2 ",
-                SimpleDateFormat.getDateTimeInstance().format(new Date()).toString()
-                ,SimpleDateFormat.getDateTimeInstance().format(new Date()).toString(),"finished"));
-       */
-        progressDialog = new ProgressDialog(getActivity());
-        progressDialog.setMessage(getActivity().getResources().getString(R.string.loading));
-        progressDialog.setCancelable(true);
-
-        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);
-        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();
-        return rootView;
-    }
-
-    /**
-     * Called when the fragment is visible to the user and actively running.
-     * This is generally
-     * tied to {@link android.app.Activity#onResume() Activity.onResume} of the containing
-     * Activity's lifecycle.
-     */
-    @Override
-    public void onResume() {
-        super.onResume();
-
-        // mRecyclerView.setScrollingTouchSlop(RecyclerView.TOUCH_SLOP_PAGING);
-        //getActivity().getLoaderManager().initLoader(1,null,this);
-    }
-
-    @Override
-    public void onDetach() {
-        super.onDetach();
-    }
-
-    @Override
-    public Loader<Workflow> onCreateLoader(int i, Bundle bundle) {
-        //progressDialog.show();
-        return new DetailsLoader(getActivity(),
-                DetailsLoader.LoadType.TYPE_RUN_HISTORY,
-                workflowID);
-    }
-
-    @Override
-    public void onLoadFinished(Loader<Workflow> workflowLoader, Workflow workflow) {
-
-        try {
-            if (workflow.getWorkflowRuns() != null && workflow.getWorkflowRuns().size() != 0) {
-
-                runAdapter.setRunList(workflow.getWorkflowRuns());
-                mRecyclerView.setAdapter(runAdapter);
-                mRecyclerView.setVisibility(View.VISIBLE);
-                emptyRunHistoryTextView.setVisibility(View.GONE);
-
-            } else {
-                mRecyclerView.setVisibility(View.GONE);
-                emptyRunHistoryTextView.setVisibility(View.VISIBLE);
-            }
-        } catch (NullPointerException np) {
-            Log.e(TAG, "onLoadFinished:", np);
-        }
-
-        // progressDialog.dismiss();
-    }
-
-    @Override
-    public void onLoaderReset(Loader<Workflow> workflowLoader) {
-        workflowLoader.reset();
-    }
-}


[6/7] incubator-taverna-mobile git commit: remove open workflow option from nav_option

Posted by sa...@apache.org.
remove open workflow option from nav_option


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

Branch: refs/heads/master
Commit: 22d058d9fc0348bf10052ecadeae320a8c64521d
Parents: b93d871
Author: Sagar <ku...@gmail.com>
Authored: Tue Oct 18 19:39:34 2016 +0530
Committer: Sagar <ku...@gmail.com>
Committed: Tue Oct 18 19:39:34 2016 +0530

----------------------------------------------------------------------
 .../activities/DashboardMainActivity.java       | 52 +------------
 app/src/main/res/menu/drawer_view.xml           | 81 +++++++++-----------
 2 files changed, 39 insertions(+), 94 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/22d058d9/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 be3b2a6..bca3e04 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
@@ -29,7 +29,6 @@ import android.app.Dialog;
 import android.content.Context;
 import android.content.Intent;
 import android.content.SharedPreferences;
-import android.net.Uri;
 import android.os.Bundle;
 import android.os.Environment;
 import android.preference.PreferenceManager;
@@ -46,7 +45,6 @@ import android.support.v7.widget.Toolbar;
 import android.view.Menu;
 import android.view.MenuItem;
 import android.view.View;
-import android.webkit.MimeTypeMap;
 import android.widget.TableLayout;
 import android.widget.Toast;
 
@@ -59,7 +57,6 @@ import org.apache.taverna.mobile.ui.licence.LicenceFragment;
 import org.apache.taverna.mobile.ui.myworkflows.MyWorkflowFragment;
 import org.apache.taverna.mobile.ui.workflow.WorkflowFragment;
 import org.apache.taverna.mobile.utils.ActivityUtils;
-import org.apache.taverna.mobile.utils.WorkflowOpen;
 
 import java.io.File;
 
@@ -184,24 +181,7 @@ public class DashboardMainActivity extends AppCompatActivity {
                                 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);
@@ -265,38 +245,8 @@ public class DashboardMainActivity extends AppCompatActivity {
     }
 
 
-    @Override
-    public void onActivityResult(int requestCode, int resultCode, Intent data) {
-        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();
 
-            }
-        }
-    }
 
-    /**
-     * 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
-     */
-    private String getMimeType(String url) {
-        String type = null;
-        String extension = MimeTypeMap.getFileExtensionFromUrl(url);
-        if (extension != null) {
-            type = MimeTypeMap.getSingleton().getMimeTypeFromExtension(extension);
-        }
-        return type;
-    }
 
 
     public void restoreActionBar() {

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/22d058d9/app/src/main/res/menu/drawer_view.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/menu/drawer_view.xml b/app/src/main/res/menu/drawer_view.xml
index 9cd5a26..bfe9105 100644
--- a/app/src/main/res/menu/drawer_view.xml
+++ b/app/src/main/res/menu/drawer_view.xml
@@ -17,48 +17,43 @@
 -->
 <menu xmlns:android="http://schemas.android.com/apk/res/android">
 
-	<group android:checkableBehavior="single">
-		<item
-			android:id="@+id/nav_workflows"
-			android:icon="@drawable/ic_dashboard_home_web"
-			android:title="All Workflows"/>
-		<item
-			android:id="@+id/nav_my_workflows"
-			android:icon="@drawable/ic_dashboard_home_web"
-			android:title="@string/my_workflows"/>
-		<item
-				android:id="@+id/nav_favourite_workflow"
-				android:icon="@drawable/ic_star_black_24dp"
-				android:title="Favourite Workflows"/>
-
-		<item
-			android:id="@+id/nav_openworkflow"
-			android:icon="@drawable/ic_openwk_web"
-			android:title="Open Workflow"/>
-		<item
-			android:id="@+id/nav_usage"
-			android:icon="@drawable/ic_usage_web"
-			android:title="Usage"/>
-		<item
-			android:id="@+id/nav_announcement"
-			android:icon="@drawable/ic_announcement_black_24dp"
-			android:title="Announcement"/>
-		<item
-			android:id="@+id/nav_about"
-			android:icon="@drawable/ic_about_web"
-			android:title="About"/>
-		<item
-			android:id="@+id/os_licences"
-			android:icon="@drawable/ic_about_web"
-			android:title="@string/os_licences"/>
-		<item
-			android:id="@+id/nav_settings"
-			android:icon="@drawable/ic_setting_workflows_web"
-			android:title="Settings"/>
-		<item
-			android:id="@+id/nav_logout"
-			android:icon="@drawable/ic_logout_web"
-			android:title="Logout"/>
-	</group>
+    <group android:checkableBehavior="single">
+        <item
+            android:id="@+id/nav_workflows"
+            android:icon="@drawable/ic_dashboard_home_web"
+            android:title="All Workflows"/>
+        <item
+            android:id="@+id/nav_my_workflows"
+            android:icon="@drawable/ic_dashboard_home_web"
+            android:title="@string/my_workflows"/>
+        <item
+            android:id="@+id/nav_favourite_workflow"
+            android:icon="@drawable/ic_star_black_24dp"
+            android:title="Favourite Workflows"/>
+        <item
+            android:id="@+id/nav_usage"
+            android:icon="@drawable/ic_usage_web"
+            android:title="Usage"/>
+        <item
+            android:id="@+id/nav_announcement"
+            android:icon="@drawable/ic_announcement_black_24dp"
+            android:title="Announcement"/>
+        <item
+            android:id="@+id/nav_about"
+            android:icon="@drawable/ic_about_web"
+            android:title="About"/>
+        <item
+            android:id="@+id/os_licences"
+            android:icon="@drawable/ic_about_web"
+            android:title="@string/os_licences"/>
+        <item
+            android:id="@+id/nav_settings"
+            android:icon="@drawable/ic_setting_workflows_web"
+            android:title="Settings"/>
+        <item
+            android:id="@+id/nav_logout"
+            android:icon="@drawable/ic_logout_web"
+            android:title="Logout"/>
+    </group>
 
 </menu>


[3/7] incubator-taverna-mobile git commit: clear codebase

Posted by sa...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index 9835c04..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/fragments/workflowdetails/WorkflowdetailFragment.java
+++ /dev/null
@@ -1,811 +0,0 @@
-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
- * 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 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.WorkflowDB;
-import org.apache.taverna.mobile.utils.WorkflowDownloadManager;
-import org.json.JSONArray;
-import org.json.JSONException;
-import org.json.JSONObject;
-
-import android.app.Activity;
-import android.app.AlertDialog;
-import android.app.DownloadManager;
-import android.app.LoaderManager;
-import android.app.ProgressDialog;
-import android.content.Context;
-import android.content.DialogInterface;
-import android.content.Loader;
-import android.content.SharedPreferences;
-import android.content.res.Resources;
-import android.graphics.Bitmap;
-import android.graphics.BitmapFactory;
-import android.net.Uri;
-import android.os.AsyncTask;
-import android.os.Bundle;
-import android.preference.PreferenceManager;
-import android.support.v4.app.Fragment;
-import android.util.Base64;
-import android.util.Log;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-import android.view.animation.Animation;
-import android.view.animation.AnimationUtils;
-import android.widget.Button;
-import android.widget.EditText;
-import android.widget.ImageView;
-import android.widget.LinearLayout;
-import android.widget.ScrollView;
-import android.widget.TextView;
-import android.widget.Toast;
-
-import java.io.BufferedReader;
-import java.io.DataOutputStream;
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.io.InputStream;
-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;
-
-/**
- * Created by Larry Akah on 6/9/15.
- */
-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 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 mWorkfloId = "";
-    public static Context cont;
-    static View rootView;
-    static Animation zoomin;
-    static Animation zoomout;
-    static Workflow currentWorkflow = null;
-    private static ProgressDialog progressDialog;
-    private static String download_url;
-    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;
-
-    private DropboxAPI<AndroidAuthSession> mDBApi;
-
-    public WorkflowdetailFragment() {
-    }
-
-    /**
-     * Returns a new instance of this fragment for the given section
-     * number.
-     */
-    public static WorkflowdetailFragment newInstance(int sectionNumber) {
-        WorkflowdetailFragment fragment = new WorkflowdetailFragment();
-        Bundle args = new Bundle();
-        args.putInt(ARG_SECTION_NUMBER, sectionNumber);
-        fragment.setArguments(args);
-        return fragment;
-    }
-
-
-    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);
-        //mWorkfloId = wk.getWorkflowTitle();
-        ((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.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
-                        .getWorkflowDatecreated());
-                createdat.setText(createdAtText);
-                //updated.setText("Workflow Description");
-                String typeText = String.format(resources.getString(R.string.workflow_type_text),
-                        wk.getWorkflowType());
-                type.setText(typeText);
-
-                //preview.setImageURI(Uri.parse(wk.getWorkflowPreview()));
-                new LoadImageThread(preview, wk.getWorkflowPreview()).execute();
-                download_url = wk.getWorkflowRemoteUrl();
-                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());
-    }
-
-    public static void setProgressDialog(Context context) {
-        WorkflowdetailFragment.progressDialog = new ProgressDialog(context);
-    }
-
-    public static void setRootView(View rootView) {
-        WorkflowdetailFragment.rootView = rootView;
-    }
-
-    public static void setCont(Context cont) {
-        WorkflowdetailFragment.cont = cont;
-    }
-
-    @Override
-    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);
-        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;
-        zoomin = AnimationUtils.loadAnimation(getActivity(), R.anim.zoomin);
-        zoomout = AnimationUtils.loadAnimation(getActivity(), R.anim.zoomout);
-
-        isZoomIn = false;
-        sharedPreferences = PreferenceManager.getDefaultSharedPreferences(getActivity());
-        wid = getActivity().getIntent().getLongExtra("wid", 0);
-        Button createRun = (Button) rootView.findViewById(R.id.run_wk);
-        createRun.setOnClickListener(this);
-        Button download = (Button) rootView.findViewById(R.id.download_wk);
-        download.setOnClickListener(this);
-        Button mark_workflow = (Button) rootView.findViewById(R.id.mark_wk);
-        mark_workflow.setOnClickListener(this);
-        final String favs = sharedPreferences.getString(WorkflowAdapter.FAVORITE_LIST_DB, "");
-        String[] ids = favs.split(",");
-        if (ids.length > 0) {
-            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);
-        (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);
-        return rootView;
-    }
-
-    /**
-     * Called when a fragment is first attached to its activity.
-     * {@link #onCreate(android.os.Bundle)} will be called after this.
-     */
-    //@Override
-    //public void onAttach(Activity activity) {
-    //    super.onAttach(activity);
-    //    cont = getActivity();
-    //}
-    @Override
-    public void onAttach(Context context) {
-        super.onAttach(context);
-        setCont(getActivity());
-    }
-
-    @Override
-    public void onClick(View view) {
-        switch (view.getId()) {
-            case R.id.run_wk:
-                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();
-                }
-                break;
-            case R.id.download_wk:
-                // start the android Download manager to start downloading a remote workflow file
-                WorkflowDownloadManager dmgr = new WorkflowDownloadManager(getActivity(),
-                        downloadManager);
-                try {
-                    dmgr.downloadWorkflow(new File(PreferenceManager.getDefaultSharedPreferences
-                                    (getActivity()).getString(
-                            DashboardMainActivity.APP_DIRECTORY_NAME, "/")),
-                            download_url);
-                } catch (Exception e) {
-                    Log.e(TAG, "onClick: ", e);
-                }
-
-                break;
-            case R.id.mark_wk:
-
-                ArrayList<Object> mfav = new ArrayList<Object>();
-                String favs = sharedPreferences.getString(WorkflowAdapter.FAVORITE_LIST_DB, "");
-                //save current workflow as favorite
-                mfav.add(currentWorkflow.getId());
-                mfav.add(currentWorkflow.getWorkflowAuthor());
-                mfav.add(currentWorkflow.getWorkflowTitle());
-                mfav.add(currentWorkflow.getWorkflowDescription());
-                mfav.add(SimpleDateFormat.getDateTimeInstance().format(new Date()).toString());
-                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);
-                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", "");
-                if (authToken.isEmpty()) {
-                    mDBApi.getSession().startOAuth2Authentication(getActivity());
-                } else {
-                    mDBApi.getSession().setOAuth2AccessToken(authToken);
-                    new WorkflowDriveUpload().execute(download_url);
-                }
-                break;
-            case R.id.saveToGoogleDriveButton:
-                break;
-        }
-    }
-
-    /**
-     * Called when the fragment is visible to the user and actively running.
-     * This is generally
-     * tied to {@link android.app.Activity#onResume() Activity.onResume} of the containing
-     * Activity's lifecycle.
-     */
-    @Override
-    public void onResume() {
-        super.onResume();
-        if (!mLoadState)
-            workflow_uri = getActivity().getIntent().getStringExtra("uri");
-
-        getActivity().getLoaderManager().initLoader(1, null, this).forceLoad();
-
-        if (mDBApi.getSession().authenticationSuccessful() && !mDropupload) {
-            try {
-                // 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();
-                new WorkflowDriveUpload().execute(download_url);
-            } catch (IllegalStateException e) {
-                Log.i("DbAuthLog", "Error authenticating", e);
-            }
-        }
-    }
-
-    @Override
-    public void onSaveInstanceState(Bundle outState) {
-        super.onSaveInstanceState(outState);
-        mLoadState = true;
-    }
-
-    @Override
-    public Loader<Workflow> onCreateLoader(int i, Bundle bundle) {
-        progressDialog.show();
-        return new DetailsLoader(getActivity(),
-                DetailsLoader.LoadType.TYPE_WORKFLOW_DETAIL,
-                workflow_uri);
-    }
-
-    @Override
-    public void onLoadFinished(Loader<Workflow> workflowLoader, Workflow workflow) {
-
-    }
-
-    @Override
-    public void onLoaderReset(Loader<Workflow> workflowLoader) {
-        workflowLoader.reset();
-    }
-
-    //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;
-    }
-
-    private static class LoadImageThread extends AsyncTask<String, Void, Bitmap> {
-        ImageView imageView;
-        String src;
-
-        public LoadImageThread(ImageView image, String source) {
-            imageView = image;
-            src = source;
-        }
-
-        @Override
-        protected Bitmap doInBackground(String... strings) {
-            Bitmap myBitmap = null;
-            try {
-                URL url = new URL(src);
-                HttpURLConnection connection = null;
-                connection = (HttpURLConnection) url.openConnection();
-                connection.setDoInput(true);
-                connection.connect();
-                InputStream input = connection.getInputStream();
-                myBitmap = BitmapFactory.decodeStream(input);
-//                imageView.setImageBitmap(myBitmap);
-            } catch (IOException e) {
-                Log.e(TAG, "doInBackground: ", e);
-            }
-            return myBitmap;
-        }
-
-        @Override
-        protected void onPostExecute(Bitmap bitmap) {
-            imageView.setImageBitmap(bitmap);
-        }
-    }
-
-    //fetch and compute the framework on which the run inputs are to be built and entered
-    private class WorkflowRunTask extends AsyncTask<String, Void, String> {
-
-        TavernaPlayerAPI tavernaPlayerAPI = new TavernaPlayerAPI();
-        private Context context;
-
-        private WorkflowRunTask(Context context) {
-            this.context = context;
-        }
-
-        @Override
-        protected void onPreExecute() {
-            super.onPreExecute();
-            progressDialog.setMessage(this.context.getResources().getString(R.string.fetchrun));
-            progressDialog.show();
-        }
-
-        @Override
-        protected String doInBackground(String... params) {
-            StringBuffer sb = new StringBuffer();
-            try {
-
-                URL workflowurl = new URL(new TavernaPlayerAPI(this.context)
-                        .mPlayerRunFrameworkUrl + params[0]);
-                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
-                        .DEFAULT);
-
-                connection.setRequestProperty("Authorization", basicAuth);
-                connection.setRequestProperty("Accept", "application/json");
-                connection.setRequestMethod("GET");
-                // connection.setDoInput(true);
-                //  connection.setDoOutput(true);
-                connection.connect(); //send request
-                Log.i("RESPONSE Code", "" + connection.getResponseCode());
-                Log.i("RESPONSE Messsage", "" + connection.getResponseMessage());
-                Log.i("Authorization ", "" + connection.getRequestProperty("Authorization"));
-
-                InputStream dis = connection.getInputStream();
-                BufferedReader br = new BufferedReader(new InputStreamReader(dis, "UTF-8"));
-
-                String jsonData = "";
-                while ((jsonData = br.readLine()) != null) {
-                    sb.append(jsonData);
-                }
-                dis.close();
-                br.close();
-                return sb.toString();
-
-            } catch (IOException ex) {
-                Log.e(TAG, "doInBackground: ", ex);
-            }
-            return sb.toString();
-        }
-
-        @Override
-        protected void onPostExecute(String result) {
-            //show the skeleton to the user in a dialog box
-            final Context ctx = this.context;
-            final LinearLayout ll = new LinearLayout(ctx);
-            ScrollView sv = new ScrollView(ctx);
-            ll.setOrientation(LinearLayout.VERTICAL);
-            sv.addView(ll);
-
-            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
-                ll.addView(createTextView(ctx, name));
-                final JSONArray attr_array = mjson.getJSONArray("inputs_attributes");
-                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));
-                }
-
-                alertDialogBuilder = new AlertDialog.Builder(ctx);
-                alertDialogBuilder.setView(sv);
-                //               alertDialogBuilder.setMessage(result);
-                alertDialogBuilder.setIcon(ctx.getResources().getDrawable(R.mipmap.ic_launcher));
-                alertDialogBuilder.setTitle("New Workflow Run");
-                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++) {
-                            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
-
-                            } catch (JSONException e) {
-                                Log.e(TAG, "onClick: ", e);
-                            }
-
-                        }
-                        try {
-                            json.put("inputs_attributes", attr_array);
-                            Log.i("RUN FRAMEWORK", json.toString(2));
-                            //start a run task to execute the run.
-                            new RunTask(ctx).execute(json.toString());
-                        } catch (JSONException e) {
-                            Log.e(TAG, "onClick: ", e);
-                        } catch (Exception ex) {
-                            Log.e(TAG, "onClick: ", ex);
-                        }
-
-                    }
-                });
-                alertDialogBuilder.setNegativeButton("Cancel", new DialogInterface
-                        .OnClickListener() {
-
-                    @Override
-                    public void onClick(DialogInterface dialogInterface, int i) {
-                        dialogInterface.dismiss();
-                    }
-                });
-
-                runDialog = alertDialogBuilder.create();
-
-            } catch (JSONException e) {
-                Log.e(TAG, "onPostExecute: ", e);
-            }
-            progressDialog.dismiss();
-
-            runDialog.show();
-        }
-    }
-
-    /**
-     * 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 Context context;
-
-        private WorkflowProcessTask(Context context) {
-            this.context = context;
-        }
-
-        @Override
-        protected void onPreExecute() {
-            progressDialog.setMessage("Uploading Workflow ... ");
-            progressDialog.show();
-        }
-
-        @Override
-        protected String doInBackground(String... params) {
-            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).mPlayerBaseUrl +
-                        "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(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"));
-                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.
-                }
-                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 + "}";
-                //clear sb so that we can use it again to fetch results from this post request
-                sb.delete(0, sb.length() - 1);
-                Log.d(TAG, "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.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.flush();
-                dos.close();
-
-                InputStream dis = connection.getInputStream();
-                BufferedReader br = new BufferedReader(new InputStreamReader(dis, "UTF-8"));
-                while ((str = br.readLine()) != null) {
-                    sb.append(str);
-                }
-                connection.disconnect();
-            } catch (IOException e) {
-                Log.e(TAG, "doInBackground: ", e);
-                sb.append("Error reading remote workflow. Please try again later");
-            }
-
-            return sb.toString();
-        }
-
-        /**
-         * 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();
-            s = s.substring(1, s.length());
-            try {
-                JSONObject workflowJson = new JSONObject(s);
-                new WorkflowRunTask(getActivity()).execute(workflowJson.getString("id"));
-
-            } catch (JSONException e) {
-                Log.e(TAG, "onPostExecute: ", e);
-            }
-
-        }
-    }
-
-    /**
-     * Upload workflow from myexperiment to DropBox
-     */
-    private class WorkflowDriveUpload extends AsyncTask<String, Void, String> {
-        @Override
-        protected void onPreExecute() {
-            Toast.makeText(getActivity(), "Saving workflow to dropBox", Toast.LENGTH_LONG).show();
-        }
-
-        @Override
-        protected String doInBackground(String... files) {
-            // File file = new File(files[0]);
-            HttpURLConnection mconn;
-            //   FileInputStream inputStream = null;
-            DropboxAPI.Entry response = null;
-            DropboxAPI.Entry metaDataEntry = null;
-            try {
-                mconn = (HttpURLConnection) new URL(files[0]).openConnection();
-                mconn.setRequestMethod("GET");
-                mconn.connect();
-
-                //  inputStream = new FileInputStream(file);
-
-                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();
-                                }
-                            }
-                        });
-
-                Log.i("DbExampleLog", "The uploaded file's rev is: " + response.rev);
-                //  metaDataEntry = mDBApi.metadata("/"+Uri.parse(files[0]).getLastPathSegment(),
-                // 1, null, false, null);
-            } catch (FileNotFoundException e) {
-                Log.e(TAG, "doInBackground: ", e);
-            } catch (DropboxException e) {
-                Log.e(TAG, "doInBackground: ", e);
-            } catch (MalformedURLException e) {
-                Log.e(TAG, "doInBackground: ", e);
-            } catch (IOException e) {
-                Log.e(TAG, "doInBackground: ", e);
-            }
-
-            return response.rev;
-        }
-
-        @Override
-        protected void onPostExecute(String s) {
-            if (null != s) {
-                Toast.makeText(getActivity(), "File Saved to dropbox. Reference: " + s, Toast
-                        .LENGTH_LONG).show();
-                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/b93d871c/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
deleted file mode 100644
index 56df291..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/Runs.java
+++ /dev/null
@@ -1,113 +0,0 @@
-/*
-* 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.
-*/
-
-package org.apache.taverna.mobile.tavernamobile;
-
-/**
- * Created by Larry Akah on 6/13/15.
- * Workflow runs for a given workflow
- */
-public class Runs {
-    private long run_id;
-    private long run_workflow_id;
-    private String run_name;
-    private String run_started_date;
-    private String run_ended_date;
-    private String state;
-    private String run_author;
-
-    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;
-    }
-
-    ;
-
-    public long getRunId() {
-        return run_id;
-    }
-
-    public void setrunId(long run_id) {
-        this.run_id = run_id;
-    }
-
-    public long getRunWorkflowId() {
-        return run_workflow_id;
-    }
-
-    public void setRunWorkflowId(long run_workflow_id) {
-        this.run_workflow_id = run_workflow_id;
-    }
-
-    public RunState getState() {
-        if (state.equalsIgnoreCase("finished")) {
-            return RunState.FINISHED;
-        } else if (state.equalsIgnoreCase("failed")) {
-            return RunState.FAILED;
-        } else {
-            return RunState.RUNNING;
-        }
-    }
-
-    public void setState(String state) {
-        this.state = state;
-    }
-
-    public String getRunName() {
-        return run_name;
-    }
-
-    public void setRunName(String run_name) {
-        this.run_name = run_name;
-    }
-
-    public String getRunStartedDate() {
-        return run_started_date;
-    }
-
-    public void setRunStartedDate(String run_started_date) {
-        this.run_started_date = run_started_date;
-    }
-
-    public String getRunAuthor() {
-        return run_author;
-    }
-
-    public void setRunAuthor(String run_author) {
-        this.run_author = run_author;
-    }
-
-    public String getRunEndedDate() {
-        return run_ended_date;
-    }
-
-    public void setRunEndedDate(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/b93d871c/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
deleted file mode 100644
index 6e6bcc1..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/TavernaPlayerAPI.java
+++ /dev/null
@@ -1,107 +0,0 @@
-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
- * 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 android.content.Context;
-import android.preference.PreferenceManager;
-
-import java.net.PasswordAuthentication;
-
-/**
- * Created by Larry Akah on 6/13/15.
- */
-public class TavernaPlayerAPI {
-
-    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) {
-        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", "/");
-        mPlayerBaseUrl = player;
-        mServerBaseUrl = server;
-        mPlayerWorkFlowUrl = mPlayerBaseUrl + "workflows/";
-        mPlayerRunUrl = mPlayerBaseUrl + "runs/";
-        mPlayerRunFrameworkUrl = mPlayerRunUrl + "new?workflow_id=";
-    }
-
-    public TavernaPlayerAPI() {
-
-    }
-
-    public static String getplayerBaseUrl() {
-        return mPlayerBaseUrl;
-    }
-
-    public static String getserverBaseUrl() {
-        return mServerBaseUrl;
-    }
-
-    public static String getplayerWorkflowUrl() {
-        return mPlayerWorkFlowUrl;
-    }
-
-    public static String getplayerRunUrl(Context ctx) {
-        return mPlayerRunUrl;
-    }
-
-    public static String getplayerRunFrameworkUrl(Context ctx) {
-        return mPlayerRunFrameworkUrl;
-    }
-
-    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 static class Authenticator extends java.net.Authenticator {
-        private String username, password;
-
-        public Authenticator(String username, String password) {
-            super();
-            this.username = username;
-            this.password = password;
-        }
-
-        @Override
-        protected PasswordAuthentication getPasswordAuthentication() {
-            return new PasswordAuthentication(this.username, this.password.toCharArray());
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index 4c30739..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/User.java
+++ /dev/null
@@ -1,171 +0,0 @@
-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
- * 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.adapters.WorkflowAdapter;
-import org.simpleframework.xml.Element;
-
-import android.graphics.Bitmap;
-
-import java.util.List;
-
-/**
- * Created by root on 6/18/15.
- */
-public class User {
-
-    private static final long serialVersionUID = 3467195671046297377L;
-    @Element(required = false)
-    protected String id;
-    @Element(name = "created-at", required = false)
-    protected String created_at;
-    @Element(required = false)
-    protected String name;
-    @Element(required = false)
-    protected String description;
-    @Element(required = false)
-    protected String email;
-    @Element(required = false)
-    protected Bitmap avatar;
-    @Element(required = false)
-    protected String city;
-    @Element(required = false)
-    protected String country;
-    @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 WorkflowAdapter.ViewHolder userViewHolder;
-
-    public User(String rid, WorkflowAdapter.ViewHolder vh) {
-        super();
-        row_id = rid;
-        this.userViewHolder = vh;
-    }
-
-    public WorkflowAdapter.ViewHolder getUserViewHolder() {
-        return userViewHolder;
-    }
-
-    public void setUserViewHolder(WorkflowAdapter.ViewHolder userViewHolder) {
-        this.userViewHolder = userViewHolder;
-    }
-
-    public String getRowId() {
-        return this.row_id;
-    }
-
-    public void setId(String id) {
-        this.id = id;
-    }
-
-    public String getCreatedAt() {
-        return created_at;
-    }
-
-    public void setCreatedAt(String created_at) {
-        this.created_at = created_at;
-    }
-
-    public String getDetailsUri() {
-        return this.details_uri;
-    }
-
-    public void setDetailsUri(String details_uri) {
-        this.details_uri = details_uri;
-    }
-
-    public String getAvatarUrl() {
-        return this.avatar_url;
-    }
-
-    public void setAvatarUrl(String avatar_url) {
-        this.avatar_url = avatar_url;
-    }
-
-    public String getName() {
-        return name;
-    }
-
-    public void setName(String name) {
-        this.name = name;
-    }
-
-    public String getDescription() {
-        return description;
-    }
-
-    public void setDescription(String description) {
-        this.description = description;
-    }
-
-    public String getEmail() {
-        return email;
-    }
-
-    public void setEmail(String email) {
-        this.email = email;
-    }
-
-    public Bitmap getAvatar() {
-        return avatar;
-    }
-
-    public void setAvatar(Bitmap avatar) {
-        this.avatar = avatar;
-    }
-
-    public String getCity() {
-        return city;
-    }
-
-    public void setCity(String city) {
-        this.city = city;
-    }
-
-    public String getCountry() {
-        return country;
-    }
-
-    public void setCountry(String country) {
-        this.country = country;
-    }
-
-    public String getWebsite() {
-        return website;
-    }
-
-    public void setWebsite(String website) {
-        this.website = website;
-    }
-
-    @Override
-    public String toString() {
-        return "This is the user object";
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index be92a9c..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/Workflow.java
+++ /dev/null
@@ -1,361 +0,0 @@
-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
- * 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 android.content.Context;
-import android.graphics.Bitmap;
-import android.graphics.BitmapFactory;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * Created by root on 6/8/15.
- */
-public class Workflow {
-    private Context context;
-    private User uploader;
-    private String workflow_author;
-    private String workflow_title;
-    private String workflow_description, about, policy;
-    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 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_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_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 Workflow() {
-    }
-
-    ;
-
-    public Workflow(Context context) {
-        this.context = context;
-        this.workflow_runs = new ArrayList<Runs>();
-    }
-
-    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.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) {
-        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.id = id;
-        this.workflow_remote_url = url;
-        this.workflow_runs = new ArrayList<Runs>();
-    }
-
-    public long getId() {
-        return this.id;
-    }
-
-    public void setId(long id) {
-        this.id = id;
-    }
-
-    public String getWorkflowDatecreated() {
-        return this.workflow_datecreated;
-    }
-
-    public void setWorkflowDatecreated(String workflow_datecreated) {
-        this.workflow_datecreated = workflow_datecreated;
-    }
-
-    public String getWorkflowRemoteUrl() {
-        return this.workflow_remote_url;
-    }
-
-    public void setWorkflowRemoteUrl(String workflow_remote_url) {
-        this.workflow_remote_url = workflow_remote_url;
-    }
-
-    public String getWorkflowDetailsUrl() {
-        return this.workflow_details_url;
-    }
-
-    public void setWorkflowDetailsUrl(String workflow_details_url) {
-        this.workflow_details_url = workflow_details_url;
-    }
-
-    public User getUploader() {
-        return this.uploader;
-    }
-
-    public void setUploader(User uploader) {
-        this.uploader = uploader;
-    }
-
-    public String getPolicy() {
-        return this.policy;
-    }
-
-    public void setPolicy(String policy) {
-        this.policy = policy;
-    }
-
-    public String getAbout() {
-        return this.about;
-    }
-
-    public void setAbout(String about) {
-        this.about = about;
-    }
-
-    public String getWorkflowDatemodified() {
-        return this.workflow_datemodified;
-    }
-
-    public void setWorkflowDatemodified(String workflow_datemodified) {
-        this.workflow_datemodified = workflow_datemodified;
-    }
-
-    public List<Runs> getWorkflowRuns() {
-        return this.workflow_runs;
-    }
-
-    public void setWorkflowRuns(List<Runs> workflow_runs) {
-        this.workflow_runs = workflow_runs;
-    }
-
-    public void addWorkflowRun(Runs runs) { //adds a run to this workflow
-        this.workflow_runs.add(runs);
-    }
-
-    public int getWorkflowInput() {
-        return this.workflow_input;
-    }
-
-    public void setWorkflowInput(int workflow_input) {
-        this.workflow_input = workflow_input;
-    }
-
-    public WorkflowInputType getInputType() {
-        return WorkflowInputType.TYPE_INT;
-    }
-
-    public String getWorkflowAuthor() {
-        return this.workflow_author;
-    }
-
-    public void setWorkflowAuthor(String workflow_author) {
-        this.workflow_author = workflow_author;
-    }
-
-    public String getWorkflowDescription() {
-        return this.workflow_description;
-    }
-
-    public void setWorkflowDescription(String workflow_description) {
-        this.workflow_description = workflow_description;
-    }
-
-    public String getWorkflowTitle() {
-        return this.workflow_title;
-    }
-
-    public void setWorkflowTitle(String workflow_title) {
-        this.workflow_title = workflow_title;
-    }
-
-    public Bitmap getWorkflowAuthorBitmap() {
-        return this.workflow_author_bitmap;
-    }
-
-    public void setWorkflowAuthorBitmap(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;
-    }
-
-    public String getWorkflowWebUrl() {
-        return workflow_web_url;
-    }
-
-    public void setWorkflowWebUrl(String workflow_web_url) {
-        this.workflow_web_url = workflow_web_url;
-    }
-
-    public String getWorkflowUploader() {
-        return workflow_uploader;
-    }
-
-    public void setWorkflowUploader(String workflow_uploader) {
-        this.workflow_uploader = workflow_uploader;
-    }
-
-    public String getWorkflowType() {
-        return workflow_Type;
-    }
-
-    public void setWorkflowType(String workflow_Type) {
-        this.workflow_Type = workflow_Type;
-    }
-
-    public String getWorkflowPreview() {
-        return workflow_preview;
-    }
-
-    public void setWorkflowPreview(String workflow_preview) {
-        this.workflow_preview = workflow_preview;
-    }
-
-    public String getWorkflowThumbBig() {
-        return workflow_thumb_big;
-    }
-
-    public void setWorkflowThumbBig(String workflow_thumb_big) {
-        this.workflow_thumb_big = workflow_thumb_big;
-    }
-
-    public String getWorkflowLicenceType() {
-        return workflow_licence_type;
-    }
-
-    public void setWorkflowLicenceType(String workflow_licence_type) {
-        this.workflow_licence_type = workflow_licence_type;
-    }
-
-    public String getWorkflowContentType() {
-        return workflow_content_type;
-    }
-
-    public void setWorkflowContentType(String workflow_content_type) {
-        this.workflow_content_type = workflow_content_type;
-    }
-
-    public List<String> getWorkflowTags() {
-        return workflow_tags;
-    }
-
-    public void setWorkflowTags(List<String> workflow_tags) {
-        this.workflow_tags = workflow_tags;
-    }
-
-    public String getWorkflowVersions() {
-        return workflow_versions;
-    }
-
-    public void setWorkflowVersions(String workflow_versions) {
-        this.workflow_versions = workflow_versions;
-    }
-
-    public List<String> getWorkflowCredits() {
-        return workflow_credits;
-    }
-
-    public void setWorkflowCredits(List<String> workflow_credits) {
-        this.workflow_credits = workflow_credits;
-    }
-
-    @Override
-    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
-public class Workflow implements Parcelable {
-    private int mData;
-
-    */
-/* everything below here is for implementing Parcelable *//*
-
-
-    // 99.9% of the time you can just ignore this
-    public int describeContents() {
-        return 0;
-    }
-
-    // write your object's data to the passed-in Parcel
-    public void writeToParcel(Parcel out, int flags) {
-        out.writeInt(mData);
-    }
-
-// 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);
-    }
-
-    public Workflow[] newArray(int size) {
-        return new Workflow[size];
-    }
-};
-
-    // example constructor that takes a Parcel and gives you an object populated with it's values
-    private Workflow(Parcel in) {
-        mData = in.readInt();
-    }
-}
-
-//application in intents. Sending object to another activity
-    Intent it = new Intent();
-    it.putExtra("parsedWorkflow", myWorkflow);
-//retrieve object
-    Workflow mWorkflow = (Workflow) getIntent().getParcelableExtra("parsedWorkflow");
-
- */

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index 514824a..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/WorkflowComponent.java
+++ /dev/null
@@ -1,36 +0,0 @@
-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
- * 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.
- */
-
-/**
- * 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)
- */
-public class WorkflowComponent {
-
-    public WorkflowComponent() {
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index 984f41b..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/utils/AvatarLoader.java
+++ /dev/null
@@ -1,84 +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 com.thebuzzmedia.sjxp.rule.IRule;
-
-import org.apache.taverna.mobile.adapters.WorkflowAdapter;
-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 android.util.Log;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.HttpURLConnection;
-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
- * 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) {
-        this.vh = userViewHolder;
-    }
-
-    @Override
-    protected Void doInBackground(String... strings) {
-        URL url = null;
-        HttpURLConnection connection = null;
-        try {
-
-            url = new URL(strings[0]);
-            connection = (HttpURLConnection) url.openConnection();
-            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});
-
-            avatarXMLParser.parse(input, new User(strings[1], this.vh));
-
-        } catch (MalformedURLException e) {
-            Log.e(TAG, "doInBackground: ", e);
-        } catch (IOException e) {
-            Log.e(TAG, "doInBackground: ", e);
-        }
-
-        return null;
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index df7b990..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/utils/DBUtility.java
+++ /dev/null
@@ -1,65 +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 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/b93d871c/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
deleted file mode 100644
index cec8748..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/utils/DetailsLoader.java
+++ /dev/null
@@ -1,280 +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 com.thebuzzmedia.sjxp.rule.IRule;
-
-import org.apache.taverna.mobile.tavernamobile.Runs;
-import org.apache.taverna.mobile.tavernamobile.TavernaPlayerAPI;
-import org.apache.taverna.mobile.tavernamobile.Workflow;
-import org.apache.taverna.mobile.utils.xmlparsers.MyExperimentXmlParserRules;
-import org.apache.taverna.mobile.utils.xmlparsers.WorkflowDetailParser;
-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;
-import java.io.InputStreamReader;
-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
- * 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> {
-
-    private static final String TAG = "DetailsLoader";
-    private LoadType lt;
-    private String uri;
-    private Workflow workflow;
-    private Context context;
-
-    public DetailsLoader(Context context, LoadType LoadType, String dataParam) {
-        super(context);
-        this.context = context;
-        this.lt = LoadType;
-        uri = dataParam;
-        this.workflow = new Workflow();
-    }
-
-    @Override
-    public Workflow loadInBackground() {
-        HttpURLConnection connection = null;
-        InputStream dis = null;
-        //start a network request to fetch user's workflow details
-        try {
-            Log.i("LOADER STARTED", "loading data");
-            //for password protected urls use the user's credentials
-            Authenticator.setDefault(new TavernaPlayerAPI.Authenticator("taverna", "taverna"));
-            TavernaPlayerAPI tavernaPlayerAPI = new TavernaPlayerAPI();
-            URL workflowurl;
-
-            switch (this.lt) {
-                case TYPE_WORKFLOW_DETAIL:
-                    workflowurl = new URL(uri);
-                    connection = (HttpURLConnection) workflowurl.openConnection();
-                    connection.setRequestProperty("Accept", "application/json");
-                    connection.setRequestMethod("GET");
-                    connection.connect(); //send request
-
-                    Log.i("Workflow Response Code", "" + connection.getResponseCode());
-                    Log.i("Workflow Response msg", "" + connection.getResponseMessage());
-                    dis = connection.getInputStream();
-                    break;
-                case TYPE_RUN_HISTORY:
-                    workflowurl = new URL(new TavernaPlayerAPI(this.context).mPlayerRunUrl);
-                    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.DEFAULT);
-
-                    connection.setRequestProperty("Authorization", basicAuth);
-                    connection.setRequestProperty("Accept", "application/json");
-                    connection.setRequestMethod("GET");
-                    connection.connect(); //send request
-                    Log.i("RESPONSE CODE", "" + connection.getResponseCode());
-                    Log.i("RESPONSE Messsage. Run", "" + connection.getResponseMessage());
-                    dis = connection.getInputStream();
-                    break;
-                case TYPE_POLICY:
-                    workflowurl = new URL(new TavernaPlayerAPI(this.context).mServerBaseUrl);
-                    break;
-                default:
-                    workflowurl = new URL(new TavernaPlayerAPI(this.context).mPlayerWorkFlowUrl);
-                    break;
-            }
-
-            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});
-                    //   Log.e(TAG, sb.toString());
-                    parser.parse(dis, this.workflow);
-                }
-                    dis.close();
-                //br.close();
-                return workflow;
-                case TYPE_RUN_HISTORY: {
-                    Log.e(TAG, "Downloading run history");
-                    BufferedReader br = new BufferedReader(new InputStreamReader(dis, "UTF-8"));
-                    StringBuffer sb = new StringBuffer();
-                    String jsonData = "";
-                    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++) {
-                        JSONObject jsonObject = jsonArray.getJSONObject(j);
-                        long id = jsonObject.getLong("id");
-                        long workflow_id = jsonObject.getLong("workflow_id");
-                        String name = jsonObject.getString("name");
-                        String started = jsonObject.getString("start_time");
-                        String ended = jsonObject.getString("finish_time");
-                        String state = jsonObject.getString("state");
-                        JSONObject userobj = jsonObject.getJSONObject("user");
-                        String username = userobj.getString("name");
-                        StringBuffer nm = new StringBuffer(), ur = new StringBuffer();
-                        for (String n : name.toLowerCase().split(" ")) {
-                            nm.append(n);
-                        }
-                        for (String p : uri.toLowerCase().split(" ")) {
-                            ur.append(p);
-                        }
-                        if (nm.toString().equals(ur.toString())) {
-                            Runs mrun = new Runs(name, started, ended, state);
-                            mrun.setrunId(id);
-                            mrun.setRunWorkflowId(workflow_id);
-                            mrun.setRunAuthor(username);
-
-                            workflow.addWorkflowRun(mrun);
-                        }
-                    }
-                }
-                return workflow;
-                case TYPE_POLICY: {
-
-                }
-                return workflow;
-                default:
-                    BufferedReader br = new BufferedReader(new InputStreamReader(dis, "UTF-8"));
-                    StringBuffer sb = new StringBuffer();
-                    String jsonData = "";
-                    while ((jsonData = br.readLine()) != null) {
-                        sb.append(jsonData);
-                    }
-                    dis.close();
-                    br.close();
-                    return workflow;
-            }
-
-        } catch (MalformedURLException e) {
-            Log.e(TAG, "loadInBackground: ", e);
-        } catch (IOException e) {
-            Log.e(TAG, "loadInBackground: ", e);
-        } catch (JSONException e) {
-            Log.e(TAG, "loadInBackground: ", e);
-        }
-        return workflow;
-    }
-
-    @Override
-    public boolean isStarted() {
-        return super.isStarted();
-    }
-
-    @Override
-    protected void onStartLoading() {
-      /*  if(workflow != null){
-            deliverResult(workflow);
-        }else{
-            forceLoad();
-        }*/
-        forceLoad();
-        Log.i("Loading State", "loading started");
-    }
-
-    @Override
-    protected void onStopLoading() {
-        Log.i("Loading detailComponent", "loading stopped");
-    }
-
-    @Override
-    public void deliverResult(Workflow data) {
-        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.setWorkflowDatecreated(created_at);
- * workflow.setWorkflowDatemodified(updated_at);
- **/
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index 0be41a3..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/utils/HttpUtil.java
+++ /dev/null
@@ -1,108 +0,0 @@
-package org.apache.taverna.mobile.utils;
-
-import org.apache.http.HttpEntity;
-import org.apache.http.HttpResponse;
-import org.apache.http.auth.UsernamePasswordCredentials;
-import org.apache.http.client.ClientProtocolException;
-import org.apache.http.client.HttpClient;
-import org.apache.http.client.methods.HttpGet;
-import org.apache.http.impl.auth.BasicScheme;
-import org.apache.http.impl.client.AbstractHttpClient;
-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;
-/**
- * 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.
- */
-
-/**
- * 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);
-
-        return muser;
-    }
-
-    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));
-            httpResponse = httpClient.execute(httpGet);
-
-            if (isSuccess(httpResponse, HttpURLConnection.HTTP_OK)) {
-                HttpEntity entity = httpResponse.getEntity();
-                if (entity != null) {
-                    String responseString = EntityUtils.toString(entity);
-                    dataObject = this.deSerialize(classType, responseString);
-                }
-            }
-        } catch (InstantiationException e) {
-            Log.e(TAG, "doGetRequestResponse: ", e);
-            return e.getMessage();
-        } catch (IllegalAccessException e) {
-            Log.e(TAG, "doGetRequestResponse: ", e);
-            return e.getMessage();
-        } catch (ClientProtocolException e) {
-            Log.e(TAG, "doGetRequestResponse: ", e);
-            return e.getMessage();
-        } catch (IOException e) {
-            Log.e(TAG, "doGetRequestResponse: ", e);
-            return e.getMessage();
-        }
-
-        return dataObject;
-
-    }
-
-    //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)) ;
-
-        return null;
-    }
-
-    private boolean isSuccess(HttpResponse httpResponse, int httpOk) {
-
-        return httpResponse.getStatusLine().getStatusCode() == httpOk;
-    }
-}


[2/7] incubator-taverna-mobile git commit: clear codebase

Posted by sa...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index 5b376b2..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/utils/RunTask.java
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
-* 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.
-*/
-
-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;
-import android.os.AsyncTask;
-import android.util.Base64;
-import android.util.Log;
-
-import java.io.BufferedReader;
-import java.io.DataOutputStream;
-import java.io.IOException;
-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.
- */
-public class RunTask extends AsyncTask<String, Void, String> {
-
-    private static final String TAG = "RunTask";
-    private Context context;
-    private ProgressDialog progressDialog;
-
-    public RunTask(Context ctx) {
-        this.context = ctx;
-        progressDialog = new ProgressDialog(this.context);
-    }
-
-    @Override
-    protected void onPreExecute() {
-        super.onPreExecute();
-        progressDialog.setMessage("Creating new run for the workflow");
-        progressDialog.show();
-    }
-
-    @Override
-    protected String doInBackground(String... params) {
-        StringBuffer sb = new StringBuffer();
-        try {
-            TavernaPlayerAPI tavernaPlayerAPI = new TavernaPlayerAPI();
-            URL workflowurl = new URL(new TavernaPlayerAPI(this.context).mPlayerRunUrl);
-            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
-                    .DEFAULT);
-
-            connection.setRequestProperty("Authorization", basicAuth);
-            connection.setRequestProperty("Accept", "application/json");
-            connection.setRequestProperty("Content-Type", "application/json");
-            connection.setRequestMethod("POST");
-            // connection.setDoInput(true);
-            //  connection.setDoOutput(true);
-            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.flush();
-            dos.close();
-
-            InputStream dis = connection.getInputStream();
-            BufferedReader br = new BufferedReader(new InputStreamReader(dis, "UTF-8"));
-
-            String jsonData = "";
-            while ((jsonData = br.readLine()) != null) {
-                sb.append(jsonData);
-                //
-            }
-            dis.close();
-            br.close();
-
-            return sb.toString();
-
-        } catch (IOException ex) {
-            Log.e(TAG, "doInBackground: ", ex);
-        }
-        return sb.toString();
-    }
-
-    @Override
-    protected void onPostExecute(String s) {
-        Log.i("RUN OutPut", s);
-        progressDialog.dismiss();
-        Intent runIntent = new Intent();
-        runIntent.setClass(this.context, RunResult.class);
-        runIntent.putExtra("runresult", s);
-        this.context.startActivity(runIntent);
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index f953ee9..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowDB.java
+++ /dev/null
@@ -1,328 +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 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 static final String TAG = "WorkflowDB";
-    private final String ENTITY_KEY;
-    private final ArrayList<String> ITEM_IDS;
-    private Context context;
-    private SharedPreferences msharedpreference;
-    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;
-        ITEM_IDS = new ArrayList<String>();
-        dataobj = new JSONObject();
-    }
-
-    /**
-     * 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) {
-                    Log.e(TAG, "get: ", e);
-                    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(TAG, "" + dataobj.toString(2));
-            operationSucceeded = true;
-        } catch (JSONException e) {
-            Log.e(TAG, "update: ", e);
-            operationSucceeded = false;
-        }
-        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) {
-                    Log.e(TAG, "get: ", e);
-                    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) {
-                Log.e(TAG, "save: ", e);
-                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
-            Log.d(TAG, 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();
-            Log.d(TAG, "Insert benchmark length = " + (end - start));
-            return 1;
-        } catch (JSONException e) {
-            Log.e(TAG, "insert: ", e);
-        }
-        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/b93d871c/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowDataCallback.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowDataCallback.java b/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowDataCallback.java
deleted file mode 100644
index 6b6a41d..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowDataCallback.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
-* 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.
-*/
-
-package org.apache.taverna.mobile.utils;
-
-import org.apache.taverna.mobile.tavernamobile.Workflow;
-
-import java.util.List;
-
-/**
- * Callback for when data is ready to be put into the workflow adapter
- * Created by root on 6/24/15.
- */
-public interface WorkflowDataCallback {
-
-    public void onWorkflowDataReady(List<Workflow> data);
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index b4b5c53..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowDownloadManager.java
+++ /dev/null
@@ -1,118 +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.apache.taverna.mobile.R;
-
-import android.app.DownloadManager;
-import android.app.Notification;
-import android.app.NotificationManager;
-import android.content.Context;
-import android.database.Cursor;
-import android.media.RingtoneManager;
-import android.net.Uri;
-import android.support.v4.app.NotificationCompat;
-
-import java.io.File;
-
-/**
- * Created by root on 6/11/15.
- */
-public class WorkflowDownloadManager {
-    private DownloadManager downloadManager;
-    private Context context;
-    private boolean isDownloading;
-
-    public WorkflowDownloadManager(Context ctx, DownloadManager downloadManager) {
-        this.context = ctx;
-        this.downloadManager = downloadManager;
-        this.isDownloading = false;
-    }
-
-    public WorkflowDownloadManager(Context context) {
-        this.context = context;
-        this.downloadManager = (DownloadManager) context.getSystemService(Context.DOWNLOAD_SERVICE);
-        this.isDownloading = false;
-    }
-
-    /**
-     * 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 {
-
-        DownloadManager.Query query = new DownloadManager.Query();
-        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));
-        }
-        // 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());
-
-            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 |
-                    DownloadManager.Request.VISIBILITY_VISIBLE);
-
-            long id = this.downloadManager.enqueue(request);
-
-            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);
-        notificationBuilder.setContentText(message)
-                .setContentTitle("Workflow Download")
-                .setSmallIcon(R.mipmap.ic_launcher)
-                .setAutoCancel(true)
-                .setVisibility(Notification.VISIBILITY_PUBLIC)
-                .setWhen(0)
-                .setSound(RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION));
-        Notification nf = notificationBuilder.build();
-        NotificationManager notificationManager = (NotificationManager) context.getSystemService
-                (Context.NOTIFICATION_SERVICE);
-        notificationManager.notify(1, nf);
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index 64fee15..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowLoader.java
+++ /dev/null
@@ -1,106 +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 com.thebuzzmedia.sjxp.rule.IRule;
-
-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;
-import java.net.MalformedURLException;
-import java.net.ProtocolException;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * Created by Larry Akah on 6/13/15.
- */
-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;
-
-    public WorkflowLoader(Context context, SwipeRefreshLayout sw) {
-        this.ctx = context;
-        this.refreshLayout = sw;
-        this.userWorkflows = new ArrayList<Workflow>();
-    }
-
-    @Override
-    protected void onPreExecute() {
-        super.onPreExecute();
-        refreshLayout.setRefreshing(true);
-    }
-
-    @Override
-    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");
-        WorkflowParser xmlParser = new WorkflowParser(new IRule[]{wkflowRule, workflowNameRule});
-        try {
-            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]);
-
-            InputStream dis = connection.getInputStream();
-            xmlParser.parse(dis, this.userWorkflows);
-
-        } catch (MalformedURLException e) {
-            Log.e(TAG, "doInBackground: ", e);
-        } catch (ProtocolException e) {
-            Log.e(TAG, "doInBackground: ", e);
-        } catch (IOException e) {
-            Log.e(TAG, "doInBackground: ", e);
-        } catch (Exception ex) {
-            Log.e(TAG, "doInBackground: ", ex);
-        }
-        return this.userWorkflows;
-    }
-
-    @Override
-    protected void onPostExecute(Object o) {
-        refreshLayout.setRefreshing(false);
-        Log.i(TAG, "Workflow Count: " + this.userWorkflows.size());
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index bb56ec9..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowLoaderMain.java
+++ /dev/null
@@ -1,45 +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.apache.taverna.mobile.tavernamobile.Workflow;
-
-import android.content.AsyncTaskLoader;
-import android.content.Context;
-
-import java.util.List;
-
-/**
- * Created by root on 6/23/15.
- */
-public abstract class WorkflowLoaderMain extends AsyncTaskLoader<List<Workflow>> {
-
-    public WorkflowLoaderMain(Context context) {
-        super(context);
-    }
-
-    public abstract List<Workflow> loadInBackground();
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index bde240d..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/utils/WorkflowOpen.java
+++ /dev/null
@@ -1,339 +0,0 @@
-/*
-* 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.
-*/
-
-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;
-import android.content.DialogInterface;
-import android.os.AsyncTask;
-import android.util.Base64;
-import android.util.Log;
-import android.widget.EditText;
-import android.widget.LinearLayout;
-import android.widget.ScrollView;
-import android.widget.TextView;
-
-import java.io.BufferedReader;
-import java.io.DataOutputStream;
-import java.io.File;
-import java.io.FileReader;
-import java.io.IOException;
-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
- */
-public class WorkflowOpen extends AsyncTask<String, Void, String> {
-
-    private static final String TAG = "WorkflowOpen";
-    TavernaPlayerAPI tavernaPlayerAPI = new TavernaPlayerAPI();
-    private Context context;
-    private ProgressDialog progressDialog;
-
-    public WorkflowOpen(Context context) {
-        this.context = context;
-        progressDialog = new ProgressDialog(this.context);
-    }
-
-    @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
-     */
-    @Override
-    protected String doInBackground(String... params) {
-        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).getplayerBaseUrl() + "workflows" +
-                    ".json";
-            URL posturl = new URL(playerurl);
-            HttpURLConnection connection = (HttpURLConnection) posturl.openConnection();
-
-            String user = tavernaPlayerAPI.getPlayerUserName(this.context) + ":" +
-                    tavernaPlayerAPI.getPlayerUserPassword(this.context);
-            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 {
-                BufferedReader br = new BufferedReader(new FileReader(objectFile));
-
-                while ((str = br.readLine()) != null) {
-                    sb.append(str);
-                    sb.append('\n');
-                }
-                br.close();
-            } catch (IOException e) {
-                Log.e(TAG, "doInBackground: ", e);
-            }
-
-            String data = "{\"document\":\"data:application/octet-stream;base64," +
-                    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
-            sb.delete(0, sb.length() - 1);
-            Log.i(TAG, "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.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.flush();
-            dos.close();
-
-            InputStream dis = connection.getInputStream();
-            BufferedReader br = new BufferedReader(new InputStreamReader(dis, "UTF-8"));
-            while ((str = br.readLine()) != null) {
-                sb.append(str);
-            }
-            Log.i(TAG, "Post Response Code: " + connection.getResponseCode());
-            Log.i(TAG, "Post response message: " + connection.getResponseMessage());
-            connection.disconnect();
-        } catch (IOException e) {
-            Log.e(TAG, "doInBackground: ", e);
-            sb.append("Error reading remote workflow. Please try again later");
-        }
-
-        return sb.toString();
-    }
-
-    /**
-     * 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();
-        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) {
-            Log.e(TAG, "onPostExecute: ", e);
-        }
-
-    }
-
-    //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;
-    }
-
-    private class WorkflowRunTask extends AsyncTask<String, Void, String> {
-
-        private Context context;
-        private AlertDialog.Builder alertDialogBuilder;
-        private AlertDialog runDialog;
-
-        private WorkflowRunTask(Context context) {
-            this.context = context;
-        }
-
-        @Override
-        protected void onPreExecute() {
-            super.onPreExecute();
-            progressDialog.setMessage(this.context.getResources().getString(R.string.fetchrun));
-            progressDialog.show();
-        }
-
-        @Override
-        protected String doInBackground(String... params) {
-            StringBuffer sb = new StringBuffer();
-            try {
-
-                URL workflowurl = new URL(new TavernaPlayerAPI(this.context)
-                        .mPlayerRunFrameworkUrl + params[0]);
-                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
-                        .DEFAULT);
-
-                connection.setRequestProperty("Authorization", basicAuth);
-                connection.setRequestProperty("Accept", "application/json");
-                connection.setRequestMethod("GET");
-                connection.connect(); //send request
-                Log.i("RESPONSE Code", "" + connection.getResponseCode());
-                Log.i("RESPONSE Message", "" + connection.getResponseMessage());
-                Log.i("Authorization ", "" + connection.getRequestProperty("Authorization"));
-
-                InputStream dis = connection.getInputStream();
-                BufferedReader br = new BufferedReader(new InputStreamReader(dis, "UTF-8"));
-
-                String jsonData = "";
-                while ((jsonData = br.readLine()) != null) {
-                    sb.append(jsonData);
-                }
-                dis.close();
-                br.close();
-                return sb.toString();
-
-            } catch (IOException ex) {
-                Log.e(TAG, "doInBackground: ", ex);
-            }
-            return sb.toString();
-        }
-
-        @Override
-        protected void onPostExecute(String result) {
-            //show the skeleton to the user in a dialog box
-            final Context ctx = this.context;
-            final LinearLayout ll = new LinearLayout(ctx);
-            ScrollView sv = new ScrollView(ctx);
-            ll.setOrientation(LinearLayout.VERTICAL);
-            sv.addView(ll);
-
-            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
-                ll.addView(createTextView(ctx, name));
-                final JSONArray attr_array = mjson.getJSONArray("inputs_attributes");
-                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));
-                }
-
-                alertDialogBuilder = new AlertDialog.Builder(ctx);
-                alertDialogBuilder.setView(sv);
-                //               alertDialogBuilder.setMessage(result);
-                alertDialogBuilder.setIcon(ctx.getResources().getDrawable(R.mipmap.ic_launcher));
-                alertDialogBuilder.setTitle("New Workflow Run");
-                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++) {
-                            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
-
-                            } catch (JSONException e) {
-                                Log.e(TAG, "onClick: ", e);
-                            }
-
-                        }
-                        try {
-                            json.put("inputs_attributes", attr_array);
-                            Log.i("RUN FRAMEWORK", json.toString(2));
-                            //start a run task to execute the run.
-                            new RunTask(ctx).execute(json.toString());
-                        } catch (JSONException e) {
-                            Log.e(TAG, "onClick: ", e);
-                        }
-
-                    }
-                });
-                alertDialogBuilder.setNegativeButton("Cancel", new DialogInterface
-                        .OnClickListener() {
-
-                    @Override
-                    public void onClick(DialogInterface dialogInterface, int i) {
-                        dialogInterface.dismiss();
-                    }
-                });
-
-                runDialog = alertDialogBuilder.create();
-
-            } catch (JSONException e) {
-                Log.e(TAG, "onPostExecute: ", e);
-            }
-            progressDialog.dismiss();
-            runDialog.show();
-        }
-    }
-}
-
-
-

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index 047b282..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/AvatarXMLParser.java
+++ /dev/null
@@ -1,47 +0,0 @@
-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
- * 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 com.thebuzzmedia.sjxp.XMLParser;
-import com.thebuzzmedia.sjxp.XMLParserException;
-import com.thebuzzmedia.sjxp.rule.IRule;
-
-import org.apache.taverna.mobile.fragments.WorkflowItemFragment;
-import org.apache.taverna.mobile.tavernamobile.User;
-
-/**
- * Created by Larry Akah on 6/29/15.
- */
-public class AvatarXMLParser extends XMLParser {
-
-    public AvatarXMLParser(IRule[] rules) throws IllegalArgumentException, XMLParserException {
-        super(rules);
-    }
-
-    @Override
-    protected void doEndDocument(Object userObject) {
-        WorkflowItemFragment.updateAvatar((User) userObject);
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index 638e96c..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/MyExperimentXmlParserRules.java
+++ /dev/null
@@ -1,380 +0,0 @@
-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
- * 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 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 android.text.Html;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * Created by Larry Akah on 6/23/15.
- */
-public class MyExperimentXmlParserRules {
-
-    public static final Workflow mWorkflow = new Workflow();
-
-    public MyExperimentXmlParserRules() {
-    }
-
-    public Workflow getWorkflowHere() {
-        return mWorkflow;
-    }
-
-    //parse a single workflow from myexperiment
-    public static final class WorkflowDetailRule extends DefaultRule {
-
-        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) {
-                case 0: //uri
-                    mWorkflow.setWorkflowDetailsUrl(value);
-                    ((Workflow) userObject).setWorkflowDetailsUrl(value);
-                    break;
-                case 1: //resource
-                    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.setWorkflowVersions(value);
-                    ((Workflow) userObject).setWorkflowVersions(value);
-                    break;
-            }
-        }
-    }
-
-    public static class TitleRule extends DefaultRule {
-
-        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.setWorkflowTitle(text);
-            ((Workflow) userObject).setWorkflowTitle(text);
-        }
-    }
-
-    public static class DescriptionRule extends DefaultRule {
-
-        public DescriptionRule(Type type, String locationPath, String... attributeNames) throws
-                IllegalArgumentException {
-            super(type, locationPath, attributeNames);
-        }
-
-        @Override
-        public void handleParsedCharacters(XMLParser parser, String text, Object userObject) {
-
-            mWorkflow.setWorkflowDescription(String.valueOf(Html.fromHtml(text)));
-            ((Workflow) userObject).setWorkflowDescription(String.valueOf(Html.fromHtml(text)));
-        }
-    }
-
-    public static class TypeRule extends DefaultRule {
-
-        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) {
-                case 0:
-                    break;
-                case 1:
-                    break;
-                case 2:
-                    break;
-
-            }
-        }
-
-        @Override
-        public void handleParsedCharacters(XMLParser parser, String text, Object userObject) {
-            mWorkflow.setWorkflowType(text);
-            ((Workflow) userObject).setWorkflowType(text);
-        }
-    }
-
-    public static class UploaderRule extends DefaultRule {
-
-        User muser;
-
-        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) {
-                case 0:
-                    muser.setWebsite(value);
-                    if ((userObject instanceof User)) {
-                        ((User) userObject).setWebsite(value);
-                    }
-                    break;
-                case 1:
-                    muser.setDetailsUri(value);
-                    if ((userObject instanceof User)) {
-                        ((User) userObject).setDetailsUri(value);
-                    }
-                    break;
-                case 2:
-                    muser.setId(value);
-                    if ((userObject instanceof User)) {
-                        ((User) userObject).setId(value);
-                    }
-                    break;
-            }
-        }
-
-        @Override
-        public void handleParsedCharacters(XMLParser parser, String text, Object userObject) {
-            muser.setName(text);
-            mWorkflow.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 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) {
-                case 0:
-                    ((User) userObject).setAvatarUrl(value);
-                    break;
-                case 1:
-                    ((User) userObject).setDetailsUri(value);
-                    break;
-                case 2:
-                    ((User) userObject).setId(value);
-                    break;
-            }
-        }
-
-        @Override
-        public void handleParsedCharacters(XMLParser parser, String text, Object userObject) {
-            ((User) userObject).setName(text);
-            //((Workflow)userObject).setUploader(muser);
-            //System.out.println("Author Name: "+text);
-        }
-    }
-
-    //rule for the date the workflow was created/uploaded
-    public static class DateRule extends DefaultRule {
-
-        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.setWorkflowDatecreated(text);
-            ((Workflow) userObject).setWorkflowDatecreated(text);
-
-        }
-    }
-
-    public static class PreviewRule extends DefaultRule {
-
-        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.setWorkflowPreview(text);
-            ((Workflow) userObject).setWorkflowPreview(text);
-        }
-    }
-
-    public static class LicenceTypeRule extends DefaultRule {
-
-        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) {
-            super.handleParsedAttribute(parser, index, value, userObject);
-        }
-
-        @Override
-        public void handleParsedCharacters(XMLParser parser, String text, Object userObject) {
-            mWorkflow.setWorkflowLicenceType("Licence By " + text);
-            ((Workflow) userObject).setWorkflowLicenceType("Licence By " + text);
-        }
-    }
-
-    //set download link for the workflow
-    public static class ContentUriRule extends DefaultRule {
-
-        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.setWorkflowRemoteUrl(text);
-            ((Workflow) userObject).setWorkflowRemoteUrl(text);
-        }
-    }
-
-    public static class ContentTypeRule extends DefaultRule {
-
-        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.setWorkflowContentType(text);
-            ((Workflow) userObject).setWorkflowContentType(text);
-        }
-    }
-
-    public static class TagsRule extends DefaultRule {
-
-        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) {
-            super.handleParsedAttribute(parser, index, value, userObject);
-        }
-
-        @Override
-        public void handleParsedCharacters(XMLParser parser, String text, Object userObject) {
-            mWorkflow.setWorkflowTags(new ArrayList<String>() {
-            });
-            ((Workflow) userObject).setWorkflowTags(new ArrayList<String>() {
-            });
-
-        }
-    }
-
-    /**
-     * parse workflows from myExperiment
-     */
-    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 {
-            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);
-        }
-
-        @Override
-        public void handleParsedAttribute(XMLParser parser, int index, String value, Object
-                userObject) {
-
-            switch (index) {
-                case 0:
-                    desc = "To view workflow on the web, click " + value;
-                    break;
-                case 1:
-                    uri = value;
-                    break;
-                case 2:
-                    id = Integer.parseInt(value);
-                    break;
-                case 3:
-                    version = value;
-                    break;
-            }
-        }
-
-        @Override
-        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.setWorkflowDetailsUrl(uri);
-            this.workflow.setWorkflowTitle(text);
-            this.workflow.setWorkflowAuthor("");
-            wlist.add(this.workflow);
-            //WorkflowLoader.loadedWorkflows.add(this.workflow);
-            ((List<Workflow>) workflowListObject).add(this.workflow);
-            this.workflow = null;
-        }
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/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
deleted file mode 100644
index 9ec0bcd..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/WorkflowDetailParser.java
+++ /dev/null
@@ -1,56 +0,0 @@
-package org.apache.taverna.mobile.utils.xmlparsers;
-
-import com.thebuzzmedia.sjxp.XMLParser;
-import com.thebuzzmedia.sjxp.XMLParserException;
-import com.thebuzzmedia.sjxp.rule.IRule;
-
-import org.apache.taverna.mobile.fragments.WorkflowItemFragment;
-import org.apache.taverna.mobile.fragments.workflowdetails.WorkflowdetailFragment;
-import org.apache.taverna.mobile.tavernamobile.User;
-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
- * 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.
- */
-
-/**
- * Parse details from the xml output of myexperiment API
- * Created by Larry Akah on 6/24/15.
- */
-public class WorkflowDetailParser extends XMLParser {
-
-    public WorkflowDetailParser(IRule[] rules) throws IllegalArgumentException, XMLParserException {
-        super(rules);
-    }
-
-    //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);
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/WorkflowParser.java
----------------------------------------------------------------------
diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/WorkflowParser.java b/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/WorkflowParser.java
deleted file mode 100644
index c73037a..0000000
--- a/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/WorkflowParser.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
-* 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.
-*/
-
-package org.apache.taverna.mobile.utils.xmlparsers;
-
-import com.thebuzzmedia.sjxp.XMLParser;
-import com.thebuzzmedia.sjxp.XMLParserException;
-import com.thebuzzmedia.sjxp.rule.IRule;
-
-import org.apache.taverna.mobile.fragments.WorkflowItemFragment;
-import org.apache.taverna.mobile.tavernamobile.Workflow;
-
-import java.util.List;
-
-/**
- * Workflow end document class for detecting when the complete list of workflows have been read out
- * Created by Larry Akah on 6/24/15.
- */
-
-public class WorkflowParser extends XMLParser {
-
-    public WorkflowParser(IRule[] rules) throws IllegalArgumentException, XMLParserException {
-        super(rules);
-    }
-
-    @Override
-    protected void doEndDocument(Object userObject) {
-        WorkflowItemFragment.updateWorkflowUI((List<Workflow>) userObject);
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/src/main/res/layout/activity_run_result.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/layout/activity_run_result.xml b/app/src/main/res/layout/activity_run_result.xml
deleted file mode 100644
index 77026cf..0000000
--- a/app/src/main/res/layout/activity_run_result.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<!--
-    Apache Taverna Mobile
-    Copyright 2016 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.
--->
-<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:tools="http://schemas.android.com/tools" android:id="@+id/container"
-    android:layout_width="match_parent" android:layout_height="match_parent"
-    tools:context="org.apache.taverna.mobile.activities.RunResult" tools:ignore="MergeRootFrame" />

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/src/main/res/layout/activity_workflow_detail.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/layout/activity_workflow_detail.xml b/app/src/main/res/layout/activity_workflow_detail.xml
deleted file mode 100644
index 56edf11..0000000
--- a/app/src/main/res/layout/activity_workflow_detail.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-<!--
-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.
--->
-<android.support.v4.view.ViewPager xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:tools="http://schemas.android.com/tools"
-    android:id="@+id/pager"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    tools:context="org.apache.taverna.mobile.activities.WorkflowDetailActivity" >
-    <android.support.v4.view.PagerTitleStrip
-        android:id="@+id/pager_title_strip"
-        android:layout_width="match_parent"
-        android:layout_height="50sp"
-        android:layout_gravity="top"
-        android:background="#33b5e5"
-        android:textColor="#fff"
-        android:paddingTop="1dp"
-        android:paddingBottom="1dp"
-        android:animateLayoutChanges="true"
-        android:elevation="@dimen/abc_text_size_menu_material"
-        />
-
-</android.support.v4.view.ViewPager>

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/src/main/res/layout/favorite_item_layout.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/layout/favorite_item_layout.xml b/app/src/main/res/layout/favorite_item_layout.xml
deleted file mode 100644
index 0c9cf3e..0000000
--- a/app/src/main/res/layout/favorite_item_layout.xml
+++ /dev/null
@@ -1,138 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-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.
--->
-<android.support.v7.widget.CardView
-	xmlns:android="http://schemas.android.com/apk/res/android"
-	xmlns:card_view="http://schemas.android.com/apk/res-auto"
-	xmlns:app="http://schemas.android.com/apk/res-auto"
-	android:layout_width="match_parent"
-	android:layout_height="wrap_content"
-	card_view:cardElevation="@dimen/abc_text_size_menu_material"
-	card_view:cardBackgroundColor="@color/background_floating_material_light"
-	android:layout_marginBottom="@dimen/cardMarginVertical"
-	android:layout_marginLeft="@dimen/cardMarginHorizontal"
-	android:layout_marginRight="@dimen/cardMarginHorizontal"
-	android:layout_marginTop="@dimen/cardMarginVertical"
-	card_view:cardCornerRadius="2dp"
-	card_view:paddingEnd="2dp"
-	card_view:paddingStart="2dp">
-
-    <LinearLayout
-        android:orientation="vertical"
-        android:layout_width="match_parent"
-        android:layout_height="match_parent">
-
-        <LinearLayout
-            android:orientation="horizontal"
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            >
-
-            <TextView
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:textAppearance="?android:attr/textAppearanceLarge"
-                android:id="@+id/author"
-                android:textSize="25sp"
-                android:elevation="5dp"
-                android:layout_weight="1" />
-
-            <ImageButton
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:id="@+id/favoriteButonDelete"
-                android:src="@android:drawable/ic_menu_delete"
-                android:background="#eee"
-                android:layout_gravity="right"
-                android:visibility="gone" />
-<!-- @drawable/ic_delete_favorite -->
-
-	        <android.support.design.widget.FloatingActionButton
-		        android:id="@+id/favoriteButtonDelete"
-		        android:layout_width="wrap_content"
-		        android:layout_height="wrap_content"
-		        app:layout_anchorGravity="bottom|right|end"
-		        android:layout_margin="5dp"
-		        android:src="@android:drawable/ic_menu_delete" />
-        </LinearLayout>
-
-        <LinearLayout
-                android:id="@+id/linearlayout_workflow_info"
-                android:layout_width="match_parent"
-                android:layout_height="match_parent"
-                android:orientation="horizontal">
-
-                <LinearLayout
-                    android:orientation="vertical"
-                    android:layout_width="match_parent"
-                    android:layout_height="wrap_content"
-                    android:layout_marginLeft="5dp">
-
-                    <TextView
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:text="@string/wktitle"
-                        android:id="@+id/textView9"
-                        android:layout_marginTop="5dp" />
-
-                    <TextView
-                        android:layout_width="match_parent"
-                        android:layout_height="wrap_content"
-                        android:textAppearance="?android:attr/textAppearanceLarge"
-                        android:id="@+id/favorite_title"
-                        android:hint="@string/title_favorite" />
-
-                    <TextView
-                        android:layout_width="wrap_content"
-                        android:layout_height="wrap_content"
-                        android:text="@string/marked"
-                        android:id="@+id/textView10"
-                        android:layout_gravity="center_horizontal" />
-
-                    <TextView
-                        android:layout_width="match_parent"
-                        android:layout_height="wrap_content"
-                        android:textAppearance="?android:attr/textAppearanceLarge"
-                        android:hint="Date workflow was marked"
-                        android:id="@+id/date_set"
-                        android:typeface="serif"
-                        android:textColor="@color/material_deep_teal_200"
-                        android:textSize="15dp"
-                        android:focusableInTouchMode="false"
-                        android:layout_gravity="center_horizontal"
-                        android:gravity="center_horizontal" />
-
-                    <Button
-                        android:layout_width="match_parent"
-                        android:layout_height="wrap_content"
-                        android:text="@string/workflow_read"
-                        android:id="@+id/buttonOpenFavorite"
-                        android:layout_gravity="center_horizontal"
-                        android:layout_margin="10dp"
-                        android:background="#33b5e5"
-                        android:elevation="5dp" />
-
-                </LinearLayout>
-
-            </LinearLayout>
-
-    </LinearLayout>
-
-</android.support.v7.widget.CardView>

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/src/main/res/layout/fragment_dashboard_main.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/layout/fragment_dashboard_main.xml b/app/src/main/res/layout/fragment_dashboard_main.xml
deleted file mode 100644
index 32081e6..0000000
--- a/app/src/main/res/layout/fragment_dashboard_main.xml
+++ /dev/null
@@ -1,39 +0,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.
-
--->
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    tools:context="org.apache.taverna.mobile.fragments.FavoriteFragment"
-    android:orientation="vertical"
-    android:padding="2dp">
-
-    <android.support.v7.widget.RecyclerView
-        xmlns:recycler_view="http://schemas.android.com/apk/res-auto"
-        android:id="@+id/favoriteList"
-        android:theme="@style/Theme.AppCompat.Light"
-        android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:background="@color/button_material_light">
-
-    </android.support.v7.widget.RecyclerView>
-
-    <TextView android:id="@android:id/empty"
-        android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:gravity="center"
-        android:visibility="gone"
-        android:text="@string/favorite_empty"/>
-</LinearLayout>

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/src/main/res/layout/fragment_item_grid.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/layout/fragment_item_grid.xml b/app/src/main/res/layout/fragment_item_grid.xml
deleted file mode 100644
index 6ba0ef0..0000000
--- a/app/src/main/res/layout/fragment_item_grid.xml
+++ /dev/null
@@ -1,51 +0,0 @@
-<?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.
--->
-<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:tools="http://schemas.android.com/tools"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    tools:context="org.apache.taverna.mobile.fragments.WorkflowItemFragment">
-
-   <!-- <GridView android:id="@+id/gridlist"
-        android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:numColumns="2">-->
-    <android.support.v4.widget.SwipeRefreshLayout
-    android:id="@+id/refresh"
-    android:layout_height="match_parent"
-    android:layout_width="match_parent">
-        <android.support.v7.widget.RecyclerView
-            xmlns:recycler_view="http://schemas.android.com/apk/res-auto"
-            android:id="@android:id/list"
-            android:theme="@style/Theme.AppCompat.Light"
-            android:layout_width="match_parent"
-            android:layout_height="match_parent"
-            android:background="@color/button_material_light"
-            android:scrollbars="vertical"
-            android:scrollbarStyle="insideOverlay"
-            android:fadeScrollbars="true"
-            ></android.support.v7.widget.RecyclerView>
-       <!-- </GridView>-->
-</android.support.v4.widget.SwipeRefreshLayout>
-    <TextView android:id="@android:id/empty"
-        android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:visibility="gone"
-        android:background="@drawable/ic_viewworkflow"
-        android:gravity="center"
-        android:text="@string/workflow_empty"/>
-
-</FrameLayout>

http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/b93d871c/app/src/main/res/layout/fragment_item_list.xml
----------------------------------------------------------------------
diff --git a/app/src/main/res/layout/fragment_item_list.xml b/app/src/main/res/layout/fragment_item_list.xml
deleted file mode 100644
index 0acec8c..0000000
--- a/app/src/main/res/layout/fragment_item_list.xml
+++ /dev/null
@@ -1,50 +0,0 @@
-<?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.
--->
-<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:tools="http://schemas.android.com/tools"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    tools:context="org.apache.taverna.mobile.fragments.WorkflowItemFragment">
-
-    <!--<ListView android:id="@android:id/list" android:layout_width="match_parent"-->
-        <!--android:layout_height="match_parent" />-->
-    <android.support.v4.widget.SwipeRefreshLayout
-        android:id="@+id/refresh"
-        android:layout_height="match_parent"
-        android:layout_width="match_parent">
-    <android.support.v7.widget.RecyclerView
-        xmlns:recycler_view="http://schemas.android.com/apk/res-auto"
-        android:id="@android:id/list"
-        android:theme="@style/Theme.AppCompat.Light"
-        android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:background="@color/button_material_light"
-        android:scrollbars="vertical"
-        android:scrollbarStyle="insideOverlay"
-        android:fadeScrollbars="true">
-
-    </android.support.v7.widget.RecyclerView>
-</android.support.v4.widget.SwipeRefreshLayout>
-    <TextView
-        android:id="@android:id/empty"
-        android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:gravity="center"
-        android:visibility="gone"
-        android:background="@drawable/ic_viewworkflow"
-        android:text="@string/workflow_empty"/>
-
-</FrameLayout>