DB error remove
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/7fa84c7b Tree: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/tree/7fa84c7b Diff: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/diff/7fa84c7b Branch: refs/heads/master Commit: 7fa84c7b9a63c0f677e6c4d9c6156094edc267ae Parents: 4d553b7 Author: Sagar <[email protected]> Authored: Mon Jul 4 16:11:20 2016 +0530 Committer: Sagar <[email protected]> Committed: Mon Jul 4 16:11:20 2016 +0530 ---------------------------------------------------------------------- .../taverna/mobile/data/local/DBHelper.java | 29 ++++++++++++-------- 1 file changed, 18 insertions(+), 11 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/7fa84c7b/app/src/main/java/org/apache/taverna/mobile/data/local/DBHelper.java ---------------------------------------------------------------------- diff --git a/app/src/main/java/org/apache/taverna/mobile/data/local/DBHelper.java b/app/src/main/java/org/apache/taverna/mobile/data/local/DBHelper.java index a6a86f8..7f3d538 100644 --- a/app/src/main/java/org/apache/taverna/mobile/data/local/DBHelper.java +++ b/app/src/main/java/org/apache/taverna/mobile/data/local/DBHelper.java @@ -29,7 +29,9 @@ public class DBHelper { for (Workflow workflow : workflows.getWorkflowList()) { if (!workflow.exists()) { workflow.save(); + } else { + updateWorkflow(workflow).save(); } @@ -41,32 +43,34 @@ public class DBHelper { } private Workflow updateWorkflow(Workflow workflow) { + Workflow workflow1 = SQLite.select() .from(Workflow.class) .where(Workflow_Table.id.eq(workflow.getId())) .querySingle(); + if (workflow1 != null) { - if (workflow.getDescription() == null || !workflow.getDescription().equals(workflow1.getDescription())) { + if (workflow.getDescription() != null) { workflow1.setDescription(workflow.getDescription()); } - if (workflow.getUpdatedAt() == null || !workflow.getUpdatedAt().equals(workflow1.getUpdatedAt())) { + if (workflow.getUpdatedAt() != null ) { workflow1.setUpdatedAt(workflow.getUpdatedAt()); } - if (workflow.getSvgUri() == null || !workflow.getSvgUri().equals(workflow1.getSvgUri())) { + if (workflow.getSvgUri() != null ) { workflow1.setSvgUri(workflow.getSvgUri()); } - if (workflow.getLicenseType() == null || !workflow.getLicenseType().equals(workflow1.getLicenseType())) { + if (workflow.getLicenseType() != null ) { workflow1.setLicenseType(workflow.getLicenseType()); } - if (workflow.getContentUri() == null || !workflow.getContentUri().equals(workflow1.getContentUri())) { + if (workflow.getContentUri() != null ) { workflow1.setContentUri(workflow.getContentUri()); } - if (workflow.getContentType() == null || !workflow.getContentType().equals(workflow1.getContentType())) { + if (workflow.getContentType() != null ) { workflow1.setContentUri(workflow.getContentType()); } @@ -82,7 +86,7 @@ public class DBHelper { workflow1.setVersion(workflow.getVersion()); } - return workflow; + return workflow1; } @@ -91,10 +95,13 @@ public class DBHelper { @Override public void call(Subscriber<? super Workflow> subscriber) { if (subscriber.isUnsubscribed()) return; - workflow.getType().save(); - workflow.getUploader().save(); - workflow.getLicenseType().save(); - workflow.save(); + if (!workflow.exists()) { + workflow.save(); + + } else { + + updateWorkflow(workflow).save(); + } subscriber.onNext(workflow); subscriber.onCompleted(); }
