Insert receipts in a transaction.

master
Greyson Parrelli 2020-06-09 15:11:37 -04:00
parent 736a62b632
commit 98d9d81aff
1 changed files with 13 additions and 7 deletions

View File

@ -47,14 +47,20 @@ public class GroupReceiptDatabase extends Database {
public void insert(Collection<RecipientId> recipientIds, long mmsId, int status, long timestamp) {
SQLiteDatabase db = databaseHelper.getWritableDatabase();
for (RecipientId recipientId : recipientIds) {
ContentValues values = new ContentValues(4);
values.put(MMS_ID, mmsId);
values.put(RECIPIENT_ID, recipientId.serialize());
values.put(STATUS, status);
values.put(TIMESTAMP, timestamp);
db.beginTransaction();
try {
for (RecipientId recipientId : recipientIds) {
ContentValues values = new ContentValues(4);
values.put(MMS_ID, mmsId);
values.put(RECIPIENT_ID, recipientId.serialize());
values.put(STATUS, status);
values.put(TIMESTAMP, timestamp);
db.insert(TABLE_NAME, null, values);
db.insert(TABLE_NAME, null, values);
}
db.setTransactionSuccessful();
} finally {
db.endTransaction();
}
}