move notification of key changes into DAOs

This commit is contained in:
Vincent Breitmoser
2018-06-14 15:23:20 +02:00
parent 10d3ca814c
commit 8adf4a8a64
11 changed files with 146 additions and 129 deletions

View File

@@ -17,8 +17,13 @@
package org.sufficientlysecure.keychain.util;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.text.TextUtils;
import timber.log.Timber;
/**
* Shamelessly copied from android.database.DatabaseUtils
*/
@@ -50,4 +55,28 @@ public class DatabaseUtil {
System.arraycopy(newValues, 0, result, originalValues.length, newValues.length);
return result;
}
public static void explainQuery(SQLiteDatabase db, String sql) {
Cursor explainCursor = db.rawQuery("EXPLAIN QUERY PLAN " + sql, new String[0]);
// this is a debugging feature, we can be a little careless
explainCursor.moveToFirst();
StringBuilder line = new StringBuilder();
for (int i = 0; i < explainCursor.getColumnCount(); i++) {
line.append(explainCursor.getColumnName(i)).append(", ");
}
Timber.d(line.toString());
while (!explainCursor.isAfterLast()) {
line = new StringBuilder();
for (int i = 0; i < explainCursor.getColumnCount(); i++) {
line.append(explainCursor.getString(i)).append(", ");
}
Timber.d(line.toString());
explainCursor.moveToNext();
}
explainCursor.close();
}
}

View File

@@ -1,34 +0,0 @@
package org.sufficientlysecure.keychain.util;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import timber.log.Timber;
public class DatabaseUtils {
public static void explainQuery(SQLiteDatabase db, String sql) {
Cursor explainCursor = db.rawQuery("EXPLAIN QUERY PLAN " + sql, new String[0]);
// this is a debugging feature, we can be a little careless
explainCursor.moveToFirst();
StringBuilder line = new StringBuilder();
for (int i = 0; i < explainCursor.getColumnCount(); i++) {
line.append(explainCursor.getColumnName(i)).append(", ");
}
Timber.d(line.toString());
while (!explainCursor.isAfterLast()) {
line = new StringBuilder();
for (int i = 0; i < explainCursor.getColumnCount(); i++) {
line.append(explainCursor.getString(i)).append(", ");
}
Timber.d(line.toString());
explainCursor.moveToNext();
}
explainCursor.close();
}
}