+ public static ObservableValue<Boolean> updating = new ObservableValue<>();
+ public static ObservableValue<String> updateError = new ObservableValue<>();
+
+ public static void scheduleTransactionListReload() {
+ if (Data.profile.get() == null) return;
+
+ String filter = Data.accountFilter.getValue();
+ AsyncTask<String, Void, String> task = new UTT();
+ task.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, filter);
+ }
+ public static TransactionListItem getTransactionListItem(int position) {
+ try(LockHolder lh = Data.transactions.lockForReading()) {
+ if (Data.transactions == null) return null;
+ if (position >= Data.transactions.size() + 1) return null;
+ if (position == Data.transactions.size()) return new TransactionListItem();
+ return Data.transactions.get(position);
+ }
+ }
+ private static class UTT extends UpdateTransactionsTask {
+ @Override
+ protected void onPostExecute(String error) {
+ super.onPostExecute(error);
+ if (error != null) updateError.set(error);
+ }
+ }