From 2d675ed9b05a4ee0d77a01e3035365b8c6dfda4b Mon Sep 17 00:00:00 2001 From: Alinson Xavier Date: Tue, 22 Mar 2016 21:53:58 -0400 Subject: [PATCH] Use DB transaction to perform import --- .../uhabits/io/HabitBullCSVImporter.java | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/org/isoron/uhabits/io/HabitBullCSVImporter.java b/app/src/main/java/org/isoron/uhabits/io/HabitBullCSVImporter.java index efa4cd933..ee583e4bc 100644 --- a/app/src/main/java/org/isoron/uhabits/io/HabitBullCSVImporter.java +++ b/app/src/main/java/org/isoron/uhabits/io/HabitBullCSVImporter.java @@ -20,8 +20,8 @@ package org.isoron.uhabits.io; import android.support.annotation.NonNull; -import android.util.Log; +import com.activeandroid.ActiveAndroid; import com.opencsv.CSVReader; import org.isoron.helpers.DateHelper; @@ -46,7 +46,21 @@ public class HabitBullCSVImporter extends AbstractImporter } @Override - public void importHabitsFromFile(@NonNull File file) throws IOException + public void importHabitsFromFile(@NonNull final File file) throws IOException + { + ActiveAndroid.beginTransaction(); + try + { + parseFile(file); + ActiveAndroid.setTransactionSuccessful(); + } + finally + { + ActiveAndroid.endTransaction(); + } + } + + private void parseFile(@NonNull File file) throws IOException { CSVReader reader = new CSVReader(new FileReader(file)); HashMap habits = new HashMap<>();