]> git.ktnx.net Git - mobile-ledger.git/blobdiff - app/src/main/java/net/ktnx/mobileledger/async/DbOpRunner.java
debug: print SQL params in DbOpRunner
[mobile-ledger.git] / app / src / main / java / net / ktnx / mobileledger / async / DbOpRunner.java
index 9404d7d04020072c321141265375096136702ed9..67d8a0b1b868b6b7b8e6c4963c010c55ff834f8f 100644 (file)
@@ -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
 package net.ktnx.mobileledger.async;
 
 import android.database.sqlite.SQLiteDatabase;
-import android.util.Log;
 
-import net.ktnx.mobileledger.utils.MLDB;
+import net.ktnx.mobileledger.App;
+import net.ktnx.mobileledger.BuildConfig;
 
 import java.util.concurrent.BlockingQueue;
 
+import static net.ktnx.mobileledger.utils.Logger.debug;
+
 class DbOpRunner extends Thread {
     private final BlockingQueue<DbOpItem> queue;
     public DbOpRunner(BlockingQueue<DbOpItem> queue) {
@@ -34,10 +36,30 @@ class DbOpRunner extends Thread {
         while (!interrupted()) {
             try {
                 DbOpItem item = queue.take();
-                Log.d("opQrunner", "Got "+item.sql);
-                SQLiteDatabase db = MLDB.getDatabase();
-                Log.d("opQrunner", "Executing "+item.sql);
-                db.execSQL(item.sql, item.params);
+                debug("opQrunner", "Got " + item.sql);
+                {
+                    SQLiteDatabase db = App.getDatabase();
+                    if (BuildConfig.DEBUG) {
+                        StringBuilder b = new StringBuilder("Executing ");
+                        b.append(item.sql);
+                        if (item.params.length > 0) {
+                            boolean first = true;
+                            b.append(" [");
+                            for (Object p : item.params) {
+                                if (first)
+                                    first = false;
+                                else
+                                    b.append(", ");
+                                b.append(p.toString());
+                            }
+                            b.append("]");
+                        }
+                        debug("opQrunner", b.toString());
+                    }
+                    db.execSQL(item.sql, item.params);
+                }
+                if (item.onReady != null)
+                    item.onReady.run();
             }
             catch (InterruptedException e) {
                 break;