X-Git-Url: https://git.ktnx.net/?p=mobile-ledger.git;a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2Fasync%2FDbOpQueue.java;h=081bbeee2ea640641929a0f857f0ca0809ab5112;hp=2bc541e388840f69871c943ebe370d1083faa65b;hb=a024759d8803c0c8a0a801b0733144a7943a98c5;hpb=accc48ea8a6f092716a99d2e21f3c6b95a7e9c37 diff --git a/app/src/main/java/net/ktnx/mobileledger/async/DbOpQueue.java b/app/src/main/java/net/ktnx/mobileledger/async/DbOpQueue.java index 2bc541e3..081bbeee 100644 --- a/app/src/main/java/net/ktnx/mobileledger/async/DbOpQueue.java +++ b/app/src/main/java/net/ktnx/mobileledger/async/DbOpQueue.java @@ -1,5 +1,5 @@ /* - * Copyright © 2019 Damyan Ivanov. + * Copyright © 2020 Damyan Ivanov. * This file is part of MoLe. * MoLe is free software: you can distribute it and/or modify it * under the term of the GNU General Public License as published by @@ -26,7 +26,8 @@ public class DbOpQueue { static private final BlockingQueue queue = new LinkedBlockingQueue<>(); static private DbOpRunner runner; synchronized static public void init() { - if (runner != null) return; + if (runner != null) + return; debug("opQueue", "Starting runner thread"); runner = new DbOpRunner(queue); runner.start(); @@ -34,10 +35,11 @@ public class DbOpQueue { static public void done() { runner.interrupt(); } - public static void add(String sql, Object[] params) { + public static void add(String sql, Object[] params) {add(sql, params, null);} + public static void add(String sql, Object[] params, Runnable onReady) { init(); debug("opQueue", "Adding " + sql); - queue.add(new DbOpItem(sql, params)); + queue.add(new DbOpItem(sql, params, onReady)); } static void add(String sql) { queue.add(new DbOpItem(sql));