X-Git-Url: https://git.ktnx.net/?p=mobile-ledger.git;a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2Fasync%2FRetrieveTransactionsTask.java;h=12e53cb6f180236059c7f1026e8eff4eeb258e1e;hp=ad0641216b68b28cbb98292d04b1a082df2cec7b;hb=e3872d583f324e225580a6fd05568d36e4ba0db0;hpb=ee7f9769f1f6a6e02fed8c4d7b68c8f4ac5c4ea2 diff --git a/app/src/main/java/net/ktnx/mobileledger/async/RetrieveTransactionsTask.java b/app/src/main/java/net/ktnx/mobileledger/async/RetrieveTransactionsTask.java index ad064121..12e53cb6 100644 --- a/app/src/main/java/net/ktnx/mobileledger/async/RetrieveTransactionsTask.java +++ b/app/src/main/java/net/ktnx/mobileledger/async/RetrieveTransactionsTask.java @@ -18,7 +18,6 @@ package net.ktnx.mobileledger.async; import android.annotation.SuppressLint; -import android.content.SharedPreferences; import android.database.sqlite.SQLiteDatabase; import android.os.AsyncTask; import android.os.OperationCanceledException; @@ -29,6 +28,7 @@ import net.ktnx.mobileledger.model.Data; import net.ktnx.mobileledger.model.LedgerAccount; import net.ktnx.mobileledger.model.LedgerTransaction; import net.ktnx.mobileledger.model.LedgerTransactionAccount; +import net.ktnx.mobileledger.model.MobileLedgerProfile; import net.ktnx.mobileledger.ui.activity.MainActivity; import net.ktnx.mobileledger.utils.MLDB; import net.ktnx.mobileledger.utils.NetworkUtil; @@ -48,11 +48,11 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; -public class RetrieveTransactionsTask extends - AsyncTask { +public class RetrieveTransactionsTask + extends AsyncTask { public static final int MATCHING_TRANSACTIONS_LIMIT = 50; private static final Pattern transactionStartPattern = Pattern.compile("([\\d.-]+)"); + "id=\"transaction-(\\d+)\">([\\d.-]+)"); private static final Pattern transactionDescriptionPattern = Pattern.compile(" contextRef; protected int error; - // %3A is '=' - private Pattern ledger_title_re = Pattern.compile("

([^<]+)

"); Pattern account_name_re = Pattern.compile("/register\\?q=inacct%3A([a-zA-Z0-9%]+)\""); Pattern account_value_re = Pattern.compile( "\\s*([-+]?[\\d.,]+)(?:\\s+(\\S+))?"); Pattern tr_end_re = Pattern.compile(""); Pattern descriptions_line_re = Pattern.compile("\\bdescriptionsSuggester\\s*=\\s*new\\b"); Pattern description_items_re = Pattern.compile("\"value\":\"([^\"]+)\""); + // %3A is '=' private boolean success; public RetrieveTransactionsTask(WeakReference contextRef) { this.contextRef = contextRef; @@ -105,7 +104,8 @@ public class RetrieveTransactionsTask extends } @SuppressLint("DefaultLocale") @Override - protected Void doInBackground(Params... params) { + protected Void doInBackground(Void... params) { + MobileLedgerProfile profile = Data.profile.get(); Progress progress = new Progress(); int maxTransactionId = Progress.INDETERMINATE; success = false; @@ -114,8 +114,7 @@ public class RetrieveTransactionsTask extends LedgerAccount lastAccount = null; Data.backgroundTaskCount.incrementAndGet(); try { - HttpURLConnection http = - NetworkUtil.prepare_connection(params[0].getBackendPref(), "journal"); + HttpURLConnection http = NetworkUtil.prepare_connection("journal"); http.setAllowUserInteraction(false); publishProgress(progress); MainActivity ctx = getContext(); @@ -168,13 +167,6 @@ public class RetrieveTransactionsTask extends state = ParserState.EXPECTING_ACCOUNT_AMOUNT; L("→ expecting account amount"); } - else if (ledgerTitle == null) { - m = ledger_title_re.matcher(line); - if (m.find()) { - ledgerTitle = m.group(1); - Data.ledgerTitle.set(ledgerTitle); - } - } break; case EXPECTING_ACCOUNT_AMOUNT: @@ -378,17 +370,6 @@ public class RetrieveTransactionsTask extends EXPECTING_TRANSACTION_DESCRIPTION, EXPECTING_TRANSACTION_DETAILS } - public static class Params { - private SharedPreferences backendPref; - - public Params(SharedPreferences backendPref) { - this.backendPref = backendPref; - } - SharedPreferences getBackendPref() { - return backendPref; - } - } - public class Progress { public static final int INDETERMINATE = -1; private int progress;