/*
- * 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) {
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;