diff options
Diffstat (limited to 'src/de/danoeh/antennapod/asynctask/OpmlImportWorker.java')
-rw-r--r-- | src/de/danoeh/antennapod/asynctask/OpmlImportWorker.java | 37 |
1 files changed, 15 insertions, 22 deletions
diff --git a/src/de/danoeh/antennapod/asynctask/OpmlImportWorker.java b/src/de/danoeh/antennapod/asynctask/OpmlImportWorker.java index 7498b93de..2c1d30bdb 100644 --- a/src/de/danoeh/antennapod/asynctask/OpmlImportWorker.java +++ b/src/de/danoeh/antennapod/asynctask/OpmlImportWorker.java @@ -1,9 +1,6 @@ package de.danoeh.antennapod.asynctask; -import java.io.File; -import java.io.FileNotFoundException; -import java.io.FileReader; -import java.io.IOException; +import java.io.*; import java.util.ArrayList; import org.xmlpull.v1.XmlPullParserException; @@ -26,35 +23,31 @@ public class OpmlImportWorker extends private static final String TAG = "OpmlImportWorker"; private Context context; - private File file; // path to opml file private Exception exception; private ProgressDialog progDialog; - public OpmlImportWorker(Context context, File file) { - super(); - this.context = context; - this.file = file; - } + private Reader mReader; + + public OpmlImportWorker(Context context, Reader reader) { + super(); + this.context = context; + this.mReader=reader; + } @Override protected ArrayList<OpmlElement> doInBackground(Void... params) { if (AppConfig.DEBUG) Log.d(TAG, "Starting background work"); - FileReader reader = null; - // Create reader - try { - reader = new FileReader(file); - if (AppConfig.DEBUG) Log.d(TAG, "Parsing " + file.toString()); - } catch (FileNotFoundException e) { - e.printStackTrace(); - exception = e; - return null; - } + + if (mReader==null) { + return null; + } + OpmlReader opmlReader = new OpmlReader(); try { - ArrayList<OpmlElement> result = opmlReader.readDocument(reader); - reader.close(); + ArrayList<OpmlElement> result = opmlReader.readDocument(mReader); + mReader.close(); return result; } catch (XmlPullParserException e) { e.printStackTrace(); |