доделал отображение прогресса и актуализацию активных пакетов. пришлось заменить признак изменения с состояния на дату изменения.

This commit is contained in:
2023-12-15 14:55:16 +03:00
parent 54bab7f83d
commit bdf0f7f4eb
7 changed files with 49 additions and 43 deletions

View File

@@ -377,8 +377,7 @@ public class TestingServer extends RepositoryServer<TestsDatabase> {
break;
case GetFirstActiveDVMPackage:
Print("Получить первый активный пакет задач DVM");
response = new ServerExchangeUnit_2021(ServerCode.OK);
response.object = db.getFirstActiveDVMPackage();
GetFirstActiveDVMPackage();
break;
case DVMPackageNeedsKill:
Print("Проверить нуждает ли пакет DVM в убийстве");
@@ -724,17 +723,26 @@ public class TestingServer extends RepositoryServer<TestsDatabase> {
//--
}
//--
void GetFirstActiveDVMPackage() throws Exception {
response = new ServerExchangeUnit_2021(ServerCode.OK);
response.object = null;
DVMPackage dvmPackage = db.getFirstActiveDVMPackage();
if (dvmPackage != null) {
//нужно вернуть копию объекта с иным адресом!!
response.object = new DVMPackage(dvmPackage);
}
}
//---
void UpdateActiveDVMPackages() throws Exception {
response = new ServerExchangeUnit_2021(ServerCode.OK);
Vector<Pair<Integer, TasksPackageState>> keys_pairs = (Vector<Pair<Integer, TasksPackageState>>) request.object;
Vector<Pair<Integer, Long>> keys_pairs = (Vector<Pair<Integer, Long>>) request.object;
Vector<DVMPackage> res = new Vector<>();
//--
for (Pair<Integer, TasksPackageState> p : keys_pairs) {
for (Pair<Integer, Long> p : keys_pairs) {
if (db.dvmPackages.containsKey(p.getKey())) {
DVMPackage tasksPackage = db.dvmPackages.get(p.getKey());
if (!p.getValue().equals(tasksPackage.state))
res.add(tasksPackage);
DVMPackage actual = db.dvmPackages.get(p.getKey());
if (actual.ChangeDate != p.getValue())
res.add(new DVMPackage(actual));
}
}
response.object = res;