Fixing workflow details loading incorrectly for workflows
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/817df3f0 Tree: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/tree/817df3f0 Diff: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/diff/817df3f0 Branch: refs/heads/master Commit: 817df3f05bf5b23033a7e2e5b49f956e8907a864 Parents: ab46333 Author: larrytech7 <larrya...@gmail.com> Authored: Sun Aug 9 00:39:27 2015 +0100 Committer: larrytech7 <larrya...@gmail.com> Committed: Sun Aug 9 00:39:27 2015 +0100 ---------------------------------------------------------------------- .../taverna/mobile/adapters/WorkflowAdapter.java | 4 +++- .../mobile/fragments/WorkflowItemFragment.java | 2 +- .../apache/taverna/mobile/tavernamobile/User.java | 4 ++++ .../org/apache/taverna/mobile/utils/HttpUtil.java | 2 +- .../xmlparsers/MyExperimentXmlParserRules.java | 18 +++++++++++++----- 5 files changed, 22 insertions(+), 8 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/817df3f0/app/src/main/java/org/apache/taverna/mobile/adapters/WorkflowAdapter.java ---------------------------------------------------------------------- diff --git a/app/src/main/java/org/apache/taverna/mobile/adapters/WorkflowAdapter.java b/app/src/main/java/org/apache/taverna/mobile/adapters/WorkflowAdapter.java index 973434c..0d1c99c 100644 --- a/app/src/main/java/org/apache/taverna/mobile/adapters/WorkflowAdapter.java +++ b/app/src/main/java/org/apache/taverna/mobile/adapters/WorkflowAdapter.java @@ -151,6 +151,7 @@ public class WorkflowAdapter extends RecyclerView.Adapter<WorkflowAdapter.ViewHo final long wid = workflowList.get(i).getId(); final String author = workflowList.get(i).getWorkflow_author(); +// final String author = workflowList.get(i).getUploader().getName(); final String title = workflowList.get(i).getWorkflow_title(); String description = workflowList.get(i).getWorkflow_description(); final String uri = workflowList.get(i).getWorkflow_details_url(); @@ -306,7 +307,8 @@ public class WorkflowAdapter extends RecyclerView.Adapter<WorkflowAdapter.ViewHo connection.connect(); InputStream input = connection.getInputStream(); IRule avatarRule = new MyExperimentXmlParserRules.UploaderRule(IRule.Type.ATTRIBUTE,"/workflow/uploader", "resource","uri","id"); - WorkflowDetailParser detailMinParser = new WorkflowDetailParser(new IRule[]{avatarRule}); + 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) { http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/817df3f0/app/src/main/java/org/apache/taverna/mobile/fragments/WorkflowItemFragment.java ---------------------------------------------------------------------- diff --git a/app/src/main/java/org/apache/taverna/mobile/fragments/WorkflowItemFragment.java b/app/src/main/java/org/apache/taverna/mobile/fragments/WorkflowItemFragment.java index f279e4b..0228a24 100644 --- a/app/src/main/java/org/apache/taverna/mobile/fragments/WorkflowItemFragment.java +++ b/app/src/main/java/org/apache/taverna/mobile/fragments/WorkflowItemFragment.java @@ -354,7 +354,7 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout author.getUserViewHolder().author_profile.setImageBitmap(avatarCache.get(author.getDetails_uri())); // ((ImageView) rootView.findViewById(R.id.author_profile_image)).setImageBitmap(avatarCache.get(author.getDetails_uri())); } - System.out.println("Author cached ID "+author.getDetails_uri()); + System.out.println("Author cached ID "+author.getDetails_uri()+"\n Name: "+author.getName()); } } }); http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/817df3f0/app/src/main/java/org/apache/taverna/mobile/tavernamobile/User.java ---------------------------------------------------------------------- diff --git a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/User.java b/app/src/main/java/org/apache/taverna/mobile/tavernamobile/User.java index afbba48..09ca6e5 100644 --- a/app/src/main/java/org/apache/taverna/mobile/tavernamobile/User.java +++ b/app/src/main/java/org/apache/taverna/mobile/tavernamobile/User.java @@ -70,6 +70,10 @@ public class User { return userViewHolder; } + public void setUserViewHolder(WorkflowAdapter.ViewHolder userViewHolder) { + this.userViewHolder = userViewHolder; + } + public String getRow_id() { return this.row_id; } http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/817df3f0/app/src/main/java/org/apache/taverna/mobile/utils/HttpUtil.java ---------------------------------------------------------------------- diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/HttpUtil.java b/app/src/main/java/org/apache/taverna/mobile/utils/HttpUtil.java index 9eb4cba..21d92af 100644 --- a/app/src/main/java/org/apache/taverna/mobile/utils/HttpUtil.java +++ b/app/src/main/java/org/apache/taverna/mobile/utils/HttpUtil.java @@ -47,7 +47,7 @@ import java.net.HttpURLConnection; public class HttpUtil { public <T> Object doPostAuthenticate(){ - User muser = new User(""); + User muser = new User("",null); return muser; } http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/817df3f0/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/MyExperimentXmlParserRules.java ---------------------------------------------------------------------- diff --git a/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/MyExperimentXmlParserRules.java b/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/MyExperimentXmlParserRules.java index d42e3c9..14ec7b5 100644 --- a/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/MyExperimentXmlParserRules.java +++ b/app/src/main/java/org/apache/taverna/mobile/utils/xmlparsers/MyExperimentXmlParserRules.java @@ -157,6 +157,9 @@ public class MyExperimentXmlParserRules { break; case 2: muser.setId(value); + if( (userObject instanceof User)){ + ((User)userObject).setId(value); + } break; } } @@ -165,15 +168,19 @@ public class MyExperimentXmlParserRules { public void handleParsedCharacters(XMLParser parser, String text, Object userObject) { muser.setName(text); mWorkflow.setUploader(muser); - ((Workflow)userObject).setUploader(muser); + + if( (userObject instanceof User)){ + ((User)userObject).setName(text); + }else{ + ((Workflow)userObject).setUploader(muser); + } } } -//rule used to parse author from main page + //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 @@ -195,9 +202,10 @@ public class MyExperimentXmlParserRules { 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 + //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 { @@ -242,7 +250,7 @@ public class MyExperimentXmlParserRules { ((Workflow)userObject).setWorkflow_licence_type("Licence By "+text); } } -//set download link for the workflow + //set download link for the workflow public static class ContentUriRule extends DefaultRule{ public ContentUriRule(Type type, String locationPath, String... attributeNames) throws IllegalArgumentException {