Skip to content

Commit bdfa571

Browse files
committed
Restore finshed mission conditoina
1 parent 159e7bb commit bdfa571

1 file changed

Lines changed: 15 additions & 4 deletions

File tree

app/src/main/java/us/shandian/giga/get/sqlite/FinishedMissionStore.java

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -242,12 +242,23 @@ public void deleteMission(Mission mission) {
242242
}
243243

244244
public void updateMission(Mission mission) {
245-
String ts = String.valueOf(Objects.requireNonNull(mission).timestamp);
245+
ContentValues values = getValuesOfMission(Objects.requireNonNull(mission));
246246
SQLiteDatabase database = getWritableDatabase();
247+
String ts = String.valueOf(mission.timestamp);
248+
249+
int rowsAffected;
247250

248-
ContentValues values = getValuesOfMission(mission);
249-
int rowsAffected = database.update(FINISHED_TABLE_NAME, values,
250-
KEY_TIMESTAMP + " = ?", new String[]{ts});
251+
if (mission instanceof FinishedMission) {
252+
if (mission.storage.isInvalid()) {
253+
rowsAffected = database.update(FINISHED_TABLE_NAME, values, KEY_TIMESTAMP + " = ?",
254+
new String[]{ts});
255+
} else {
256+
rowsAffected = database.update(FINISHED_TABLE_NAME, values, KEY_PATH + " = ?",
257+
new String[]{mission.storage.getUri().toString()});
258+
}
259+
} else {
260+
throw new UnsupportedOperationException("DownloadMission");
261+
}
251262

252263
if (rowsAffected != 1) {
253264
Log.e("FinishedMissionStore", "Expected 1 row to be affected by update but got " + rowsAffected);

0 commit comments

Comments
 (0)