]> git.ktnx.net Git - mobile-ledger.git/blobdiff - app/src/main/java/net/ktnx/mobileledger/async/TransactionAccumulator.java
speculatively update last update date before the transactions are stored
[mobile-ledger.git] / app / src / main / java / net / ktnx / mobileledger / async / TransactionAccumulator.java
index eb8376f0fc91a70176e5ec7e3f30fbc5fdcbfd4d..62b962748b9bab4e3a0deda55e1fe77f2cc34bc9 100644 (file)
 
 package net.ktnx.mobileledger.async;
 
+import net.ktnx.mobileledger.model.Data;
 import net.ktnx.mobileledger.model.LedgerTransaction;
 import net.ktnx.mobileledger.model.TransactionListItem;
 import net.ktnx.mobileledger.ui.MainModel;
 import net.ktnx.mobileledger.utils.SimpleDate;
 
 import java.util.ArrayList;
+import java.util.Date;
 
 public class TransactionAccumulator {
     private final ArrayList<TransactionListItem> list = new ArrayList<>();
     private final MainModel model;
+    private final String boldAccountName;
     private SimpleDate earliestDate, latestDate;
     private SimpleDate lastDate;
     private boolean done;
     public TransactionAccumulator(MainModel model) {
         this.model = model;
 
+        boldAccountName = model.getAccountFilter()
+                               .getValue();
+
         list.add(new TransactionListItem());    // head item
     }
     public void put(LedgerTransaction transaction) {
@@ -54,13 +60,14 @@ public class TransactionAccumulator {
             list.add(new TransactionListItem(date, showMonth));
         }
 
-        list.add(new TransactionListItem(transaction));
+        list.add(new TransactionListItem(transaction, boldAccountName));
 
         lastDate = date;
     }
     public void done() {
         done = true;
         model.setDisplayedTransactions(list);
+        Data.lastUpdateDate.postValue(new Date());
         model.setFirstTransactionDate(earliestDate);
         model.setLastTransactionDate(latestDate);
     }